GH GambleHub

امنیت API و درخواست فیلتر کردن

1) چرا شما به آن نیاز دارید

API - مرز پلت فرم خارجی و داخلی. هر گونه خطا در احراز هویت، مجوز، اعتبار سنجی یا عادی سازی درخواست ها به بهره برداری از آسیب پذیری ها تبدیل می شود (BOLA/IDOR، تزریق، SSRF، شمارش عظیم، خستگی منابع). هدف: ایجاد دفاع در عمق از محیط به قوانین کسب و کار، با SLO قابل اندازه گیری و کنترل ریسک.

2) API موجودی و طبقه بندی

دایرکتوری API: ثبت نام از تمام خدمات/نقاط پایانی, صاحبان, نسخه های, انواع مشتری (وب, سیار, همکاران), حالت (عمومی/شریک/داخلی), PII/داده های مالی.
انتقاد: بالا (معاملات مالی/مجوز)، متوسط (خواندن مشخصات)، پایین (دایرکتوری های عمومی).
سطح حمله: REST، GraphQL، gRPC، WebSocket، webhooks.
وضعیت: prod/staging/experimental, سیاست مستهلک, token/key lifetime.
سایه/رها API: تشخیص از طریق ورود سیاهههای مربوط، eBPF/مش سرویس تله متری، مقایسه با یک دایرکتوری.

3) مدل تهدید (کوتاه)

شناسایی: نشانه ربودن، جلسه مرتکب، MitM، پخش.
مجوز: BOLA/IDOR، افزایش افقی/عمودی.
ورودی: تزریق (SQL/NoSQL/LDAP)، قالب/سریال سازی، پیمایش مسیر، هدر ها.
ترافیک: سیل های DDoS/L7، درخواست های آهسته، بازخورد فانتوم.
یکپارچگی: وب سایت های ناامن، SSRF از طریق پارامترهای URL، بارگیری فایل/اسکن.
منطق: سوء استفاده از پاداش، مسابقه، ناسازگاری idempointence.

4) استاندارد ایمنی پایه (حداقل)

1. TLS 1. 2 + در همه جا HSTS ؛ رمزهای ضعیف غیرفعال میشوند.
2. احراز هویت: OAuth2/OIDC برای مشتریان، mTLS/یا HMAC - سرویس به سرویس.
3. مجوز: PDP متمرکز (RBAC/ABAC)، بازرسی سطح شیء (BOLA).
4. اعتبار سنجی: طرح سختگیرانه (OpenAPI/JSON Schema/Protobuf)، شکست با زمینه های اضافی.
5. محدودیت ها: نرخ/سهمیه + پشت سر هم، در هر مشتری/در هر IP/در هر رمز.
6. Idemotence در عملیات نوشتن، حفاظت در برابر تکرار/نژادها.
7. WAF/دروازه فیلتر: مسیر/نرمال هدر، لیست انکار، محموله ضد الگوهای بلوک.
8. اسرار: KMS/خرک، چرخش کلید/گواهی، کنترل نشت.
9. قابلیت مشاهده: ردیابی، گزارش های حسابرسی امنیتی (چه کسی/چه/چه زمانی/نتیجه)، هشدارها.
10. روش ها: حوادث playbook، موارد آزمون و pentests به طور منظم/DAST.

5) احراز هویت و مدیریت نشانه

OAuth2/OIDC: نشانه های دسترسی کوتاه مدت، تازه کردن به شدت با توجه به OIDC ؛ audience/issuer/exp در دروازه بررسی می شود.
JWT: RS256/ES256 ؛ حداقل مجموعه ای از صدف ؛ 'nbf/exp/aud' مورد نیاز است ؛ ممنوعیت ذخیره سازی PII. چرخش کلید از طریق JWKS.
DPoP/PoP: نشانه را به کلید مشتری متصل کنید تا خطر پخش/ربودن را کاهش دهد.
mTLS برای سیستم های داخلی و شرکای مورد اعتماد (صلاحیت CN/SAN، CRL/OCSP).
HMAC (امضا): کانونیکالیزاسیون قطعی (روش + مسیر + برچسب زمانی + nonce + بدن هش) ؛ پنجره زمان معتبر (± 30s).
جلسات مرورگر: SameSite = strict/lax، HttpOnly، Secure ؛ حفاظت CSRF (دو ارسال/نشانه دولت).
ذخیره سازی مشتری: در ذخیره سازی امن تلفن همراه (Keychain/Keystore)، حفاظت از اشکال زدایی، گواهینامه های پین کردن.

