در این چالش شما با یک وباپلیکیشن تحت وب روبهرو هستید که با دامنهی محلی اجرا میشود و برای دسترسی صحیح به سرویس لازم است نام دامنه به IP ماشین هدف Resolve شود.
پس از راهاندازی دسترسی، باید صفحههای عمومی برنامه را بررسی کنید تا مسیرهای اصلی (مثل ثبتنام و ورود) و بخشهای مرتبط با تنظیمات حساب کاربری را شناسایی کنید. هدف این بخش، بهدست آوردن دید کلی از ساختار برنامه و نقاطی است که کاربر میتواند تنظیمات یا اطلاعات پروفایل خود را تغییر دهد.
در ادامه، لازم است با ایجاد حداقل دو حساب کاربری مجزا، رفتار برنامه را در سناریوی چندکاربره ارزیابی کنید.
در این مرحله روی نحوهی نمایش یا استفادهی برنامه از شناسههای کاربری (User Identifier) تمرکز کنید؛ بهخصوص اگر شناسهها در URL یا پارامترهای درخواست قابل مشاهده باشند.
وجود شناسههای عددی و قابل حدس بهتنهایی آسیبپذیری نیست، اما میتواند زمینهی مناسبی برای آزمون کنترل دسترسی شیءمحور ایجاد کند؛ یعنی بررسی اینکه آیا کاربر A قادر است عملیات مربوط به کاربر B را انجام دهد یا خیر.
گام اصلی چالش، تحلیل درخواستهای سمت کلاینت هنگام تغییر یک تنظیم غیرحساس (مانند زبان رابط کاربری) است. با استفاده از Burp Suite باید درخواستهای API مربوط به تغییر تنظیمات را مشاهده کنید:
مسیر endpoint، متد HTTP، و دادههای ارسالی در بدنه (خصوصاً فیلدهایی مانند userId).
سپس باید بررسی کنید که سرور هویت و مجوز انجام عملیات را چگونه اعتبارسنجی میکند:
آیا صرفاً به مقادیر ارسالی اعتماد میشود یا تطبیق لازم با کاربر لاگینشده (Session) انجام میگیرد.
در نهایت، با مقایسهی نتیجهی تغییرات در حسابهای مختلف، باید نشان دهید که کنترل دسترسی بهدرستی اعمال شده یا دچار ضعف است.
معیار ارزیابی، پذیرش یا رد شدن درخواست از سمت سرور و همچنین اثر واقعی آن در حساب هدف است (مثلاً تغییر در تنظیمات پس از ورود مجدد).
تمرکز این چالش بر تشخیص و اثبات یک مسئلهی Broken Access Control / IDOR در سطح API است؛ یعنی جایی که دسترسی به منابع کاربری باید صرفاً بر اساس هویت کاربر احرازشده و مجوزهای او محدود شود.
نکته: قبل از شروع، لازم است دامنه ideas.unite.local را به آدرس IP ماشین هدف در فایل etc/hosts/ سیستم خود نگاشت کنید تا دسترسی به سرویس ممکن شود.
لینک رایت آپی که این چالش بر اساس آن طراحی شده است:
https://www.pethuraj.com/blog/united-nations-bugbounty-writeup/
این چالش توسط PingQueen طراحی شده است.