در این چالش، شما با یک سامانه وب روبهرو هستید که فرآیند checkout و تخصیص reward points را در قالب یک گردش کار چندمرحلهای مدیریت میکند.
برنامه بهصورت ظاهری مراحل مشخصی مانند انتخاب محصول، بازبینی سفارش، پرداخت و نهاییسازی را نمایش میدهد و انتظار میرود امتیازهای تشویقی تنها پس از تکمیل صحیح این چرخه به حساب کاربر اضافه شوند.
هدف اصلی این سناریو، بررسی این موضوع است که آیا این منطق فقط در سطح رابط کاربری نمایش داده میشود یا اینکه backend نیز همان ترتیب و محدودیتها را بهصورت مستقل و قابل اعتماد enforce میکند.
برای تحلیل این چالش، لازم است ابتدا ساختار کلی برنامه، وضعیت اولیه حساب کاربری، و نقش هر بخش از محیط آزمایش را شناسایی کنید.
بخشهایی مانند Workflow Notes، Catalog، Review و Reward Vault هرکدام سرنخهایی درباره قوانین تجاری سیستم، شرایط دریافت امتیاز و نحوه تغییر وضعیت سفارش در اختیار شما قرار میدهند.
درک درست از این اجزا به شما کمک میکند تا منطق واقعی برنامه را با آنچه در رابط کاربری نمایش داده میشود مقایسه کنید.
هسته اصلی این سناریو بر ارزیابی ضعفهای Business Logic در زمینه کنترل وضعیت سفارش و اعمال صحیح قوانین مرحلهای متمرکز است.
در این چالش باید بررسی شود که آیا عملیات حساس، مانند ثبت امتیاز یا تغییر وضعیت سفارش، تنها در زمان و مرحله مجاز قابل انجام هستند یا اینکه سرور بدون اعتبارسنجی مستقل، به ترتیب ظاهری مراحل و رفتار مورد انتظار کاربر اعتماد میکند.
به بیان دیگر، تمرکز اصلی بر تشخیص شکاف میان «گردش کار تعریفشده» و «کنترل واقعی سمت سرور» است.
این چالش توسط PingQueen طراحی شده است.
همچنین جهت دسترسی به صفحه مربوط به آزمایشگاه WSTG می توانید به لینک زیر مراجعه نمایید:
در مجموع، این چالش یک تمرین عملی در حوزه WSTG-BUSLOGIC برای تحلیل ضعفهای مربوط به workflow enforcement و state transition validation به شمار میرود.
موفقیت در این سناریو نیازمند دقت در بررسی ارتباط میان وضعیت سفارش، منطق تخصیص امتیاز، و نحوه اجرای کنترلها در backend است.
بنابراین رویکرد مناسب در این چالش، تحلیل وابستگی میان مراحل مختلف فرآیند و شناسایی نقاطی است که در آنها سرور باید منطق تجاری را بهصورت قطعی و مستقل اعمال کند.
درصد پیشرفت حل چالش
0%