Kengaytma ishlab chiqish muhitini boshlang'ich loyiha yordamida sozlash
Boshlang'ich loyiha Montoya API yordamida kengaytma ishlab chiqishni soddalashtiradi. Ishlab chiqish muhitini qo'lda sozlash o'rniga foydalanishga tayyor shablonni yuklab olishingiz, uni IDE'da ochishingiz va darhol kod yozishni boshlashingiz mumkin.
Dastlabki talablar
Boshlashdan oldin:
- Java integratsiyalashgan ishlab chiqish muhitini (IDE) yuklab oling. IDE ishlab chiqishni soddalashtirishga yordam beruvchi avtomatik to'ldirish va sintaksisni yoritish kabi imkoniyatlarni taqdim etadi. Biz bepul Java IDE bo'lgan IntelliJ IDEA (Community Edition) dan foydalanishni tavsiya qilamiz.
- Kengaytmangizni yozishda LLM yordamidan foydalanish uchun o'zingiz afzal ko'rgan modelni o'rnating yoki unga kirish imkonini oling. Ushbu qo'llanmada Claude Code ishlatiladi, chunki boshlang'ich loyihada aynan shu model uchun mo'ljallangan
CLAUDE.mdfayli mavjud. Ko'rsatmalarni boshqa LLM'lar uchun osongina moslashtirishingiz mumkin. Claude Code haqida batafsil ma'lumot uchun Anthropic hujjatlariga qarang.
1-qadam: Shablonni yuklab oling
Boshlang'ich loyihani yuklab olish uchun:
- Burp'da Extensions > APIs bo'limiga o'ting.
- Download starter project tugmasini bosing.
- Joyni tanlang, so'ng Save tugmasini bosing.
Loyiha ExtensionTemplateProject nomli papkaga saqlanadi.
2-qadam: Loyihani oching
Loyihani ochish uchun:
- Endigina saqlagan
ExtensionTemplateProjectpapkasini IDE'ngizda oching yoki unga import qiling. - So'ralsa, sozlash bo'yicha ko'rsatmalarga amal qiling. Ko'pgina IDE'lar Gradle'ni avtomatik aniqlab, loyihani o'zi sozlagani uchun bu talab qilinmasligi mumkin.
- Loyiha uchun Java versiyasini 21 ga o'rnating. IDE'ngizga qarab bu sozlama JDK, SDK yoki JRE kabi nomlanishi mumkin. Burp faqat Java 21 yoki undan quyi versiyalarda yozilgan kengaytmalarni qo'llab-quvvatlaydi.
[Ixtiyoriy] 3-qadam: Loyiha nomini o'zgartiring
Loyiha nomini o'zgartirish uchun:
settings.gradle.ktsfaylini oching.rootProject.name = "extension-template-project"qatorini o'zingiz xohlagan nomga o'zgartiring.- Gradle o'zgarishlarini sinxronlashtiring.
[Ixtiyoriy] 4-qadam: To'g'ri sozlanganini tasdiqlang
Loyiha to'g'ri sozlanganini tekshirish uchun JAR fayl yig'ishga harakat qiling. Agar yig'ish muvaffaqiyatli bo'lsa, kod yozishni boshlashga tayyorsiz.
Ko'rsatmalar uchun JAR fayl qurish sahifasiga qarang.
[Ixtiyoriy] 5-qadam: LLM qo'llab-quvvatlashini yoqing
Kengaytmangizni yozishda LLM yordamidan foydalanishingiz mumkin. Buni qo'llab-quvvatlash maqsadida boshlang'ich loyihaga model uchun muhim kontekstni taqdim etuvchi CLAUDE.md fayli kiritilgan.
Ushbu fayldan Claude Code'dan boshqa LLM bilan foydalanish uchun LLM'ga faylni va docs papkasidagi yordamchi hujjatlarni o'qishni topshiring yoki ularning mazmunini kontekst oynangizning bir qismi sifatida taqdim eting.
CLAUDE.md faylidan Claude Code bilan foydalanish uchun:
- Terminalni oching va
ExtensionTemplateProjectpapkasiga o'ting. - Claude Code'ni quyidagi buyruq yordamida ishga tushiring:
claude - Claude'dan kengaytmangiz uchun biroz kod yaratishini so'rang.
Claude ExtensionTemplateProject papkasi tarkibini, jumladan CLAUDE.md faylini avtomatik o'qib chiqishi va siz ko'rib chiqishingiz uchun kod loyihasini yaratishi kerak. Agar u buni qilmasa, davom etishdan oldin unga faylni o'qishni bevosita topshiring.
Eslatma
LLM taklif qilgan har qanday kodni albatta ko'rib chiqing va sinab ko'ring, chunki u har doim ham to'g'ri yoki xavfsiz natija bermasligi mumkin.
Keyingi qadamlar
Siz kengaytmangizni yozishni boshlashga tayyorsiz. Qo'llanma uchun Birinchi kengaytmangizni yozish sahifasiga qarang.
Boshlang'ich loyihani tushunish
Loyiha kengaytma ishlab chiqishga yordam beradigan konfiguratsiya va manba fayllarini o'z ichiga oladi. Asosiy fayl — Extension.java, unda siz kengaytmangiz funksionalligini amalga oshirasiz. Ushbu bo'limda uning asosiy komponentlari tahlil qilinadi.
Fayl quyidagi muhim komponentlarni o'z ichiga oladi:
Importlar
Ushbu importlar Montoya API'dan ikkita klassni olib kiradi va kengaytmangizga Burp bilan aloqa qilish imkonini beradi:
BurpExtension- Burp'ga kengaytmangizni tanish imkonini beradi.MontoyaApi- Burp imkoniyatlariga kirish beradi.
Asosiy klass
Bu Extension klassini belgilaydi. U BurpExtension ni implementatsiya qiladi va bu Burp'ga ushbu fayl u yuklashi lozim bo'lgan kengaytmani o'z ichiga olishini bildiradi.
Initialize metodi
Bu metod Burp kengaytmangizni yuklaganda ishga tushadi. montoyaApi argumenti Burp funksionalligiga kirish imkonini beradi.
setName("My Extension") qatori kengaytmangizning Burp'dagi Extensions > Installed yorlig'ida ko'rinadigan nomini belgilaydi.
@Override annotatsiyasi initialize metodi BurpExtension interfeysini to'g'ri implementatsiya qilishini ta'minlaydi. Ya'ni, agar tasodifan noto'g'ri metod nomi yoki argumentdan foydalansangiz, Java jimgina xato qilish o'rniga xatolik chiqaradi.