کاربرد Burp Suite در تست نفوذ: اسکن فعال توسعهیافته
استفاده از Burp Suite بهعنوان یک اسکنر خودکار همواره یکی از موضوعات مورد بحث در میان Pentesterها بوده است. برخی از متخصصان امنیت معتقدند که اسکنر Burp در حالت پیشفرض ممکن است در شناسایی برخی آسیبپذیریها و موارد کمشیوعتر، پوشش محدودی داشته باشد. اما اگر همین اسکنر بتواند در کنار یافتههای اصلی، آسیبپذیریهای کمتر متداول را نیز شناسایی کند، آنگاه ارزش عملیاتی آن بهمراتب افزایش خواهد یافت.
در این مقاله، یکی از محبوبترین افزونههای Burp Suite با نام Active Scan++ را بررسی میکنیم؛ افزونهای که با موتور اسکن داخلی Burp یکپارچه میشود و با ارتقای قابلیتهای اسکن، امکان شناسایی مسائل و ضعفهای امنیتی بیشتری را در یک برنامه کاربردی فراهم میسازد.
فهرست مطالب
۱. بررسی و راهاندازی افزونه Active Scan++
۲. ارتقای قابلیتهای Audit
۳. Audit برنامه کاربردی
۴. Audit نقاط تزریق خاص
بررسی و راهاندازی افزونه Active Scan++
آسیبپذیریهای پیشرفته نیازمند تکنیکهای اسکن پیشرفته هستند.
به همین منظور، افزونه Active Scan++ که یکی از محبوبترین افزونههای Burp Suiteاست، توسط « James Kettle» برای کاربران نسخه حرفهای طراحی شده است تا قابلیتهای اسکن فعال و غیرفعال Burp را بهبود بخشد.
این افزونه بهگونهای با اسکنر Burp یکپارچه میشود که در فرآیند شناسایی مسائل برای موارد زیر کمک میکند:
- Host Header Attacks
- Password Reset Poisoning
- Cache Poisoning
- DNS Rebinding
- XML Injection
- Arbitrary Header Injection
- Template Injection
- Blind Code Injection
- …
علاوه بر این، این افزونه نقاط تزریق را برای احراز هویت پایه HTTP نیز شناسایی میکند.
نصب Active Scan++ از طریق فروشگاه افزونهها (BApp Store)
با توجه به کارایی بالای این ابزار، بیایید ابتدا آن را در فروشگاه افزونههای Burp یا همان BApp Store پیدا کنیم. همه ما میدانیم که برای این کار باید به کجا برویم؛ در بخش Extender، به تب BApp Store بروید؛ در آنجا خواهید دید که این ابزار با بالاترین امتیاز در صدر لیست قرار دارد.
حال به پنل سمت چپ بروید تا دکمه نصب را پیدا کنید. اما لحظهای درنگ کنید!! این افزونه به محیط Jython نیاز دارد؛ بنابراین باید ابتدا آن را نصب و پیکربندی کنیم.
به وبسایت رسمی Jython مراجعه کرده و فایل نسخه مستقل Jython را دانلود کنید.
به محض اینکه فایل روی رایانه شخصی ذخیره شد، باید آن را به برنامه Burp Suite متصل کنیم. به تب Extender بازگردید، به بخش Options بروید و صفحه را به پایین اسکرول کنید تا گزینه “Python Environment”را بیابید. حالا روی دکمه Select File کلیک کرده و فایلی را که دانلود کردهاید، انتخاب نمایید.
پس از اتمام این مراحل، محیط نرمافزار شما باید تا حد زیادی شبیه به تصویر زیر باشد. اما پیکربندی Jython هنوز به پایان نرسیده است؛ برای اعمال تغییرات، Burp Suite خود را یک بار راهاندازی مجدد کنید.
حالا مجدداً به فروشگاه افزونهها (bApp Store) بازگردید و پنل سمت راست مربوط به افزونه Active Scan++ را باز کنید. همانطور که در تصویر زیر مشاهده میکنید، دکمه Install اکنون فعال شده است؛ برای آغاز فرآیند نصب، روی آن کلیک کنید.
عالی! مشاهده دکمه Reinstall نشاندهنده آن است که افزونه با موفقیت نصب شده است.
ارتقای قابلیتهای بازرسی
شاید این سؤال برایتان پیش آمده باشد که با توجه به محبوبیت بالای Active Scan++، چرا این افزونه در تبهای بالای نرمافزار جایگاه اختصاصی ندارد و دقیقاً کجا میتوان آن را پیدا کرد؟
همانطور که پیشتر بحث شد، Active Scan++ به گونهای با اسکنرِ Burp یکپارچه میشود که به آن در شناسایی آسیبپذیریهای بیشتر کمک کند. بنابراین، مکان خاصی (منوی مجزایی) برای دسترسی به آن وجود ندارد. با این حال، ما میتوانیم در حین انجام اسکن فعال یا اسکن غیرفعال، عملکرد و خروجیهای آن را تحلیل کنیم.
در ادامه، بررسی میکنیم که وقتی اسکنِ کل یک برنامه کاربردی را آغاز میکنیم، این افزونه چه دادههای تکمیلی را به ما ارائه میدهد.
بازرسی برنامه کاربردی
سرویس پروکسی مرورگر خود را روشن کنید و سپس در برنامه کاربردی آسیبپذیر Mutillidae (که پروژهای از OWASP است) به گشتوگذار بپردازید.
اکنون به تب Target در محیط نرمافزار Burp Suite بروید و سپس وارد بخش Site map شوید.
در پنل سمت چپ، ساختار سلسلهمراتبی برنامه وب نمایش داده میشود. شاخه اصلی یا ریشه را انتخاب کنید و سپس با کلیک راست بر روی آن، گزینه “Actively scan this branch” را انتخاب نمایید تا فرایند اسکن برنامه آغاز گردد.
به محض انجام این عملیات، وظیفه بازرسی (Auditing Task) ما در بخش «Dashboard» قرار میگیرد.
پس از گذشت چند دقیقه، مشاهده خواهید کرد که تعدادی از مسائل امنیتی در پنل سمت راست دستهبندی شدهاند؛ بیایید نگاهی دقیقتر به آنها بیندازیم.
شاید در ابتدا به نظر برسد که اکثر آسیبپذیریهای شناساییشده توسط اسکنرِ خودِ Burp پیدا شدهاند، اما موارد خاصی مانند Cache Poisoning، DNS Rebinding و Host Header Injectionنیز وجود دارند که همگی این موارد تکمیلی، توسط افزونه Active Scan++ شناسایی شدهاند.
بازرسی نقاط تزریق خاص
اگر نخواهید کل شاخه برنامه کاربردی یا حتی یک صفحه وب خاص را تست کنید، و در عوض بخواهید صرفاً یک «نقطه تزریق» (Injection Point) را بازرسی کنید، آیا در این صورت هم Active Scan++ با اسکنرِ Burp همکاری میکند؟
پاسخ مثبت است؛ به محض اینکه دکمه نصب را در BApp Store فشردیم، افزونه Active Scan++ خود را با اسکنر Burp یکپارچه کرد. بنابراین، چه در حال بازرسی کل یک برنامه کاربردی باشید و چه در حال بررسی یک نقطه تزریق خاص، Active Scan++ همیشه در این فرآیند مشارکت خواهد داشت.
و اما درباره بازرسیِ «نقطه تزریق»، بیایید آن را بهصورت عملی انجام دهیم:
برنامه کاربردی bWAPP را با نام کاربری و رمز عبور bee: bug راهاندازی کنید و سپس به صفحه HTML Injection (Reflected) بروید. در ادامه، مقداری داده تست وارد کرده و در حالی که سرویس پروکسی شما روی حالت “ON” قرار دارد، دکمه Go را بزنید.
تعریف نقاط درج در Burp Intruder
در محیط نرمافزار Burp Suite، درخواست HTTP جاری را کپچر کردهایم؛ حال بیایید آن را به ابزار Intruder ارسال کنیم.
پس از اتمام این مرحله، به تب Intruder رفته و وارد بخش Positions شوید تا نقطه تزریق را تعیین کنید. بهسادگی انتخابهای پیشفرض را پاک کرده و موردی را که میخواهید اسکنر بازرسی کند، به لیست اضافه نمایید.
گام بعدی چیست؟ یک کلیک راست ساده، همیشه کارگشای ماست. بنابراین، روی دکمه راست ماوس کلیک کرده و گزینه“Scan defined insertion points” را انتخاب نمایید.
از آنجایی که وظیفه قبلی را حذف نکردهایم، Burp دو گزینه پیش روی ما میگذارد: یا این درخواست را به بازرسیِ در حال اجرا ارسال کنیم، و یا یک بازرسی جدید برای آن آغاز نماییم.
برای شروع و شخصیسازی این اسکن جدید، گزینه “Open Scan launcher” را انتخاب کنید.
به محض انجام این عملیات، پنجرهای با عنوان “New Scan” ظاهر میشود. بیایید با کلیک بر روی دکمه OK، تنظیمات را بر روی حالت پیشفرض قرار داده و ادامه دهیم. اگر قصد دارید اسکنر خود را شخصیسازی کنید، پیشنهاد میکنیم مقاله قبلی ما را مطالعه نمایید.
نتایج اسکن و تحلیل آسیبپذیریها
همانطور که در تصویر زیر مشاهده میشود، اسکنر با ارسال بیش از ۲۵۰ درخواست به نقطه تزریق برنامه کاربردی، موفق به شناسایی حدود ۳ مورد با سطح Basic و ۱ مورد با سطح Critical شده است.
وقت تحلیل فرا رسیده است. همانطور که در تصویر زیر مشاهده میکنید، اسکنر Burp، آسیبپذیری Cross-Site Scripting را در نقطه تزریق ما بررسی کرده و جزئیات آن را به همراه Payload بهرهبرداری و راهکارهای مقابله ارائه داده است.





















