
CVE2PoC هي أداة تساعد مختبري الاختراق وصيادي الثغرات وباحثي الأمن في العثور بسرعة على الاستغلالات العامة أو إثباتات المفهوم (PoCs) المتعلقة بمعرّف CVE.
CVE2PoC هي أداة تساعد مختبري الاختراق وصيادي الثغرات وباحثي الأمن على العثور بسرعة على الاستغلالات العامة وإثباتات المفاهيم (PoCs) والنشرات الاستشارية المرتبطة بمعرّف CVE.
يمكن تثبيت CVE2PoC باستخدام pipx أو uv.
pipx install git+https://github.com/0liverFlow/cve2poc
uv tool install git+https://github.com/0liverFlow/CVE2PoC
uvx git+https://github.com/0liverFlow/CVE2PoC
استخدام CVE2PoC بسيط ومباشر. يمكنك استخدامه بمجرد تحديد معرّف CVE.
راجع قائمة المساعدة وقسم العرض التوضيحي أدناه لفهم ميزات الأداة بشكل أفضل.
usage: cve2poc.py [-h] [-x] [-d] [-f FILE] [-o OUTPUT] [-l LANGUAGE] [--limit LIMIT] [-t] [--labs CVE ID]
[--bugbounty-reports CVE ID] [--mitigations CVE ID] [--cve2cpe CVE ID] [--cpe2cve CPE] [-s FILE]
[--api-keys] [--no-banner]
[cve]
A simple yet powerful tool to quickly find PoCs related to a CVE ID
positional arguments:
cve CVE ID
options:
-h, --help show this help message and exit
-x , --examine Examine an exploit's README file
-d, --description Display a CVE ID description
-f FILE, --file FILE Specify a file containing a list of CVE IDs
-o OUTPUT, --output OUTPUT Output directory to store the reports
-l LANGUAGE, --language LANGUAGE Filter PoCs by programming language
--limit LIMIT Number of PoCs to display
-t , --threads Number of concurrent threads
--labs CVE ID Search pre-built docker environments and Hands-on labs related to a CVE ID
--bugbounty-reports CVE ID Search Bug Bounty reports related to a CVE ID
--mitigations CVE ID Remediation steps to fix a vulnerability
--cve2cpe CVE ID Retrieve CPEs related to a CVE ID
--cpe2cve CPE Retrieve CVEs related to a CPE
-s FILE, --save FILE Output file to save CPE2CVE results
--api-keys Configure your GitHub and NVD API keys (Not required)
--no-banner Remove banner
شغّل هذا الأمر للبحث عن استغلالات عامة مرتبطة بمعرّف CVE:
cve2poc <CVE ID>

افتراضيًا، ستعيد الأداة أفضل 10 استغلالات، مرتبة حسب نجومها وعدد مرات نسخها (forks).
بالإضافة إلى ذلك، ستبحث عن وحدات Metasploit وقوالب Nuclei واستغلالات Exploit-DB المرتبطة بمعرّف CVE المحدد.
للبحث عن عدة CVEs، حدد ملفًا يحتوي على قائمة بمعرّفات CVE (معرّف واحد لكل سطر) باستخدام العلامة -f:
cve2poc -f <file>


افتراضيًا، ينشئ CVE2PoC تلقائيًا تقارير مفصّلة بصيغتي JSON وHTML في الدليل الحالي.
لاستخدام دليل إخراج مختلف، استخدم العلامة-o.
لاختبار هذه الميزة، استخدم الملفات النموذجية المتوفرة.
يعيد الأمر التالي وصفًا لمعرّف CVE، بالإضافة إلى مراجع إضافية لفهم الثغرة بشكل أفضل:
cve2poc --description <CVE ID>

يمكن استخدام CVE2PoC للعثور على بيئات Docker الجاهزة للاستخدام والمختبرات العملية لفهم الاستغلالات واختبارها بأمان قبل استخدامها في بيئات حقيقية، مما يقلل من مخاطر التعطل في بيئات الإنتاج.
cve2poc --labs <CVE ID>

يمكن أن تكون تقارير Bug Bounty مفيدة لفهم كيفية استغلال CVE في سيناريوهات واقعية بشكل أفضل. وقد تحتوي أيضًا على إثباتات مفاهيم (PoCs) تساعدك على إعادة إنتاج الثغرة.
cve2poc --bugbounty-reports <CVE ID>

لتحديد خطوات معالجة الثغرة بسرعة، استخدم هذا الأمر:
cve2poc --mitigations <CVE ID>

تحتوي CVE2PoC على ميزة مشابهة لـ searchsploit -x، تتيح لك قراءة ملف README الخاص بالاستغلال مباشرة من الطرفية. وهذا مفيد خاصةً إذا كنت بحاجة إلى فهم سريع لكيفية عمل الاستغلال دون استخدام المتصفح.
لفحص توثيق الاستغلال، استخدم هذا الأمر:
cve2poc --examine <GitHub Clone URL>

GitHub Clone URL هو الرابط الذي يعيده CVE2PoC لكل إثبات مفهوم (PoC).
لاسترجاع معرّفات CVE المرتبطة بمعرّف CPE، شغّل هذا الأمر:
cve2poc --cpe2cve <CPE>

لاسترجاع CPEs المرتبطة بمعرّف CVE، شغّل هذا الأمر:
cve2poc --cve2cpe <CVE ID>

تمتلك CVE2PoC ميزة تساعدك في البحث عن إثباتات مفاهيم (PoCs) مكتوبة بلغة برمجة محددة. لاستخدامها، شغّل هذا الأمر:
cve2poc <CVE ID> --language <Programming Language>

افتراضيًا، يعيد CVE2PoC أفضل 10 استغلالات موجودة على GitHub. ومع ذلك، يمكنك عرض عدد أكبر أو أقل من الاستغلالات باستخدام العلامة --limit:
cve2poc <CVE ID> --limit <N>

يجب أن تكون N أكبر من أو تساوي 1.
تستخدم CVE2PoC أداة argcomplete لتفعيل الإكمال التلقائي بعلامة التبويب عبر argparse.
sudo apt install python3-argcomplete
# For Bash
register-python-argcomplete cve2poc >> ~/.bashrc
source ~/.bashrc
# For Zsh
register-python-argcomplete cve2poc >> ~/.zshrc
source ~/.zshrc
تستخدم CVE2PoC أداة ruff للفحص والتنسيق.
# Run linter
uv run ruff check .
# Run linter with auto-fix
uv run ruff check --fix .
# Run formatter
uv run ruff format .
جزيل الشكر للمصادر التالية التي تعتمد عليها CVE2PoC:
هذه الأداة مخصصة للأغراض التعليمية والبحثية واختبارات الأمان المصرح بها فقط. استخدمها فقط على الأنظمة التي تملكها أو لديك إذن صريح لاختبارها. المؤلف غير مسؤول عن أي إساءة استخدام أو ضرر ناتج عن استخدامها.