logo
Professional

Maxsus skan tekshiruvlarini yozish qo'llanmasi

Oxirgi yangilanish: 23-iyul, 2026O'qish vaqti: 12 daqiqa

Burp Scanner imkoniyatlarini o'zingizning skan tekshiruvlaringizni yozish orqali kengaytirishingiz mumkin. Maxsus skan tekshiruvi Burp Scanner o'zi aniqlay olmaydigan zaifliklarni topishi mumkin.

Ushbu qo'llanma o'zingizning Java asosidagi maxsus skan tekshiruvlaringizni yozishga yordam berish uchun quyidagilarni o'z ichiga oladi:

  • Skan tekshiruvining to'g'ri turini qanday tanlash kerakligi.
  • Skan tekshiruvining asosiy tuzilishi.
  • Keng tarqalgan andozalar va kod parchalari.

Aloqador sahifalar

To'g'ri tekshiruv turini tanlash

Skan tekshiruvini yaratishdan oldin quyidagilarni hal qilishingiz kerak:

  • Turi - Active yoki Passive.
  • U qachon ishga tushishi - Per host, Per request yoki Per insertion point.
  • Collaborator ishlatishi yoki ishlatmasligi - Use Collaborator o'tkazgichi out-of-band muammolarni aniqlaydigan tekshiruvlar qurishingizga hamda Burp ularni qanday qayta ishlashi va xabar qilishini belgilashingizga imkon beradi.

Burp tanlovingizga muvofiq tekshiruvni avtomatik ravishda ro'yxatdan o'tkazadi.

Aktiv va passiv tekshiruvlar

Passiv tekshiruvlar hech qanday yangi so'rov yubormasdan mavjud trafikni tahlil qiladi. Ulardan javoblarda bevosita ko'rinadigan zaifliklarni aniqlash uchun foydalaning, masalan:

  • Yetishmayotgan xavfsizlik sarlavhalari.
  • Xato xabarlarida sizib chiqqan server ma'lumotlari.
  • Xavfsiz bo'lmagan cookie yoki forma konfiguratsiyalari.

Aktiv tekshiruvlar zaifliklarni sinash uchun qo'shimcha, o'zgartirilgan so'rovlar yuboradi. Ulardan faqat so'rovlar o'zgartirilganda namoyon bo'ladigan muammolarni aniqlash uchun foydalaning, masalan:

  • SQL injection.
  • Server tomonidagi shablon injeksiyasi (SSTI).
  • Buyruq injeksiyasi.

Skan davomida tekshiruvlar qachon ishga tushadi

Tekshiruvlar skan davomida turli qamrovlarda ishga tushishi mumkin. Bu sizga ham keng qamrovli konfiguratsiya muammolarini, ham kiritmani qayta ishlash bilan bog'liq nozik zaifliklarni aniqlash imkonini beradi.

Tekshiruv turiU qachon ishga tushadiUni qachon ishlatish kerakFoydalanish namunalari
Host tekshiruviHar bir noyob host uchun bir marta.Faqat host darajasidagi ma'lumot talab qiladigan tekshiruvlar uchun ishlating.Keng ma'lum fayllarni (masalan, robots.txt) yoki xavfsizlik headerlarini tekshirish.
So'rov tekshiruviHar bir so'rov uchun bir marta.To'liq so'rov yoki javoblarni tahlil qilish yoxud o'zgartirish uchun ishlating.Oshkor bo'lgan API kalitlarini yoki xavfsiz bo'lmagan redirectlarni aniqlash.
Insertion point tekshiruvi (faqat aktiv)Har bir insertion point uchun bir marta.So'rovning parametrlariga, headerlariga yoki boshqa o'zgartirilishi mumkin bo'lgan qismlariga payload kiritadigan aktiv tekshiruvlar uchun ishlating.SQL injection yoki XSS kabi kiritmani qayta ishlash bilan bog'liq zaifliklarni sinash.

Aloqador sahifalar

Insertion point (kiritish nuqtasi) nima ekanligi va Burp Scanner ularni qanday qayta ishlashi haqida ko'proq bilish uchun Auditing - Insertion points sahifasiga qarang.

Tekshiruvlarda Collaborator'dan foydalanish

