Birinchi Burp Suite kengaytmangizni yozish
Bu qo'llanma Montoya API yordamida Java'da birinchi Burp Suite kengaytmangizni qanday yozishni ko'rsatadi. Siz quyidagilarni o'rganasiz:
- Kengaytmangizning nomini belgilash.
- Maxsus kontekst menyusi bandini ro'yxatdan o'tkazish.
- Xabarlarni Output yorlig'iga yozish.
- Maxsus Burp Suite yorlig'ini yaratish.
Aloqador sahifalar
- To'liq kod - Ushbu qo'llanma uchun to'liq namuna kod.
- Montoya API JavaDoc - mavjud barcha klass va metodlar bo'yicha ma'lumotnoma.
Boshlashdan oldin
Boshlashdan oldin sizda quyidagilar bo'lishi shart:
- Ishlayotgan kengaytma ishlab chiqish muhiti.
- Kengaytmangiz uchun Java klassi (agar starter loyihadan foydalanayotgan bo'lsangiz, bu siz uchun allaqachon bajarilgan).
Ko'rsatmalar uchun Kengaytma ishlab chiqish muhitini sozlash sahifasiga qarang.
1-qadam: Kengaytma interfeysini amalga oshirish
Agar siz kengaytma starter loyihasidan foydalanayotgan bo'lsangiz, 2-qadamga o'tishingiz mumkin. Bu qadam allaqachon bajarilgan.
Eslatma
Bu qo'llanmada biz Extension deb nomlangan klassdan foydalanamiz. Agar ishlab chiqish muhitingizni qo'lda sozlayotgan bo'lsangiz, bu klassni oldingi qo'llanmada allaqachon yaratgan bo'lishingiz kerak. Yo'riqnoma uchun Kengaytma klassingizni yaratish bo'limiga qarang.
Burp kengaytmangizni tanib olishi va ishga tushirishi uchun klassingizni quyidagicha yangilang:
BurpExtensioninterfeysini amalga oshiring.initialize()metodini qo'shing. U Burp kengaytmangizni yuklaganda chaqiriladi. Aynan shu yerda kengaytma imkoniyatlaringizni ro'yxatdan o'tkazasiz.- Parametr sifatida
montoyaApiobyektini qabul qiling. U Burp funksiyalariga kirish imkonini beradi. - Metod nomlari yoki argumentlaridagi xatolar kabi muammolarni kompilyatsiya vaqtida aniqlashga yordam berish uchun
@Overrideannotatsiyasidan foydalaning.
2-qadam: Kengaytma nomini belgilash

initialize() metodi ichida kengaytmangiz uchun nom belgilang. Kengaytmangiz Burp'da yuklanganda bu nom Extensions > Installed bo'limida ko'rinadi.
3-qadam: Kontekst menyusi bandini qo'shish

Burp'ning o'ng tugma kontekst menyusiga band qo'shish uchun ContextMenuItemsProvider ni ro'yxatdan o'tkazing va provideMenuItems() metodini amalga oshiring. Foydalanuvchi kontekst menyusini ochganda Burp bu metodni chaqiradi:
provideMenuItems() metodi ichida yangi JMenuItem yarating va o'ng tugma menyusida ko'rinadigan yorliq matnini belgilang.
Foydalanuvchi bandni bosganda nima sodir bo'lishini belgilash uchun addActionListener() dan foydalaning. Bu misolda amal tinglovchisi logToOutput() yordamida chiqish oqimiga xabar yozadi. Sukut bo'yicha bu xabar Extensions > Installed ostidagi Output yorlig'ida paydo bo'ladi.
Kontekst menyusi bandingizni ro'yxatga o'rang va uni qaytaring. Burp bu ro'yxatdan kontekst menyusini to'ldirish uchun foydalanadi:
4-qadam: Maxsus yorliq qo'shish

Burp'ga o'z yorlig'ingizni qo'shish uchun avval Java Swing JPanel yarating va yorlig'ingizda ko'rsatmoqchi bo'lgan komponentlarni qo'shing. Bu oddiy misol panelga yozuv qo'shadi:
Panel tayyor bo'lgach, uni yorliq sifatida ro'yxatdan o'tkazish uchun registerSuiteTab() dan foydalaning. Bu metod yorliq sarlavhasi va ko'rsatiladigan komponentni qabul qiladi.
To'liq kod
Mana ma'lumot uchun to'liq misol:
Keyingi qadamlar
Kengaytma funksiyasini sinash uchun uni JAR faylga yig'ing va kengaytmangizni Burp'da yuklang. Ko'rsatmalar uchun Kengaytmangizni Burp'da yuklash sahifasiga qarang.