logo
ProfessionalCommunity Edition

BApp Store qabul mezonlari

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

Kengaytmalaringizni BApp Store'ga yuborish orqali hamjamiyat bilan bo'lishishingiz mumkin. Biz yuborilgan barcha BApp'larni xavfsizlik va sifat jihatidan ko'rib chiqamiz va shundan keyin ularni BApp Store'ga kiritish yoki kiritmaslik haqida qaror qabul qilamiz.

Kengaytmangizni yuborishdan oldin u quyidagi qabul mezonlariga javob berishiga ishonch hosil qiling:

  1. U noyob funksiyani bajaradi. Kengaytmangiz BApp Store'dagi mavjud kengaytma funksiyasini takrorlamasligiga ishonch hosil qiling. Agar g'oyangiz butunlay yangi bo'lmasa, mavjud BApp'ni o'z maqsadlaringizga moslashtirganingiz ma'qulroq bo'lishi mumkin. BApp Store'dagi har bir kengaytmaning manba kodini GitHub repozitoriysimizda topishingiz mumkin.
  2. U aniq, tavsiflovchi nomga ega. Nom kengaytma nima qilishini aniq tasvirlab berishiga ishonch hosil qiling. Shuningdek, ro'yxatda ko'rinadigan bir qatorli qisqacha izoh (faqat veb'da) va batafsilroq tavsif berishingiz mumkin.
  3. U xavfsiz ishlaydi. Foydalanuvchilar ishonmaydigan saytlarni sinovdan o'tkazayotgan bo'lishi mumkin, shuning uchun kengaytmalar foydalanuvchilarni hujumga duchor qilmasligi muhim. HTTP xabarlari tarkibini ishonchsiz deb qarang. Kengaytmalar kutilgan foydalanishda xavfsiz ishlashi kerak. Foydalanuvchi GUI'ga kiritgan ma'lumotlarga odatda ishonish mumkin, lekin ishonchsiz manbalardan avtomatik to'ldirish mavjud bo'lsa, foydalanuvchi tarkibni tekshiradi deb hisoblamang.
  4. U barcha bog'liqliklarni o'z ichiga oladi. BApp Store'ning asosiy afzalligi - bir bosishda o'rnatish. Agar kengaytmangiz barcha bog'liqliklarni o'z ichiga olsa, foydalanuvchilar uchun ishni boshlash ancha oson bo'ladi. Bu shuningdek versiyalar mos kelmasligining oldini oladi, ya'ni asosiy vosita yangilanib, BApp yangilanmay qolgan holatlarni.
  5. U javob berish tezligini saqlab qolish uchun oqimlardan (thread) foydalanadi. Javob berish tezligini saqlash uchun sekin operatsiyalarni fon oqimida bajaring: E'tibor bering, Burp fon oqimlaridagi istisnolarni (exception) ushlamaydi va ular haqida xabar bermaydi. Fondagi istisnolar haqida xabar berish uchun oqimning to'liq operatsiyasini try/catch bloki bilan o'rab oling va barcha stack trace'larni kengaytma xatolar oqimiga yozing.
    • Sekin operatsiyalarni - masalan, HTTP so'rovlarini - Swing Event Dispatch Thread ichida bajarmang. Bu Burp javob bermayotgandek ko'rinishiga olib keladi, chunki butun GUI sekin operatsiya tugashini kutishi kerak bo'ladi.
    • ProxyHttpRequestHandler, ProxyHttpResponseHandler va HttpHandler dan foydalanganda sekin operatsiyalardan saqlaning.
    • Parallellik (concurrency) muammolaridan qochish uchun umumiy ma'lumot tuzilmalarini lock'lar bilan himoyalang va deadlock'lardan ehtiyot bo'ling.
  6. U toza yopiladi. Kengaytma yopilganda barcha resurslarni bo'shatishiga ishonch hosil qiling. Kengaytma Extension.registerUnloadingHandler() orqali yopilish ishlovchisini ro'yxatdan o'tkazishi kerak. Bo'shatilishi kerak bo'lgan resurslarning eng keng tarqalgan namunasi - fon oqimlari; fon oqimlari ExtensionUnloadingHandler.extensionUnloaded() da to'xtatilishi muhim.
  7. U Burp tarmoq imkoniyatlaridan foydalanadi. HTTP so'rov yuborishda - nishonga yoki boshqa joyga - java.net.URL kabi kutubxonalar o'rniga Burp'ning Http.issueHttpRequest() funksiyasidan foydalangan ma'qul. Bu so'rovni Burp yadrosi orqali yuboradi, shuning uchun yuqori oqim proksilari va sessiyani boshqarish qoidalari kabi sozlamalarga rioya qilinadi. Ko'plab foydalanuvchilar Internetga faqat proksi orqali kirishga ruxsat beruvchi korporativ tarmoqda ishlaydi. Bundan tashqari, ScanCheck.passiveAudit() ichidan nishon bilan har qanday aloqa qilishdan saqlaning.
  8. U oflayn ishlashni qo'llab-quvvatlaydi. Ba'zi Burp foydalanuvchilari Internetsiz yuqori xavfsizlik tarmoqlarida ishlashi kerak. Bunday foydalanuvchilarni qo'llab-quvvatlash uchun zaiflik ta'riflari yoki boshqa ma'lumotlarni olish uchun onlayn xizmatga murojaat qiladigan kengaytmalar so'nggi ta'riflarning nusxasini o'z ichiga olishi kerak.
  9. U yirik loyihalar bilan ishlay oladi. Ba'zi foydalanuvchilar juda yirik loyihalar bilan ishlaydi. Bunday foydalanuvchilarni qo'llab-quvvatlash uchun HttpHandler.handleHttpRequest() yoki ScanCheck.activeAudit() kabi funksiyalarga uzatilgan obyektlarga uzoq muddatli havolalarni saqlashdan saqlaning. Agar HTTP xabariga uzoq muddatli havola saqlash kerak bo'lsa, Persistence.temporaryFileContext() dan foydalaning. Shuningdek, SiteMap.requestResponses() va Proxy.history() bilan ehtiyot bo'ling, chunki ular juda katta natijalar qaytarishi mumkin.
  10. U GUI elementlari uchun ota-element beradi. Kengaytma yaratadigan har qanday GUI elementlari, masalan qalqib chiquvchi oynalar yoki xabarlar, Burp'ning asosiy Frame'ining farzandlari bo'lishiga ishonch hosil qiling. Bu, ayniqsa, foydalanuvchilarda bir nechta monitor bo'lganda muhim, shunda qalqib chiquvchi oynalar to'g'ri monitorda paydo bo'ladi. Burp Frame'ini olish uchun SwingUtils.suiteFrame() dan foydalaning.
  11. U Montoya API artefaktidan foydalanadi. montoya-api artefaktiga Gradle yoki Maven kabi build vositasi yordamida murojaat qilishingiz kerak. Agar yangi loyiha boshlayotgan bo'lsangiz, Gradle'dan foydalanishni tavsiya qilamiz. Qo'shimcha ma'lumot uchun Burp kengaytmalarini yaratish sahifasiga qarang.
  12. U sukut bo'yicha AI provayderi sifatida Burp AI'dan foydalanadi. AI funksionalligini o'z ichiga olgan kengaytmalar sukut bo'yicha provayder sifatida Burp AI'dan foydalanishi va AI kengaytmalarini yozish bo'yicha eng yaxshi amaliyotlarda bayon etilgan tavsiyalarga amal qilishi shart. Bu foydalanuvchilar uchun sozlashni osonlashtiradi, chunki ular uchinchi tomon API kalitlari yoki xizmatlarini sozlashlari shart bo'lmaydi. Shuningdek, bu xavfsizlikni oshiradi, chunki AI bilan bog'liq barcha trafik Burp Suite'ning maxsus AI platformasi orqali o'tkaziladi. Burp AI bilan bir qatorda uchinchi tomon provayderlaridan ham foydalanishingiz mumkin.

Ushbu maqola foydali bo'ldimi?