Out-of-band o'zaro aloqani sinashni talab qiladigan zaifliklarni aniqlash uchun aktiv maxsus skan tekshiruvlarida Burp Collaborator'dan foydalanishingiz mumkin. Bu sizga out-of-band muammolarni aniqlaydigan tekshiruvlar qurish hamda Burp ularni qanday qayta ishlashi va xabar qilishini belgilash imkonini beradi.

Maxsus skan tekshiruvida Collaborator o'zaro aloqasini yoqish uchun:

  1. Use Collaborator o'tkazgichini yoqing. Collaborator tabi paydo bo'ladi.
  2. Collaborator tabida o'zaro aloqa ishlovchingizni (Collaborator o'zaro aloqalarini qayta ishlaydigan skriptni) qo'shing.

Tekshiruvni ishga tushirganingizda Burp avtomatik ravishda quyidagilarni bajaradi:

  • Fon rejimida Collaborator'ni so'rab turadi.
  • Collaborator o'zaro aloqalari sodir bo'lganda ularni qayta ishlaydi, ya'ni tahlil qilish va yuzaga kelgan muammolar haqida xabar berish uchun ishlovchingizga uzatadi.

Skan tekshiruvi o'chirilmagunicha aktiv bo'lib qoladi, shu sababli Burp skan tugagandan keyin ham kechikkan Collaborator o'zaro aloqalarini aniqlay oladi.

Ushbu tekshiruv namunasi uchun Skan tekshiruvlarida Collaborator'dan foydalanish bo'limiga qarang.

Eslatma

Maxsus skan tekshiruvlaridan Collaborator muammolari haqida xabar berilganda, Burp o'zgartirilgan variantni emas, balki bazaviy so'rovni ko'rsatadi. Buning sababi shundaki, Burp o'zgartirilgan so'rovni qayta tiklash uchun zarur bo'lgan to'liq kontekstni saqlab qolmaydi. Agar kerak bo'lsa, o'zgartirilgan variantni ishlovchingizda dastlabki skan tekshiruvi mantig'idan foydalanib qayta yaratishingiz mumkin.

Maxsus skan tekshiruvining tuzilishi

Har bir maxsus skan tekshiruvi bir xil umumiy andozaga amal qiladi:

  1. Javob mavjudligini tekshiring.
  2. Tekshiruvni bajaring.
  3. Muammolar haqida xabar bering.

Javob mavjudligini tekshirish

Keraksiz qayta ishlash yoki xatolarning oldini olish uchun javob ustida amal bajarishdan avval bo'sh kontentni tekshirishni qo'shing.

Eslatma

Ba'zi skan tekshiruvlariga faqat so'rovning o'zi kerak bo'ladi, masalan so'rov headerlari yoki parametrlarini tahlil qilish uchun. Bunday tekshiruvlar javobni tekshirishni talab qilmaydi.

Passiv tekshiruvlar

Passiv tekshiruvlar odatda bazaviy javobni tahlil qiladi. Burp Scanner odatda ham so'rovni, ham javobni taqdim etadi, biroq ba'zi hollarda javob mavjud bo'lmasligi mumkin, masalan Repeater'dan olingan elementlarni skanerlashda. Bunday vaziyatda tekshiruvingiz toza tarzda ishdan chiqishi kerak:

Aktiv tekshiruvlar

Aktiv tekshiruvlar qo'shimcha so'rovlarni yaratadi va yuboradi. Bunday hollarda yuborilgan so'rovga javob mavjudligini u bilan ishlashdan oldin tekshirishingiz kerak. Masalan:

Tekshiruvlarni bajarish

Tekshiruvni bajarish ikkita asosiy bosqichni o'z ichiga olishi mumkin:

  • So'rovni o'zgartiring - Faqat aktiv tekshiruvlar uchun: zaifliklarni sinash maqsadida bazaviy so'rovning o'zgartirilgan variantlarini quring va yuboring.
  • Trafikni tekshiring - Barcha tekshiruvlar uchun: xabarlarni tahlil qiling, ularni bir-biri bilan solishtiring yoki zaiflikdan darak beruvchi boshqa xatti-harakat farqlarini qidiring.

Ogohlantirish

Har bir tekshiruv ko'pi bilan ikki daqiqa davomida ishlaydi. Agar kodingiz bundan uzoqroq vaqt olsa, Burp tekshiruvni avtomatik ravishda to'xtatadi. Sekin yoki resurstalab kod umumiy unumdorlikka ta'sir qilishi va skanlar sekinroq bajarilishiga olib kelishi mumkin. Vaqt chegarasidan chiqmaslik va unumdorlikka ta'sirni kamaytirish uchun tekshiruvingizni puxta yozing.

