رایتاپ Business Logic امتیاز
سلام.من بهروز منصوری هستم و قراره در رایتاپ Business Logic امتیاز، به شما نمایش بدم که چطور محدودیت ارسال امتیاز در سایت را دور زدم.
شرح آسیب پذیری:
من این آسیب پذیری را در یک برنامه خصوصی Bugcrowd پیدا کردم که در آن بخش نظر وجود داشت.
من متوجه شدم که هر زمانی که شخصی نظری می دهد، گزینه ای برای امتیاز دادن دارد اما فقط یک بار میتواند امتیاز دهد، منفی یا مثبت.
پس از بررسی درخواست با استفاده از burp، یک پارامتر امتیاز پیدا کردم که دارای مقدار امتیاز بود و همان مقدار در پاسخ منعکس شد.
مقدار پارامتر vote را از 1 به 1000 تغییر دادم و در پاسخ نیز تغییر کرد.
برای تأیید مضاعف، صفحه را دوباره بارگذاری کردم و مقدار آن هنوز 1000 بود.
من آسیب پذیری را گزارش کردم اما متأسفانه تکراری بود.
مراحل پیاده سازی آسیب پذیری:
من یک نظر معمولی دادم و متوجه شدم که گزینه امتیاز دارد.
امتیاز مثبت دادم و درخواست را با استفاده از burp بررسی کردم و مقدار پارامتر vote را از 1 به 1000 تغییر دادم و همچنین از گزینه Do intercept > Response to this request برای بررسی پاسخ سرور استفاده کردم.
بررسی اعتبارسنجی برای رایگیری فقط در سمت مشتری و نه در سمت سرور انجام شد، بنابراین به راحتی میتوان با ارسال 1000 امتیاز توسط یک کاربر به جای تنها 1 امتیاز، درخواست را دستکاری کرد.
impact:
همه کاربران می توانند چندین بار امتیاز دهندو روی نتایج تاثیر کثبت یا منفی ایجاد کنند.
رفع مشکل:
هر ورودی کاربر باید در سمت کاربر و همچنین سمت سرور اعتبارسنجی شود تا این نوع مشکلات را کاهش دهد.
رایتاپ رایتاپ Business Logic امتیاز نمونه ای از آسیب پذیری Business Logic بود و شما می توانید اینجا و اینجا موارد دیگری را مطالعه کنید.