Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
explo — تنسيق اختبار ثغرات الويب مقروء للبشر والآلات | Kitploit
أدوات/GitHubGitHub/telekom-security/explo
تحليل الثغرات الأمنيةالبرمجة النصية والأتمتةاستغلال تطبيقات الويبأمن الويباختبار الاختراقArchived
GitHubtelekom-security/explo

explo

تنسيق اختبار ثغرات الويب مقروء للبشر والآلات

عرض المستودع
19549منذ 3 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

إكسبلو

لقطة الشاشة

explo هي أداة بسيطة لوصف مشكلات أمن الويب بتنسيق قابل للقراءة من قبل البشر والآلات. من خلال تعريف سير عمل من الطلبات/الشروط، يمكن لـ explo استغلال المشكلات الأمنية دون الحاجة إلى كتابة سكريبت. هذا يتيح مشاركة الثغرات المعقدة بتنسيق بسيط قابل للقراءة والتنفيذ.

مثال لاستخراج رمز csrf واستخدامه في نموذج:

root@kitploit:~
name: get_csrf
description: استخراج رمز csrf
module: http
parameter:
    url: http://example.com/contact
    method: GET
    header:
        user-agent: Mozilla/5.0
    extract:
        csrf: [CSS, "#csrf"]
---
name: exploit
description: استغلال ثغرة حقن SQL مع رمز csrf صالح
module: http
parameter:
    url: http://example.com/contact
    method: POST
    body:
        csrf: "{{get_csrf.extracted.csrf}}"
        username: "' SQL INJECTION"
    find: You have an error in your SQL syntax

جدول المحتويات

  • التثبيت
  • الاستخدام
  • الوحدات
    • HTTP (أساسي)
    • HTTP (رأس)
    • SQLI (أعمى)
    • البيانات الوصفية

في هذا المثال من ملف التعريف، يتم اختبار المشكلة الأمنية بتنفيذ خطوتين يتم تشغيلهما من الأعلى إلى الأسفل. تعيد الخطوة الأخيرة نجاحًا أو فشلًا اعتمادًا على وجود السلسلة النصية 'You have an error in your SQL syntax'.

التثبيت

التثبيت عبر PyPI

root@kitploit:~
pip install explo

التثبيت من المصدر

root@kitploit:~
git clone https://github.com/dtag-dev-sec/explo
cd explo
python setup.py install

الاستخدام

root@kitploit:~
explo [--verbose|-v] testcase.yaml
explo [--verbose|-v] examples/*.yaml

هناك بعض حالات الاختبار المثالية في مجلد examples/.

root@kitploit:~
$ explo examples/SQLI_simple_testphp.vulnweb.com.yaml

يمكنك أيضًا تضمين explo كمكتبة بايثون:

root@kitploit:~
from explo.core import from_content as explo_from_content
from explo.core import ExploException, ProxyException

def save_log(msg):
    print(msg)

try:
    result = explo_from_content(explo_yaml_file, save_log)
except ExploException as err:
    print(err)

الخيارات

يمكن تعيين وكيل http/https ومهلة الطلبات عبر متغيرات البيئة. المهلة الافتراضية مضبوطة على 15 ثانية.

root@kitploit:~
$ export http_proxy=http://proxy:8089
$ export https_proxy=https://proxy:8090
$ export timeout=10
$ explo ...

الوحدات

يمكن إضافة وحدات لتحسين الوظائف وفئات المشكلات الأمنية.

http (أساسي)

تسمح وحدة http بإجراء طلب http، واستخراج المحتوى، والبحث/التحقق من المحتوى.

البيانات التالية متاحة للخطوات التالية:

  • نص استجابة http: stepname.response.content
  • ملفات تعريف الارتباط لاستجابة http: stepname.response.cookies
  • المحتوى المستخرج: response.extracted.variable_name

إذا تم تعيين معامل find_regex، يتم تنفيذ مطابقة تعبير اعتيادي على نص الاستجابة. إذا فشل ذلك، تعيد هذه الوحدة فشلًا وبالتالي إيقاف تنفيذ سير العمل الحالي (وجميع الخطوات).

عند الاستخراج بالتعبيرات الاعتيادية، استخدم مجموعة المطابقة extract لتحديد القيمة المراد استخراجها (انظر أدناه للحصول على مثال).

للإشارة إلى ملفات تعريف الارتباط، ارجع إلى اسم الخطوة السابقة التي يجب أخذ ملفات تعريف الارتباط منها (cookies: the_other_step.response.cookies).

أمثلة المعاملات:

root@kitploit:~
parameter:
    url: http://example.com
    method: GET
    allow_redirects: True
    headers:
        User-Agent: explo
        Content-Type: abc
    cookies: stepname.response.cookies
    body:
        key: value
    find: للبحث عن سلسلة نصية
    find_regex: للبحث عن (reg|ular)expression
    find_in_headers: البحث في الرؤوس
    expect_response_code: 200
    extract:
        variable1: [CSS, '#csrf']
        variable2: [REGEX, '<input(.*?)value="(?P<extract>.*?)"']

http_header

تسمح وحدة http_header بالتحقق مما إذا كانت الاستجابة تفتقد مجموعة محددة من الرؤوس (والقيم). جميع المعاملات الأخرى مطابقة لوحدة http.

البيانات التالية متاحة للوحدات الأخرى:

  • نص استجابة http: stepname.response.content
  • ملفات تعريف الارتباط لاستجابة http: stepname.response.cookies

أمثلة المعاملات:

root@kitploit:~
parameter:
    url: http://example.com
    method: GET
    allow_redirects: True
    headers:
        User-Agent: explo
        Content-Type: abc
    body:
        key: value
    headers_required:
        X-XSS-Protection: 1
        Server: .               # جميع القيم صالحة

sqli_blind

وحدة sqli_blind قادرة على تحديد حقن SQL الأعمى المعتمد على الوقت.

البيانات التالية متاحة للوحدات الأخرى:

  • نص استجابة http: stepname.response.content
  • ملفات تعريف الارتباط لاستجابة http: stepname.response.cookies

أمثلة المعاملات:

root@kitploit:~
parameter:
    url: http://example.com/vulnerable.php?id=1' waitfor delay '00:00:5'--
    method: GET
    delay_seconds: 5

إذا تجاوزت العتبة 5 ثوانٍ (delay_seconds)، يعيد الفحص قيمة صحيحة (وبالتالي يؤدي إلى نجاح).

البيانات الوصفية

كتلة البيانات الوصفية هي كتلة خاصة يمكن إضافتها كأول كتلة في ملف .yaml لإضافة بيانات وصفية إلى ثغرة لمزيد من المعالجة. يصبح هذا مفيدًا عند استخدام explo كمكتبة ويمكن قراءة البيانات الوصفية لكل وصف ثغرة باستخدام meta_from_content(content). لا تحتاج هذه الوحدة إلى اسم أو وصف.

أمثلة:

root@kitploit:~
module: metadata
parameter:
    cvss: 8.9
    author: Robin Verton
---
name: login
description: تسجيل الدخول ببيانات اعتماد اختبارية
module: http
parameter:
    url: http://testphp.vulnweb.com/userinfo.php
    method: POST
    body:
        uname: test
        pass: test
تنزيل الأداة