So'rovlarni o'zgartirish (Aktiv tekshiruvlar)

Aktiv tekshiruvlarda siz zaifliklarni sinash uchun bazaviy so'rovning o'zgartirilgan variantlarini yuborasiz. Yondashuv siz so'rov / host darajasida ishlayotganingizga yoki insertion point darajasida ishlayotganingizga bog'liq.

So'rov yoki host tekshiruvlari

So'rovni o'zgartirish va yuborish uchun HttpRequestResponse'dan foydalaning:

Insertion point tekshiruvlari

Har bir insertion point uchun payloadlarni qurish va yuborishda AuditInsertionPoint'dan foydalaning.

Payloadlaringiz faqat qiymatdan iborat bo'lishi kerak, chunki Burp har bir insertion point joylashuvi uchun kontekstga mos kodlashni o'zi qo'llaydi. Har bir payload ByteArray ko'rinishida berilishi shart: Burp oddiy satrlarni emas, xom baytlarni kutadi.

Insertion point tekshiruvlari - bir nechta payload

Har bir insertion point'ga bittadan ortiq payload yuborish uchun ularni sikl orqali aylanib chiqing.

Trafikni tekshirish (Aktiv va passiv tekshiruvlar)

HttpRequestResponse obyektidan foydalanib, mos keluvchi HttpResponse'ga kirish uchun response() metodini chaqirishingiz mumkin. Bu sizga trafikni zaiflik alomatlari uchun tekshirish imkonini beradi.

Payload aks-sadolarini aniqlash

Javobda payload markerlarini qidiring. Bu potentsial aks-sado (reflection) yoki injeksiya nuqtalarini aniqlash uchun foydali.

Aloqador sahifalar

Ushbu usulni to'liq tekshiruv tarkibida ko'rish uchun Bambdas GitHub repozitoriysidagi Detect TRACE method skriptiga qarang.

Javobning muayyan elementlarini tekshirish

Javobning muayyan qismlarini muayyan elementlar bo'yicha tekshiring. Masalan, talab qilinadigan headerlar, cookie'lar yoki metama'lumot qiymatlari mavjudligini va to'g'ri sozlanganini tekshiring.

Aloqador sahifalar

Ushbu usulni to'liq tekshiruv tarkibida ko'rish uchun Bambdas GitHub repozitoriysidagi CORS misconfiguration skriptiga qarang. Bu skriptni Aktiv skan tekshiruvining ishlab chiqilgan namunasi sahifasida ham batafsil tahlil qilganmiz.

Javoblarni solishtirish

Ikkita so'rov yuboring va ularning javoblarini xatti-harakat farqlari bo'yicha solishtiring, masalan status kodlari, kontent yoki hajmlar bo'yicha:

Vaqt farqlarini aniqlash

responseTime() xususiyatidan foydalanib javoblarga ketgan vaqtni solishtiring:

Natijalar haqida xabar berish

Har bir maxsus skan tekshiruvi AuditResult qaytarishi shart, u Burp'ga tekshiruv biror muammo topgan yoki topmaganini bildiradi. Siz quyidagilarni qaytarishingiz kerak:

  • Zaiflik topilganda bir yoki bir nechta AuditIssue obyektini o'z ichiga olgan AuditResult.
  • Hech qanday muammo topilmaganda bo'sh natija.

Audit muammosini yaratish

Tekshiruvingiz zaiflikni aniqlaganda AuditIssue'ni o'rab olgan AuditResult qaytaring. Foydalanuvchilar yuzaga kelgan muammoni All issues panelida (quyi dokdan kirish mumkin) yoki Dashboard'dagi tegishli vazifaning Issues tabida ko'rishlari mumkin.

Maxsus skan tekshiruvi tomonidan yaratilgan audit muammosi

Har bir AuditIssue quyidagi tuzilishdan foydalanadi:

Eslatma

  • Barcha satrli maydonlar HTML'ni o'z ichiga olishi mumkin. Ishonchsiz qiymatlarni har doim avval kodlang.
  • Keraksiz maydonlar uchun satrlarda "", qolgan barcha qiymatlarda esa null uzating.
  • Har doim URL kiriting, chunki bu muammo qaysi so'rovga nisbatan xabar qilinishini belgilaydi. Agar u bo'lmasa, muammo natijalarda ko'rinmaydi.

