
إضافة HopLa لملحق Burp Suite - تجلب قدرات الذكاء الاصطناعي، ودعم الإكمال التلقائي، ومجموعة من الحمولات المفيدة إلى Burp Suite.
💥 كل قوة PayloadsAllTheThings، دون أي عناء.
تعمل هذه الإضافة على تعزيز Burp Suite بالإكمال التلقائي الذكي والحمولات المدمجة لتبسيط اختبار الاختراق. وهي تدعم التكامل مع مزودي الذكاء الاصطناعي مثل Ollama وOpenAI وGemini لتقديم ميزات متقدمة مثل الدردشة وتوليد/تحويل المحتوى. يمكنك أيضًا إضافة حمولاتك الخاصة لتخصيصها حسب احتياجاتك!
طُوّرت بواسطة Alexis Danizan
صدرت كمصدر مفتوح بواسطة Synacktiv 🥷
الميزات:

افتراضيًا، يأتي HopLa مع مجموعة مدمجة من الحمولات. يمكنك توسيعها عن طريق تحميل ملف YAML المخصص عبر القائمة العلوية. (راجع ملف الحمولات الافتراضي كمرجع.)
يمكن تكوين مزودي الذكاء الاصطناعي عبر استيراد ملف إعدادات YAML الخاص بك (انظر تكوين مزودي الذكاء الاصطناعي)
هناك عدة اختصارات لوحة مفاتيح معرّفة مسبقًا ويمكن تخصيصها من خلال ملفات الإعدادات.
Ctrl+Q - فتح قائمة مكتبة الحمولاتCtrl+J - تشغيل دردشة الذكاء الاصطناعيCtrl+Alt+O - فتح قائمة الإجراءات السريعةCtrl+L - فتح قائمة البحث والاستبدالCtrl+M - إدراج حمولة Burp CollaboratorCtrl+Alt+J - فتح مدير الكلمات المفتاحية المخصصةإذا كنت تستخدم i3، أضف السطر التالي إلى $HOME/.config/i3/config لتفعيل الوضع العائم للإطار:
for_window [class=".*burp-StartBurp.*" title="^ $"] floating enable
يدعم HopLa عدة مزودي ذكاء اصطناعي (OpenAI وGemini وOllama)، لكن الإكمال التلقائي المدعوم بالذكاء الاصطناعي متاح فقط مع Ollama.
يتم تنظيم ملف إعدادات YAML للذكاء الاصطناعي على النحو التالي (يمكن تصدير ملف نموذجي من قائمة HopLa):
shortcut_ai_chat: Ctrl+J
shortcut_quick_action: Ctrl+Alt+O
#autocompletion_min_chars: 1 # Minimum input length for AI-powered autocompletion (default: 1)
providers:
OPENAI:
enabled: true
chat_model: gpt-4.1
chat_endpoint: https://api.openai.com/v1/chat/completions
#chat_model_system_prompt: REPLACE_ME
quick_action_model: gpt-4.1
#quick_action_system_prompt: REPLACE_ME
quick_action_endpoint: https://api.openai.com/v1/chat/completions
headers:
Authorization: "Bearer REPLACE_ME"
proxy:
enabled: true
host: 127.0.0.1
port: 5555
username: user123
password: pass123
type: SOCKS # SOCKS or HTTP
GEMINI:
enabled: true
chat_model: gemini-2.0-flash
chat_endpoint: https://generativelanguage.googleapis.com/v1beta/models/@model:streamGenerateContent?alt=sse&key=@key #HopLa replace @key with api_key value
#chat_model_system_prompt: REPLACE_ME
quick_action_endpoint: https://generativelanguage.googleapis.com/v1beta/models/@model:streamGenerateContent?alt=sse&key=@key #HopLa replace @key with api_key value
#quick_action_system_prompt: REPLACE_ME
api_key: REPLACE_ME
proxy:
enabled: true
host: 127.0.0.1
port: 5555
username: user123
password: pass123
type: SOCKS # SOCKS or HTTP
OLLAMA:
enabled: true
completion_model: qwen2.5-coder:3b
completion_endpoint: http://localhost:11434/api/generate
#completion_model_system_prompt: REPLACE_ME
completion_prompt: "<|fim_prefix|>@before<|fim_suffix|>@after<|fim_middle|>" # @input, @section, @before, @after
completion_params:
seed: 42
temperature: 0.0
top_p: 1.0
top_k: 0
num_predict: 15
completion_stops:
- "\n"
- "<|fim_middle|>"
chat_model: qwen2.5-coder:3b
#chat_system_prompt: REPLACE_ME
chat_endpoint: http://localhost:11434/api/chat
#chat_stops:
# - "\n"
#chat_params:
# temperature: 0.0
quick_action_model: qwen2.5-coder:7b
quick_action_endpoint: http://localhost:11434/api/generate
#quick_action_system_prompt: REPLACE_ME
#quick_action_stops:
# - "\n"
#quick_action_params:
# temperature: 0.0
BURP:
enabled: true
#chat_system_prompt: REPLACE_ME
chat_params:
temperature: 0.0
#quick_action_system_prompt: REPLACE_ME
quick_action_params:
temperature: 0.0
defaults:
chat_provider: OLLAMA # OLLAMA, OPENAI, GEMINI, BURP
completion_provider: OLLAMA # OLLAMA, OPENAI, GEMINI, BURP
quick_action_provider: OLLAMA # OLLAMA, OPENAI, GEMINI, BURP
timeout_sec: 60
prompts:
- name: technologies
description: "Fingerprint web technologies"
content: |
Analyze the following HTTP response and identify the web technologies used.
List your reasoning for each technology detected.
quick_actions:
- name: multipart
description: "Transform request to multipart"
content: |
Transform the following HTTP POST request into a multipart/form-data request:
- name: json
description: "Transform request to json"
content: |
Transform the following HTTP POST request into a JSON request:
- name: headers_name
description: "Extract HTTP header names"
content: |
From the HTTP request below, extract only the unique header names. List each name on a separate line. Do not include header values.
بالنسبة لنسخة متجر BApp من الإضافة، يُدعم مزود Burp فقط.
يتبع ملف حمولات YAML البنية التالية (لا يوجد حد للتداخل):
shortcut_search_and_replace: Ctrl+L
shortcut_payload_menu: Ctrl+Q
shortcut_collaborator: Ctrl+M
shortcut_add_custom_keyword: Ctrl+Alt+J
categories:
- name: "XSS"
payloads:
- name: "Fingerprint"
value: "\"><h1>"
shortcut: Ctrl+k # Use this shortcut to insert a payload
- name: "Path Traversal"
categories:
- name: "Simple"
payloads:
- name: ""
value: "../"
- name: "Simple 2"
payloads:
- name: ""
value: "../"
keywords:
- name: "Headers"
values:
- "Accept"
- "Accept-Charset"
لإضافة كلمات مفتاحية للإكمال التلقائي فقط دون ظهورها في القائمة، يمكنك إضافتها في فئة keywords:
keywords:
- name: "Headers"
values:
- "Accept"
- "Accept-Charset"
لتفعيل مزودين آخرين، اضبط def externalAIEnabled = true في build.gradle.
البناء باستخدام Docker أو Podman:
$ podman build -t hopla .
$ podman run --rm -v "$PWD":/data hopla gradle build
Starting a Gradle Daemon (subsequent builds will be faster)
> Task :compileJava
> Task :encryptResource
Encrypting /data/src/main/resources/default-payloads.yaml to /data/build/encryptedResources/default-payloads.enc.yaml
> Task :processResources
> Task :classes
> Task :jar
> Task :assemble
> Task :compileTestJava NO-SOURCE
> Task :processTestResources NO-SOURCE
> Task :testClasses UP-TO-DATE
> Task :test NO-SOURCE
> Task :check UP-TO-DATE
> Task :build
BUILD SUCCESSFUL in 11s
4 actionable tasks: 4 executed
$ ls releases
HopLa.jar
نفّذ gradle build وستحصل على الإضافة جاهزة في releases/HopLa.jar.
لتجنب إثارة تنبيهات برامج مكافحة الفيروسات، يتم تشفير ملف حمولات YAML وقت البناء.
شكرًا جزيلاً على أعمالكم الرائعة!
صدرت بموجب رخصة BSD 3-Clause؛ راجع LICENSE لمزيد من المعلومات
لا تتردد في الإبلاغ عن الأخطاء أو اقتراح ميزات أو إرسال طلبات السحب.
| الميزات | Ollama | Gemini | OpenAI |
|---|
| الدردشة | ✅ نعم | ✅ نعم | ✅ نعم |
| الإكمال التلقائي | ✅ نعم | ❌ لا | ❌ لا |
| الإجراء السريع | ✅ نعم | ✅ نعم | ✅ نعم |