Pars-Secure logoPars-Secure
درخواست ارزیابی
← بازگشت به نمونه‌گزارش‌ها
Pars-Secure

شرکت پویا فناوران سدید ایرانیان | Pars-Secure

گزارش روایت حملهٔ Red Team — FinoPay

Red Team Operation — Attack-Chain Narrative

Red Team
⚠ نمونهنمونه — این گزارش روی سامانهٔ آزمایشی فین‌تک (FinoPay) تهیه شده است، نام کارفرما و تمام داده‌ها کاملاً فرضی‌اند و گام‌های کامل بهره‌برداری پوشانده شده‌اند.
کارفرماپلتفرم پرداخت دیجیتال نمونه (FinoPay)
کد پروژهPS-1405-038
نوع سرویسRed Team / Adversarial Simulation
نسخهٔ سند۱.۰
تاریخ تهیه۱۴۰۵/۰۴/۱۰
طبقه‌بندیTLP:AMBER (محرمانه)
استاندارد مرجعMITRE ATT&CK for Financial Services · PTES

خلاصهٔ مأموریت

هدف این عملیات، سنجش امکان‌پذیری یک سناریوی مشخص مالی: «آیا یک مهاجم با یک حساب کاربری عادی می‌تواند وجهی را از کیف پول یک کاربر دیگر به‌صورت غیرمجاز واریز کند؟» برخلاف ارزیابی پوشش‌محور که ۳۱ operation شناسایی‌شده را سیستماتیک بررسی می‌کند، این عملیات هدف‌محور است: هر ضعف فقط در صورتی بررسی شد که در مسیر رسیدن به هدف مالی قرار داشت.

روایت حمله — مراحل زنجیره

1

۱. شناسایی

Reconnaissance (TA0043)

نگاشت سطح حملهٔ عمومی: ۳۱ API operation در ۶ سرویس شناسایی شد. مستندات Swagger عمومی، الگوی نام‌گذاری /admin/* و ساختار شناسهٔ کیف پول را آشکار کرد. از این ۳۱ operation، ۸ operation در مسیر مستقیم هدف قرار گرفتند.

2

۲. دسترسی اولیه

Initial Access (TA0001)

ثبت حساب کاربری عادی از طریق API عمومی و دریافت توکن JWT. بررسی payload توکن: claim role برابر user — تأیید عدم دسترسی ویژه. کیف پول پیش‌فرض مهاجم با walletId شناخته‌شده ایجاد شد.

3

۳. کشف شناسهٔ منبع هدف

Discovery (TA0007)

بهره‌برداری از BOLA در GET /wallets/{walletId}/transactions: کاربر هدف پیش‌تر یک پرداخت به حساب مهاجم داشت. walletId هدف از میان سوابق تراکنش‌های کیف پول مهاجم کشف شد — بدون هیچ ابزار scanning.

4

۴. ارتقای دسترسی

Privilege Escalation (TA0004)

بهره‌برداری از BFLA در PUT /admin/limits/{userId}: محدودیت مبلغ روزانهٔ حساب مهاجم از ۵ میلیون به ۵۰۰ میلیون تومان با یک درخواست ساده افزایش یافت — بدون خطا یا هشدار.

5

۵. اثرگذاری

Impact (TA0040)

بهره‌برداری از BOLA در POST /transfers/internal: با تنظیم fromWalletId برابر walletId کاربر هدف، آغاز یک انتقال وجه از کیف پول هدف به حساب مهاجم امکان‌پذیر شد. در چارچوب Rules of Engagement، تراکنش واقعی اجرا نشد و اثبات با Proof of Concept در محیط آزمایشی مستند شد.

نگاشت MITRE ATT&CK

گامTacticTechniqueشواهد
۱ReconnaissanceT1590 — Gather Victim Network Informationنگاشت ۳۱ operation از Swagger عمومی
۲Initial AccessT1078 — Valid Accountsثبت حساب عادی و استخراج JWT
۳DiscoveryT1083 — Resource Enumeration (API variant)BOLA روی /wallets/{id}/transactions برای کشف walletId هدف
۴Privilege EscalationT1548 — Abuse Elevation Control MechanismBFLA روی /admin/limits برای حذف محدودیت مبلغ روزانه
۵ImpactT1657 — Financial TheftBOLA روی /transfers/internal برای آغاز تراکنش از کیف پول هدف

دستاوردهای کلیدی

تیم قرمز با زنجیر کردن سه ضعف مستقل — BOLA در خواندن تاریخچه، BFLA در مدیریت محدودیت، و BOLA در آغاز تراکنش — یک مسیر حملهٔ کامل مالی را با یک حساب کاربری عادی اثبات کرد. ضعف‌ها به‌صورت منفرد «متوسط» یا «بالا» ارزیابی می‌شوند، ولی در کنار هم یک سناریوی کلاهبرداری مالی واقعی ایجاد می‌کنند.

شکاف‌های دفاعی و تشخیص

  • هیچ هشداری برای ۵۰ درخواست متوالی به /wallets/*/transactions با walletId های مختلف ایجاد نشد.
  • دسترسی کاربر عادی به /admin/limits در لاگ‌ها ثبت شد ولی هیچ آلرت بلادرنگی تریگر نکرد.
  • آغاز تراکنش با fromWalletId متعلق به کاربر دیگر ثبت نشد — غیاب anomaly detection روی الگوی تراکنش غیرعادی.

توصیه‌های راهبردی دفاعی

  1. استقرار پایش رفتاری (behavioral monitoring) برای کشف الگوی enumeration روی شناسه‌های منابع مالی.
  2. راه‌اندازی هشدار بلادرنگ برای دسترسی کاربر عادی به مسیرهای /admin/*.
  3. اعمال کنترل مالکیت fromWalletId در POST /transfers/internal — تطبیق با userId احراز‌هویت‌شده.
  4. بازنگری کلی معماری authorization: یک لایهٔ مرکزی برای تمام عملیات مالی.

جمع‌بندی

اثر اصلی این عملیات، نمایش یک مسیر حملهٔ کامل از ثبت‌نام تا کلاهبرداری مالی بود. هر سه ضعف به‌صورت منفرد «متوسط» یا «بالا» ارزیابی می‌شوند، ولی در کنار هم یک ریسک وجودی برای پلتفرم ایجاد می‌کنند. علاوه بر اصلاح فنی، تقویت توانایی تشخیص (detection capability) برای کوتاه کردن زمان کشف مهاجم ضروری است.

می‌خواهید سازمان شما هم این‌طور ارزیابی شود؟

ارزیابی اولیه سطح حملهٔ رایگان و بدون تعهد انجام می‌شود.