6) مجوز (BOLA اول)

Object-level: هر عملیات حق دسترسی به یک منبع خاص (مالک منبع/دامنه/ویژگی ها) را بررسی می کند.

RBAC/ABAC: نقش ها + ویژگی ها (کشور، بخش، محدودیت خطر، سطح KYC)

سیاست ها: انکار به طور پیش فرض ؛ صریح اجازه می دهد ؛ تست های نسخه بندی سیاست برای موارد منفی.
کش تصمیم گیری: سازگاری TTL + ناتوانی در تغییر نقش/بخش.

7) فیلتر کردن و عادی سازی درخواست ها (در دروازه/WAF)

عادی سازی: فشرده سازی برش های مکرر، ممنوعیت '../'، رمزگشایی یک بار، برش فضاهای/صفر بایت.
هدر: اجازه لیست («میزبان»، «محتوا نوع»، «پذیرش»، «مجوز»، «تاریخ»، «Idempotency-Key»، هدر ردیابی لازم).
روش ها: «GET/HEAD» بدون بدن ؛ 'POST/PUT/PATCH' - با نوع 'application/json' یا به شدت مجاز است.
ابعاد: حداکثر بدن، حداکثر هدر، حداکثر مسیر ؛ در اوایل رد 413/431.
فایل ها: اعتبار سنج MIME، آنتی ویروس/sandbox، ممنوعیت محتوای فعال، بازیافت تصویر/ضدعفونی کردن.
URL تغییر مسیر/fetchi: بلوک SSRF (انکار محدوده های خصوصی/ابرداده IP، طرح فقط https، اجازه لیست دامنه).
الگوهای SQL/NoSQL: امضاهای تزریق از طریق مجموعه قوانین WAF + پارامتری سرور پرس و جوها.

سیاست هدر مثال (قالب شبه)


deny_headers: ["X-Forwarded-Proto","X-Original-URL","Proxy-Connection","Destination"]
require_headers: ["Authorization" (для protected), "Content-Type" (для write)]
strip_duplicates: true max_header_count: 32 max_header_size: 16KB

8) محدودیت ها، سهمیه ها و حفاظت ضد ربات

محدود کردن نرخ: سطل نشانه/سطل نشتی ؛ سطوح - در هر IP، در هر کلید API، در هر کاربر، در هر سازمان.
سهمیه: روزانه/ماهانه، جداگانه برای نوشتن/روش های گسترده.
سازگاری: سفت شدن پویا تحت ناهنجاری ها (انفجار ناگهانی/چاشنی اعتبار).
Slow-loris/slow-POST: خواندن/زنده نگه داشتن زمان، محدودیت اتصال همزمان.
Antibot: اثر انگشت دستگاه، علائم رفتاری، اثبات کار/captcha برای افزایش خطر، لیست شبکه های torus/proxy.
کنترل IP: فیلترهای geo/ASN، لیست های زیر شبکه های «کثیف» را رد می کنند، لیست ها را برای پانل های شرکا/مدیریت اجازه می دهند.

9) اعتبار سنجی داده ها و مدارهای ورودی

Fail-closed: هر چیزی که این طرح را با شکست مواجه کند 400 است. زمینه های اضافی - رد.
انواع/محدوده: اعداد، تاریخ (UTC/ISO-8601)، مقادیر enum، طول خط، regexps.
JSON-quality: حداکثر لانه سازی، ممنوعیت آرایه های بزرگ/کلید، نظم کانونی (اختیاری).
اعتبار کسب و کار: idempotency با توجه به 'Idempotency-Key' ؛ قوانین ضد تقلب (محدودیت فرکانس عملیات، کلاه مقدار).
GraphQL: محدودیت عمق/پیچیدگی، نمایش داده شد اجازه ذکر شده، مجوز در هر زمینه.
gRPC: طرحهای Protobuf سختگیرانه، فیلدهای اجباری، محدودیت اندازه پیام.

10) وب سایت ها و تماس های خارجی

امضا: HMAC با برچسب زمان/nonce ؛ تأیید قبل از پردازش ؛ پنجره +/- 5 دقیقه.

تحویل: Retrai با مکث نمایشی و لرزش ؛ حداکثر تلاش ؛ شناسه رویداد

