Audit sozlamalari
Burp Scanner skanerlashning audit bosqichida qanday ishlashini boshqaradigan ko'plab sozlamalarni taklif etadi. Bu sozlamalarni Burp Suite Professional yoki Burp Suite DAST'da skanerlash konfiguratsiyalarini yaratayotganingizda yoki tahrirlayotganingizda tanlashingiz mumkin.
Aloqador sahifalar
Audit xatti-harakati
Burp audit jarayonini qanday boshqarishini va vaqt tugashi (timeout) holatlarini qanday hal qilishini sozlash uchun ushbu sozlamalardan foydalaning.
Audit strategiyasi
Bu sozlamalar auditning maqsadlari va nishon ilovaning tabiatiga mos ravishda Burp Scanner'ning audit qamrovi va tezligini moslashtirish imkonini beradi.
Audit tezligi
Bu sozlama Burp Scanner ayrim audit tekshiruvlarini qanchalik chuqur bajarishini belgilaydi:
- Fast kamroq so'rov yuboradi va ba'zi zaifliklarning kamroq turlarini tekshiradi.
- Thorough ancha ko'proq so'rov yuboradi va zaifliklarning ko'proq hosila turlarini tekshiradi.
- Normal ikkalasining o'rtasida turadi va ko'plab ilovalar uchun tezlik bilan chuqurlik o'rtasidagi mos murosani ifodalaydi.
Audit aniqligi
Bu parametr Scanner ayrim zaiflik turlarini xabar qilishidan oldin talab qiladigan dalillar miqdorini belgilaydi.
Ba'zi muammolarni faqat ko'r (blind) usullar bilan aniqlash mumkin — bunda Burp kuzatilgan xatti-harakat, masalan, vaqt kechikishi yoki javoblardagi farq asosida zaiflik mavjud bo'lishi ehtimolini xulosa qiladi. Bunday xatti-harakatlar tegishli zaiflik bo'lmaganda ham yuzaga kelishi mumkinligi sababli, ko'r usullar boshqa aniqlash usullariga qaraganda tabiatan ko'proq noto'g'ri ijobiy (false positive) natijalarga moyil.
Noto'g'ri ijobiy natijalarni kamaytirishga urinib, Burp potensial muammoni birinchi marta xulosa qilganida ayrim testlarni bir necha bor takrorlaydi. Burp bu testlarni necha marta qayta urinib ko'rishini belgilash uchun Audit accuracy sozlamasidan foydalaning:
- Minimize false negatives kamroq qayta urinish bajaradi, shu sababli noto'g'ri ijobiy natijalarni xabar qilish ehtimoli yuqoriroq, lekin haqiqiy muammolarni o'tkazib yuborish ehtimoli pastroq.
- Minimize false positives ancha ko'proq qayta urinish bajaradi, shu sababli noto'g'ri ijobiy natijalarni xabar qilish ehtimoli pastroq. Biroq, bu sozlama Burp Scanner ba'zi haqiqiy muammolarni o'tkazib yuborishiga olib kelishi mumkin, chunki qayta urinish so'rovlarining ba'zilari tekshirilayotgan natijani qaytarmasligi mumkin.
- Normal ikkalasining o'rtasida turadi va ko'plab ilovalar uchun noto'g'ri ijobiy va noto'g'ri salbiy muammolar o'rtasidagi mos murosani ifodalaydi.
Samarasiz bo'lishi ehtimoli yuqori tekshiruvlarni o'tkazib yuborish
Bu sozlama har bir kiritish nuqtasidagi parametrning bazaviy qiymatidan kelib chiqib ahamiyatsiz ko'ringan tekshiruvlarni chetlab o'tish orqali skanerlashni samaraliroq qiladi.
Masalan, agar parametr qiymati fayl nomlarida odatda uchramaydigan belgilarni o'z ichiga olsa, Burp bu parametr uchun fayl yo'li bo'ylab harakatlanish (file path traversal) tekshiruvlarini o'tkazib yuboradi. Skanerlashni tezlashtirish uchun bu parametrdan foydalaning — zaifliklarni o'tkazib yuborish xavfi nisbatan past.
Sessiyani avtomatik saqlab turish
Bu sozlama skanerlashning audit bosqichida Burp sessiyani avtomatik saqlab turish-turmasligini boshqaradi. Bu faqat crawl asosidagi auditlarga tegishli bo'lib, ularda crawl bosqichida aniqlangan navigatsiya yo'llari audit bosqichida sessiyani saqlab turish uchun ishlatilishi mumkin.
Zamonaviy ilovalarda yaxshi audit qamroviga erishish uchun sessiyani saqlab turish odatda zarur hisoblanadi. Biroq, sessiyani saqlab turish yuboriladigan so'rovlar soni jihatidan qo'shimcha yuk keltiradi. Agar bu zarur emasligini bilsangiz, bu parametrni o'chirib qo'yishingiz mumkin.
Aloqador sahifalar
Zarur bo'lganda qayta yo'naltirishlarga ergashish
Ba'zi zaifliklarni (masalan, faqat qayta yo'naltirishdan keyin qaytariladigan xato xabaridagi XSS) faqat qayta yo'naltirishlarga ergashish orqali aniqlash mumkin.
Burp barcha qayta yo'naltirishlarga sukut bo'yicha ergashmaydi, chunki ba'zi ilovalar siz yuborgan parametr qiymatlarini uchinchi tomon URL'lariga uzatuvchi qayta yo'naltirishlarni chiqaradi. Bu sizni uchinchi tomon ilovalariga beixtiyor hujum qilishdan himoya qiladi.
Agar skanerlanayotgan so'rov belgilangan nishon qamrovi (target scope) ichida bo'lsa, Burp faqat o'sha qamrov ichidagi qayta yo'naltirishlarga ergashadi. Agar skanerlanayotgan so'rov qamrovdan tashqarida bo'lsa, Burp faqat quyidagi qayta yo'naltirishlarga ergashadi:
- Skanerlanayotgan so'rov bilan bir xil host/port'ga yo'naltiruvchi.
- To'plam bo'ylab amal qiladigan qamrovdan chiqarish qoidasi bilan aniq qamrab olinmagan, masalan "logout.aspx".
Aloqador sahifalar
Crawl va audit bosqichlarini parallel ishlashiga ruxsat berish
Crawl hali davom etayotganda Burp audit qilishni boshlashi-boshlamasligini boshqarish uchun bu sozlamadan foydalaning. Yoqilganda, bu Burp'ga butun crawl tugashini kutish o'rniga birinchi muammo topilishi bilanoq audit qilishni boshlash imkonini berib, muammolarni aniqlashni samaraliroq qiladi.
Aloqador sahifalar
Umumiy skanerlash vaqti
Bu sozlama har bir skanerlash uchun maksimal umumiy ishlash vaqtini daqiqalarda belgilaydi. U faqat audit qiluvchi skanerlashlar yoki hozirda bajarilayotgan skanerlashlar uchun mavjud emas. Agar skanerlash vaqt chegarasiga yetsa, u pauza qiladi va hodisalar jurnaliga (event log) yozuv qo'shiladi.
Muammolar shovqinini kamaytirish
Burp tez-tez uchraydigan passiv muammolarni birlashtirishi-birlashtirmasligini boshqarish uchun bu sozlamadan foydalaning. Bu parametr bir xil muammo (masalan, Clickjacking) ko'plab joylarda yoki hatto butun ilova bo'ylab uchraganda shovqinni kamaytiradi.
Aloqador sahifalar
Audit tarmoq timeout'lari
Bu sozlamalar audit uchun timeout qiymatlarini belgilash imkonini beradi. Bu qiymatlar global sozlamalarda o'rnatgan qiymatlaringizni bekor qiladi.
Audit davomida takrorlanuvchi timeout'larni boshqarish
Bu sozlamalar skanerlashning audit bosqichida yuzaga keladigan takrorlanuvchi timeout'larga (ulanish xatoliklari va uzatish timeout'lariga) Burp Scanner qanday javob berishini boshqaradi.
Quyidagi parametrlarni sozlashingiz mumkin:
- Burp Scanner joriy kiritish nuqtasidagi qolgan tekshiruvlarni o'tkazib yuborishidan oldin yuz berishi mumkin bo'lgan ketma-ket muvaffaqiyatsiz audit tekshiruvlari soni.
- Burp Scanner qolgan kiritish nuqtalarini o'tkazib yuborib, audit elementini muvaffaqiyatsiz deb belgilashidan oldin yuz berishi mumkin bo'lgan ketma-ket muvaffaqiyatsiz kiritish nuqtalari soni.
- Burp Scanner vazifani pauza qilishidan oldin yuz berishi mumkin bo'lgan ketma-ket muvaffaqiyatsiz audit elementlari soni yoki muvaffaqiyatsiz audit elementlarining umumiy foizi.
- Timeout bo'lgan so'rovlarni qayta urinib ko'rish uchun Burp Scanner har bir audit bosqichi tugagach bajaradigan qo'shimcha o'tishlar soni.
Bu funksiyalardan birortasini o'chirish uchun tegishli sozlamani bo'sh qoldiring.
Aloqador sahifalar
Skanerlash tekshiruvlari
Bu sozlamalar Burp skanerlash davomida foydalanadigan tekshiruvlarni boshqaradi.
Burp Scanner bajaradigan har bir tekshiruv yuboriladigan so'rovlar sonini va umumiy audit vaqtini oshiradi. Ilova texnologiyalari haqidagi bilimingizga tayanib, ba'zi muammo turlarini skanerlashni o'chirib qo'yishni istashingiz mumkin.
Masalan, agar ilova LDAP'dan umuman foydalanmasligini bilsangiz, LDAP injection'ni o'chirib qo'yishingiz mumkin. Xuddi shunday, ilova qaysi backend ma'lumotlar bazasidan foydalanishini bilsangiz, boshqa ma'lumotlar bazasi turlariga xos SQL injection aniqlash usullarini o'chirib qo'yishingiz mumkin.
Skanerlash tekshiruvlarini ikki yo'l bilan tanlashingiz mumkin:
- Scan type - Tekshiruvlarni ularni aniqlash uchun bajariladigan audit faoliyatining tabiatiga qarab tanlang. Quyidagi variantlardan tanlashingiz mumkin:
- Passive.
- Light active.
- Medium active.
- Intrusive active.
- JavaScript analysis.
- Individual issues - Burp ishlatishini istagan skanerlash tekshiruvlarini tanlash uchun tekshiruvlar ro'yxati yonidagi katakchalardan foydalaning. Alohida skanerlash tekshiruvlarini topish uchun qidiruv panelidan foydalaning yoki muammolar ro'yxatini tartiblash uchun ustun sarlavhalarini bosing.
Eslatma
Faol muammo turlari uchun Burp Scanner ilovaga o'sha muammolarni aniqlashga mo'ljallangan so'rovlarni yuboradi. Tanlangan muammolarga qarab, bu so'rovlar zararli deb qaralishi yoki ilova va uning ma'lumotlariga zarar yetkazishi mumkin.
JavaScript tahlili
Bu sozlamalar Burp Scanner JavaScript'dagi DOM asosidagi zaifliklarni qanday aniqlashini boshqaradi. Quyidagi sozlamalar mavjud:
- Use static/dynamic analysis techniques - Burp Scanner JavaScript tahlili uchun statik yoki dinamik usullardan, yoki ikkalasidan foydalanishini boshqaradi. Alohida muammo turlari uchun statik yoki dinamik usullardan foydalanishni sozlash uchun DOM asosidagi muammolar bo'yicha yoqilgan aniqlash usullarini tahrirlang.
- Make requests for missing site resources - Burp Scanner yetishmayotgan bog'liqliklar, masalan, JavaScript fayllari uchun HTTP so'rovlar yuborishini boshqaradi.
- Fetch previously undiscovered resources and data from out-of-scope hosts - Sahifa murojaat qiladigan, lekin Burp Scanner crawl davomida topmagan resurslar va ma'lumotlar skanerlash qamrovidan tashqarida bo'lgan joylardan yuklanishini boshqaradi. Bu holatga faqat audit skanerlashini quyidagilar uchun ishga tushirganingizda duch kelishingiz mumkin: Agar bu variantni o'chirsangiz, skanerlash audit davomida bu resurslarni yuklamaydi va natijada zaifliklarni o'tkazib yuborishi mumkin. Masalan, sahifa ishga tushirilganda zaifliklar keltirib chiqaradigan tashqi JavaScript faylini yuklamaguncha xavfsiz bo'lishi mumkin.
- Saytni qo'lda o'rganish davomida siz topgan elementlar.
- Avvalgi skanerlash tomonidan sayt xaritasiga qo'shilgan, lekin o'shandan beri jonli veb-saytda o'zgargan elementlar.
- Maximum static/dynamic analysis time per item - Burp skanerlanadigan har bir element uchun statik yoki dinamik tahlilga sarflaydigan maksimal vaqtni boshqaradi. Bu sozlama Burp juda katta yoki murakkab skriptlarni o'z ichiga olgan elementlarga duch kelganda foydali, chunki bunday elementlar statik tahlil dvigatelining tizim resurslarini haddan tashqari ko'p iste'mol qilishiga olib kelishi mumkin. Agar Burp Scanner maksimal vaqtga yetgani uchun tahlilni to'xtatsa, u ta'sirlangan elementni ko'rsatuvchi ogohlantirish chiqaradi. Vaqt cheklovi yo'qligini bildirish uchun nol yoki bo'sh qiymat ko'rsatishingiz mumkin.
Eslatma
JavaScript tahlili katta hajmdagi tizim resurslarini iste'mol qilishi mumkin. Shu sababli, tahlilni asosiy nishonlar bilan cheklashni istashingiz mumkin. Shuningdek, JavaScript tahlilini bajarayotganda Burp'ni ko'proq xotira bilan ishga tushirish zarur bo'lishi mumkin. Buning uchun Burp'ni buyruq satridan ishga tushiring.
Aloqador sahifalar
Kiritish nuqtalari strategiyasi
Burp audit davomida kiritish nuqtalaridan qanday foydalanishini sozlang. Kiritish nuqtasi (insertion point) — bu xabardagi Burp zaifliklarni tekshirish uchun payload'larni joylashtiradigan joy.
Kiritish nuqtasi turlarini belgilash
Bu sozlamalar Burp Scanner audit davomida payload'lar joylashtira oladigan kiritish nuqtalari turlarini boshqaradi.
Burp Scanner quyidagi turdagi kiritish nuqtalarini qo'sha oladi:
- URL parameter values - URL so'rov satri (query string) ichidagi standart parametr qiymatlari.
- Body parameter values - Xabar tanasidagi parametr qiymatlari, shu jumladan:
- Formalar hosil qiladigan standart parametrlar.
- Multipart formatda kodlangan parametrlarning atributlari, masalan, yuklangan fayl nomlari.
- XML parametr qiymatlari va atributlari.
- JSON qiymatlari.
- Cookie values - HTTP cookie'larining qiymatlari.
- Parameter name - O'zboshimchalik bilan qo'shilgan parametrning nomi. Burp Scanner har doim URL parametrini qo'shadi. Shuningdek, u barcha POST so'rovlariga body parametrini qo'shadi. Qo'shilgan parametr nomini sinash ko'pincha faqat parametr qiymatlari sinalganda aniqlanmaydigan noodatiy xatolarni topish imkonini beradi.
- HTTP headers - HTTP sarlavha qiymatlari. Burp Scanner
ReferervaUser-Agentsarlavhalarini, shuningdekx-bilan boshlanadigan har qanday maxsus sarlavhani sinay oladi. Bu kiritish nuqtalarini sinash ko'pincha jurnalga yozish funksionalligidagi SQL injection yoki doimiy (persistent) XSS kabi muammolarni aniqlash imkonini beradi. - Entire body - So'rov tanasining butun o'zi. Bu so'rov tanasida XML yoki JSON kontenti bo'lgan so'rovlarga taalluqli.
- URL path filename - URL yo'lidagi fayl nomi qismining qiymati. Bu URL'ning oxirgi yo'l papkasidan keyingi va query satridan oldingi qismi.
- URL path folders - URL yo'lidagi, fayl nomidan oldin keladigan barcha papka tokenlarining qiymatlari.
Muayyan kiritish nuqtalarini e'tiborsiz qoldirish
Bu sozlamalar Burp Scanner audit tekshiruvlarini o'tkazib yuboradigan so'rov parametrlarini belgilash imkonini beradi. Siz server tomonidagi injection tekshiruvlarini (masalan, SQL injection) o'tkazib yuborishni yoki berilgan parametr uchun barcha tekshiruvlarni o'tkazib yuborishni tanlashingiz mumkin.
Barcha tekshiruvlarni o'tkazib yuborish parametr siz test qilishni istamaydigan ilova komponenti tomonidan qayta ishlanadigan bo'lsa yoki parametrni o'zgartirish ilova beqarorligiga sabab bo'lishi ma'lum bo'lsa foydali bo'lishi mumkin.
Server tomonidagi injection tekshiruvlari Burp serverdagi turli ko'r zaifliklarni sinash uchun bir nechta so'rov yuborishi kerakligini anglatadi. Agar so'rovlarda uchraydigan ayrim parametrlar zaif emas deb hisoblasangiz (masalan, faqat platforma yoki veb-server tomonidan ishlatiladigan o'rnatilgan parametrlar), Burp'ga ularni test qilmaslikni aytishingiz mumkin.
Parametrni e'tiborsiz qoldiriladigan kiritish nuqtalari ro'yxatiga qo'shish uchun:
- Parametrni qo'shmoqchi bo'lgan ro'yxatda (Skip server-side injection tests yoki Skip all tests) Add tugmasini bosing — dialog oynasi ochiladi.
- Match item ni tanlang. Bu siz o'tkazib yubormoqchi bo'lgan parametr turi.
- Parametrni Name yoki Value bo'yicha moslashtirishni tanlang.
- Match type ni tanlang. Bu literal satr yoki regex bo'lishi mumkin.
- Parametrni moslashtirmoqchi bo'lgan Match expression ni kiriting.
- Parametrni tanlangan ro'yxatga qo'shish uchun OK tugmasini bosing.
Eslatma
- Match item ochiluvchi ro'yxatidan
URL path folderni tanlang. - Name or value ochiluvchi ro'yxatidan
Nameni tanlang. - Match type ochiluvchi ro'yxatidan
isni tanlang. - Match expression ochiluvchi ro'yxatiga URL yo'lidagi test qilishdan chiqarmoqchi bo'lgan pozitsiyaning tartib raqamini (1 dan boshlab) kiriting.
Tez-tez uchraydigan kiritish nuqtalarini boshqarish
Bu sozlamalar Burp Scanner tez-tez uchraydigan kiritish nuqtalarida takrorlanishdan qochishini sozlash imkonini beradi. Bu optimallashtirishni quyidagi kiritish nuqtalariga qo'llashni tanlashingiz mumkin:
- URL parametr qiymatlari.
- Body parametr qiymatlari.
- Cookie parametr qiymatlari.
- Parametr nomi.
- HTTP sarlavhalari.
- Butun body.
- URL yo'lidagi fayl nomi.
- URL yo'lidagi papkalar.
Sozlanganda, Burp qiziqish uyg'otmagan (ya'ni tez-tez uchraydigan, lekin hech qanday muammo keltirib chiqarmagan) kiritish nuqtalarini aniqlaydi va ularni yengilroq tarzda audit qiladi.
Aloqador sahifalar
Ichma-ich joylashgan kiritish nuqtalari
Ba'zi ilovalar bir xil ma'lumotga bir necha qatlam kodlash qo'llaydi va shu tariqa bir formatni ikkinchisi ichiga joylashtiradi. Masalan, URL parametri Base64 bilan kodlangan ma'lumotni o'z ichiga olishi, dekodlangan qiymat esa o'z navbatida JSON yoki XML ma'lumotni saqlashi mumkin.
Agar siz Use nested insertion points ni tanlasangiz, Burp Scanner bu xatti-harakatni aniqlaydi va payload'larga xuddi shu kodlash qatlamlarini avtomatik qo'llaydi. Burp har bir joylashish darajasidagi har bir alohida kirish elementi uchun mos kiritish nuqtalarini yaratadi.
Faqat odatiy so'rov parametrlarini o'z ichiga olgan so'rovlarni skanerlaganda ichma-ich joylashgan kiritish nuqtalari hech qanday qo'shimcha yuk keltirmaydi. Shunga qaramay, ular ma'lumotlar turli formatlar ichiga joylashtirilgan murakkab ilovalarda Burp'ga hujum yuzasining ko'proq qismiga yetib borish imkonini beradi.
Kiritish nuqtalari chegaralari
Har bir bazaviy so'rov uchun yaratilishi mumkin bo'lgan kiritish nuqtalari soniga chegara qo'yishingiz mumkin. Bu juda ko'p parametrni o'z ichiga olgan so'rovlarga duch kelganda skanerlashlaringiz to'xtab qolishining oldini oladi.
Burp kiritish nuqtalari sonini qisqartirishi kerak bo'lganda, elementning auditdagi yozuvi o'tkazib yuborilgan kiritish nuqtalari sonini ko'rsatadi. Bu bazaviy so'rovni qo'lda ko'rib chiqish va uning barcha mumkin bo'lgan kiritish nuqtalarini to'liq skanerlashga arziydimi degan qarorni qabul qilish imkonini beradi.
Payload'ni ko'chirish qoidalari
Bu sozlamalar Scanner'ni bir turdagi kiritish nuqtasi uchun mo'ljallangan payload'larni so'rovdagi boshqa turdagi kiritish nuqtalariga joylashtiradigan qilib sozlash imkonini beradi. Bu kirishni turli joylarda sinash imkonini beradi. Masalan, har bir URL parametrini xabar tanasiga ko'chirib, uni o'sha yerda qayta sinashingiz mumkin.
Quyidagi variantlar mavjud:
- URL to body.
- URL to cookie.
- Body to URL.
- Body to cookie.
- Cookie to URL.
- Cookie to body.
Parametrlarni shu tarzda ko'chirish ko'pincha himoya filtrlarini chetlab o'tishi mumkin. Ko'plab ilovalar va firewall'lar kirishni har bir parametr bo'yicha alohida tekshiradi. Bunda har bir parametr so'rov ichidagi kutilgan joyda bo'lishi taxmin qilinadi. Agar parametrni boshqa joyga ko'chirsangiz, bu tekshiruvni chetlab o'tishingiz mumkin.
Ilova kodi keyinchalik asosiy mantiqini bajarish uchun parametrni olganda, u parametrning joylashuvini hisobga olmaydigan API'dan foydalanishi mumkin. Agar shunday bo'lsa, parametrni ko'chirish odatda qayta ishlanishidan oldin filtrlanadigan kirish yordamida zaif kod yo'llariga yetib borish imkonini berishi mumkin.
Parametr joylashuvlarini o'zgartirish ancha ko'proq skanerlash so'rovlariga olib keladi, chunki har bir so'rov parametri amalda bir necha marta skanerlanadi.