امن افزار گستر آپادانا
269 subscribers
487 photos
40 videos
106 files
481 links
☑️ارائه خدمات برتر امنیت اطلاعات
☑️مدیریت امنیت اطلاعات (ISMS/ITIL)
☑️آزمون نفوذپذیری پیشرفته (شبکه/موبایل/وب/وب سرویس)
☑️طراحی امن زیرساخت شبکه






🕸amnafzar.net
035-38304270-1
021-91094270
info@amnafzar.net
Download Telegram
🚨 عدم محدودیت در درخواست‌های API؛ دروازه‌ای به حملات Brute Force

💡 کد آسیب‌پذیر:
یکی از رایج‌ترین مشکلات امنیتی در توسعه APIها، عدم اعمال محدودیت نرخ (Rate Limiting) است. به کد زیر دقت کنید:

python
Copy code
def login(username, password):
if username == "admin" and password == "password123":
return "Welcome, admin!"
return "Invalid credentials"
📌 مشکل:
این کد بدون هیچ‌گونه محدودیتی به مهاجم اجازه می‌دهد تعداد نامحدودی درخواست ارسال کرده و با استفاده از حملات Brute Force رمز عبور صحیح را حدس بزند.

🎯 چرا این مشکل امنیتی است؟

اجرای حملات Brute Force: مهاجم می‌تواند با ارسال تعداد زیادی درخواست، رمز عبور صحیح را پیدا کند.
افزایش مصرف منابع سرور: درخواست‌های زیاد ممکن است سرور را تحت فشار قرار دهد و باعث اختلال در سرویس شود.
کاهش امنیت کاربران: در صورت کشف رمز عبور، حساب‌های کاربری به‌راحتی در دسترس مهاجم قرار می‌گیرد.
راهکار پیشنهادی:
برای جلوگیری از چنین حملاتی، محدودیت نرخ را در APIها اعمال کنید. به مثال زیر توجه کنید:

کد اصلاح‌شده:
python
Copy code
from flask_limiter import Limiter
from flask import Flask, request

app = Flask(__name__)
limiter = Limiter(app, key_func=lambda: request.remote_addr)

@app.route('/login', methods=['POST'])
@limiter.limit("5 per minute") محدودیت ۵ درخواست در هر دقیقه
def login():
data = request.json
username = data.get('username')
password = data.get('password')

if username == "admin" and password == "password123":
return "Welcome, admin!"
return "Invalid credentials", 401
نکات کلیدی:

اعمال محدودیت نرخ (Rate Limiting): از ابزارهایی مانند Flask-Limiter یا قابلیت‌های مشابه در سایر فریم‌ورک‌ها استفاده کنید.
استفاده از کپچا (CAPTCHA): در صورت شناسایی فعالیت مشکوک، کپچا را به فرآیند اضافه کنید.
ثبت و تحلیل لاگ‌ها: فعالیت‌های غیرعادی مانند تعداد زیاد درخواست‌ها را مانیتور کنید.
مدیریت نشست‌ها (Session Management): محدودیت‌هایی بر اساس نشست کاربران اعمال کنید.

🌐 #امنیت_سایبری #برنامه‌نویسی_امن #Rate_Limiting
www.amnafzar.net
🆔@amnafzar
📧 Info@amnafzar.net
☎️021-9109427
👍2