فروشنده IP اجازه می دهد لیست زیر دامنه جداگانه/مسیر ؛ حداقل پشته میزبانی.
پاسخ: 2xx تنها پس از ضبط داخلی موفق ؛ در غیر این صورت 4xx/5xx با کد روشن.
خروجی کنترل SSRF: هنگامی که URL پاسخ به تماس - اجازه لیست, انکار آدرس های خصوصی.

11) رمزگذاری و مدیریت مخفی

در کانال: TLS 1. 2+/1. 3، پینینگ، سیاست رمزنگاری دقیق.
تنها: رمزگذاری ذخیره سازی DB/object، کلیدهای جداگانه برای PII/داده های مالی.
KMS/Vault: ذخیره سازی متمرکز اسرار، TTL کوتاه، چرخش خودکار.
کلید ها و گواهینامه ها: جداگانه برای محیط ؛ بررسی مسائل ؛ ممنوعیت خروجی به سیاهههای مربوط.
Token-introspection: لیست های لغو آفلاین، کوتاه «exp».

12) مشاهده، حسابرسی و پاسخ

سیاهههای مربوط به امنیت: تلاش های احراز هویت/موفقیت، شکست مجوز، رویدادهای محدود کننده نرخ، تغییرات نقش/محدودیت.

ردیابی: همبستگی-شناسه پایان به پایان ؛ ردیابی تماس خارجی

معیارها: RPS، تأخیر P95/P99، نرخ خطا توسط کد، سهم 401/403/429، محدودیت نرخ ضربه، ناهنجاری ها.
هشدارها: خوشه های 401/403/429، رشد 5xx، درگیری های مکرر idempointency، انحرافات شدید نمودار پیچیدگی QL.
Playbooks: مسدود کردن کلید/نشانه، به سرعت نورد به عقب قوانین، گرم کردن لیست انکار، اطلاع صاحبان خدمات.
پزشکی قانونی: حفظ محموله بحث برانگیز (با ویرایش PII امن)، پخش در یک موضع جدا شده است.

13) خطاها و پاسخ به مشتری

فرمت خطای یکنواخت (کد، پیام، ردیابی شناسه، دسته).

بدون نشت: SQL، نام جدول، idies داخلی را فاش نکنید. 403 به جای «چرا که نه»

کدهای: 400 (اعتبار سنجی)، 401 (بدون احراز هویت)، 403 (بدون حقوق)، 404 (وجود ماسک)، 405/406، 413/429، 500/503.
نکات مجدد: для 429 - «Retry-After» ؛ برای idemotency - مشاوره در تکرار با همان کلید.

14) الگوهای معماری

Zero-Trust: mTLS، مجوز صریح بین تمام خدمات، حداقل امتیازات.
دروازه API + WAF + مش سرویس: جدایی از وظایف - محیط، سیاست های L7، احراز هویت داخلی.
Canary/Blue-Green: قوانین فیلتراسیون جدید را در مراحل با نظارت اجرا کنید.
Fail-closed: برای نوشتن بحرانی، بهتر است با خیال راحت از انجام عملیات نادرست خودداری کنید.
فشار پشتی: صف/بافر، قطع کننده مدار، زمان بندی/بودجه.

15) نمونه هایی از قوانین عملی (شبه پیکربندی)

15. 1 محدود کردن مسیرها و روش ها


/api/v1/payments:
allow_methods: [POST, GET]
auth: oauth2_required body:
content_type: application/json max_size: 256KB

15. 2 عدم توانایی


require_header: Idempotency-Key (UUIDv4)
store: redis:ttl=24h on_duplicate: return_previous_result

15. 3 امضای درخواست (HMAC)


signature:
scheme: "HMAC-SHA256"
required_headers: ["X-Signature","X-Timestamp","X-Nonce"]
allowed_drift: 300s string_to_sign: METHOD + "\n" + PATH + "\n" + SHA256(body) + "\n" + X-Timestamp + "\n" + X-Nonce

15. 4 حفاظت SSRF


outbound_http:
allowlist_domains: ["kyc. partner. com","psp. example. net"]
block_private_ip: true require_https: true

15. 5 حد GraphQL


graphql:
max_depth: 8 max_complexity: 500 allowlisted_operations_only: true

16) ویژگی های iGaming/امور مالی