Ushbu namuna yetishmayotgan Content-Security-Policy header haqida xabar beradi:

Audit muammosining tarkibiy qismlari

  • Title - Qisqa va aniq muammo nomi.
  • Detail - Zaiflikning batafsil tavsifi.
  • Remediation - Muammoni bartaraf etishning amaliy qadamlari.
  • URL - Muammo aniqlangan URL yoki endpoint. Batafsil ma'lumot uchun URL'ni belgilash bo'limiga qarang.
  • Severity - Aynan shu topilma uchun jiddiylik darajasi. INFORMATION, LOW, MEDIUM yoki HIGH orasidan tanlang.
  • Confidence - Tekshiruv muammo haqiqiy ekaniga qanchalik ishonchi komilligi. TENTATIVE, FIRM yoki CERTAIN orasidan tanlang.
  • Issue background - Ushbu turdagi muammo haqida qo'shimcha ma'lumot.
  • Remediation background - Bartaraf etish haqida qo'shimcha ma'lumot.
  • Overall severity - Ushbu muammo turi uchun odatiy jiddiylik darajasi. INFORMATION, LOW, MEDIUM yoki HIGH orasidan tanlang.
  • HTTP messages - Muammoni ko'rsatib beruvchi bir yoki bir nechta HttpRequestResponse obyekti. Burp ularni Issues ro'yxatidagi Request va Response tablarida ko'rsatadi.

URL'ni belgilash

Muammo qaysi manzilga nisbatan xabar qilinishini bildiruvchi URLni har doim kiritishingiz shart. Muammoni takrorlab ko'rayotgan tester uchun eng foydali URL'ni tanlang. Tekshiruv turingizga qarab quyidagi yondashuvlardan birini qo'llang:

Bazaviy so'rov URL'i

Quyidagi muammolar uchun bazaviy so'rov URL'iga ishora qiling:

  • Muammo o'zgartirilmagan javobda ko'rinadi.
  • Zaiflik endpointning umumiy xatti-harakatiga ta'sir qiladi.

Saytning ildizi

Host darajasidagi tekshiruvlar uchun sayt yoki xizmatning ildiziga ishora qiling. Bu tekshiruv ostki yo'lga nisbatan ishga tushganda ham xabar berishning izchilligini ta'minlaydi.

O'zgartirilgan so'rov URL'i

Agar o'zgartirilgan so'rov muammoni bevosita namoyish qilsa, topilmani uni keltirib chiqargan aniq payload bilan bog'lang.

Bir nechta muammo haqida xabar berish

Ba'zan bitta tekshiruv bittadan ortiq topilmani aniqlaydi. Bunday vaziyatda bir nechta AuditIssue obyektini qaytarishingiz mumkin. Burp har bir muammo haqida alohida xabar beradi:

Ushbu namuna yetishmayotgan ikkita xavfsizlik headeri haqida xabar beradi:

Bo'sh natija qaytarish

Tekshiruvingiz hech qanday muammo aniqlamasa, quyidagidan foydalanib bo'sh natija qaytaring:

Collaborator yoqilgan tekshiruvlar

Ba'zi zaifliklarni faqat out-of-band o'zaro aloqani sinash orqali tasdiqlash mumkin.

Ushbu namuna email-splitting muammosini aniqlash uchun aktiv maxsus skan tekshiruvida Burp Collaborator'dan qanday foydalanishni ko'rsatadi. Tekshiruv Collaborator payloadlarini generatsiya qiladi, ularni so'rovlarda yuboradi va Burp yuzaga keladigan o'zaro aloqalarni qanday qayta ishlashi kerakligini belgilaydi.

Eslatma

Skan tekshiruvi loyihangizda mavjud bo'lgunicha Burp Collaborator'ni so'rab turadi, shu sababli kechikkan o'zaro aloqalar skan tugagandan keyin ham aniqlanadi.

Code tabi

Collaborator tabi

Collaborator tabiga kirish uchun Use Collaborator o'tkazgichini yoqing.

Ushbu maqola foydali bo'ldimi?

Maxsus skan tekshiruvlarini yozish qo'llanmasi - Burp Suite hujjatlari - Next.js + NextUI