محدودیت های بخش: بسته به مشخصات CCM/کشور/خطر.
پنجره زمان: قوانین فرکانس سپرده/برداشت، «خنک کردن» بین معاملات.
پاداش ضد سوء استفاده: قفل سازگار در حساب/دستگاه/IP/ابزار پرداخت.
حسابرسی از الزامات قانونی: ذخیره سازی سیاهههای مربوط از اقدامات و تصمیمات (KYC/AML)، دوره نگهداری، سیاهههای مربوط بدون تغییر.

17) تولید لیست آماده

  • دایرکتوری API کامل و داده ها نقشه جریان (PII/financials برچسب).
  • طرحوارههای OpenAPI/Protobuf، آزمونهای اعتبارسنجی و قراردادها در CI.
  • mTLS/HMAC/OAuth2 پیکربندی شده ؛ نشانه های TTL کوتاه ؛ چرخش کلید
  • آزمایش BOLA و موارد مجوز منفی ؛ PDP متمرکز شده است.
  • محدودیت/سهمیه/ضد ربات، حفاظت در برابر آهسته loris ؛ فیلترهای IP
  • قوانین عادی سازی WAF/دروازه، امضاهای ضد تزریق.
  • Idempotency عملیات نوشتن ؛ محافظت در برابر replay
  • امضای Webhook و اجازه لیست ؛ نقاط پایانی جدا شده
  • اسرار در KMS/طاق ؛ ذخیره سازی رمزگذاری شده ؛ هشدار به ناهنجاریها
  • داشبورد، هشدار، سیاهههای مربوط به ممیزی ؛ حوادث playbooks کار می کرد.
  • به طور منظم pentest/DAST/SAST، آهنگ آسیب پذیری و دانلود پچ.

18) ضد آفات (که امکان پذیر نیست)

اعتماد «X-Forwarded» بدون TLS سفت و سخت در محیط آن است.
طرح های JSON دلخواه «Content-Type» و «soft» را بپذیرید.
JWT های طولانی مدت بدون یادآوری/چرخش.
نقش ها و قوانین کسب و کار را در کد بدون سیاست های متمرکز ترکیب کنید.
سیاهههای مربوط با اسرار/PII ؛ جزئیات 500 پیام به بیرون.
«موقت» نقطه پایان باز بدون محدودیت و مجوز.

19) نسخه و deprekate

نسخه ها در مسیر/هدر ؛ سیاست پشتیبانی (به عنوان مثال،. N-2)

اطلاعیه ها: مهلت برای مستهلک, نظارت بر استفاده از نسخه های قدیمی, خاموش کردن کنترل.
سازگاری: قراردادهای مشتری/شریک و ماتریس تست.

20) تست ایمنی

تست قرارداد طرح/سیاست، fuzzing ورودی، auth منفی.
پروفایل های عملکرد با محدودیت/سهمیه، آزمون حفاظت (ترافیک هرج و مرج).
Red-team/bug-bounty: اسکریپت های BOLA، SSRF، امضا/تکرار، پیچیدگی GraphQL.

TL ؛ دکتر متخصص

1. دایرکتوری API + طرح های سخت.
2. OAuth2/OIDC برای مشتریان، mTLS/HMAC در داخل.
3. محیط BOLA در هر منبع (ABAC/RBAC).
4. فیلتر کردن: عادی سازی مسیرها/هدر ها، محدودیت ها، قوانین WAF.
5. Idempotence، امضا، پخش/حفاظت SSRF.
6. KMS/خرک و چرخش مخفی.
7. قابلیت مشاهده، هشدارها، کتابهای بازی.

Contact

با ما در تماس باشید

برای هرگونه سؤال یا نیاز به پشتیبانی با ما ارتباط بگیرید.ما همیشه آماده کمک هستیم!

Telegram
@Gamble_GC
شروع یکپارچه‌سازی

ایمیل — اجباری است. تلگرام یا واتساپ — اختیاری.

نام شما اختیاری
ایمیل اختیاری
موضوع اختیاری
پیام اختیاری
Telegram اختیاری
@
اگر تلگرام را وارد کنید — علاوه بر ایمیل، در تلگرام هم پاسخ می‌دهیم.
WhatsApp اختیاری
فرمت: کد کشور و شماره (برای مثال، +98XXXXXXXXXX).

با فشردن این دکمه، با پردازش داده‌های خود موافقت می‌کنید.