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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ptf — إطار عمل مختبر الاختراق (PTF) هو وسيلة للدعم المعياري للأدوات المحدثة. | Kitploit
أدوات/GitHubGitHub/trustedsec/ptf
أطر اختبار الاختراقأطر الاستغلالالبرمجة النصية والأتمتةالأدوات والمكونات
GitHubtrustedsec/ptf

ptf

إطار عمل مختبر الاختراق (PTF) هو وسيلة للدعم المعياري للأدوات المحدثة.

عرض المستودع
5.6k1.3k7منذ سنة واحدةتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

إطار عمل مختبر الاختراق (PTF)

===

مشروع TrustedSec - حقوق النشر 2022

كتب بواسطة: ديفيد كينيدي (@HackingDave)

https://www.trustedsec.com

تويتر: @TrustedSec, @HackingDave

إطار عمل مختبر الاختراق (PTF) هو نص برمجي بلغة بايثون مصمم لتوزيعات دبيان/أوبونتو/آرتش لينكس لإنشاء توزيعة مشابهة ومألوفة لاختبار الاختراق. كمختبرين اختراق، اعتدنا على أدلة /pentest/ أو مجموعات أدواتنا الخاصة التي نريد الحفاظ على تحديثها باستمرار. لدينا تلك الأدوات "الرئيسية" التي نستخدمها بانتظام، واستخدام الأحدث والأفضل هو أمر مهم.

يحاول PTF تثبيت جميع أدوات اختبار الاختراق الخاصة بك (الأحدث والأفضل)، وترجمتها، وبنائها، وجعلها بحيث يمكنك تثبيت/تحديث توزيعتك على أي جهاز. كل شيء منظم بطريقة متماسكة مع معيار تنفيذ اختبار الاختراق (PTES) ويزيل الكثير من الأشياء التي نادراً ما تُستخدم. يعمل PTF على تبسيط التثبيت والتعبئة وينشئ لك إطار عمل اختراق كامل. نظراً لأن هذا إطار عمل، يمكنك تكوينه وإضافة ما تراه مناسباً. نرى عادةً مستودعات تم تطويرها داخلياً يمكنك استخدامها أيضاً كجزء من هذا الإطار. الأمر كله يعود إليك.

الهدف النهائي هو دعم المجتمع لهذا المشروع. نريد إضافة أدوات جديدة إلى مستودع جيثب. قدّم وحداتك. من السهل جداً تكوينها وإضافتها ولا تستغرق سوى بضع دقائق.

التثبيت

يتطلب PTF مكتبة python-pexpect ليعمل بشكل صحيح.

قم بتشغيل الأمر التالي أدناه:

root@kitploit:~
pip install -r requirements.txt
./ptf

التعليمات:

أولاً، اطلع على ملف config/ptf.config الذي يحتوي على الموقع الأساسي لتثبيت كل شيء. افتراضياً، سيتم التثبيت في دليل /pentest. بمجرد تكوين ذلك، انتقل إلى تشغيل PTF بكتابة ./ptf (أو python ptf).

سيضعك هذا في شل شبيهة بـ Metasploit ذات مظهر وإحساس متسقين. عرض الوحدات، استخدام <modules>، إلخ. كلها أوامر مقبولة. أولاً وقبل كل شيء، اكتب دائماً help أو ? لرؤية القائمة الكاملة للأوامر.

للحصول على فيديو تعليمي حول كيفية استخدام PTF، تفضل بزيارة صفحتنا على Vimeo هنا: https://vimeo.com/137133837

تحديث كل شيء!

إذا كنت ترغب في تثبيت و/أو تحديث كل شيء، ببساطة قم بما يلي:

root@kitploit:~
./ptf
use modules/install_update_all
yes

سيؤدي هذا إلى تثبيت جميع الأدوات داخل PTF. إذا كانت مثبتة بالفعل، فسيتكرر التحديث تلقائياً لكل شيء.

يمكنك أيضاً تثبيت كل وحدة على حدة، ثم استخدام use modules/update_installed الذي سيحدث فقط ما قمت بتثبيته سابقاً.

على سبيل المثال:

root@kitploit:~
./ptf
use modules/update_installed

سيؤدي هذا فقط إلى تحديث النسخ السابقة التي قمت بتثبيتها.

يمكنك أيضاً عرض الخيارات لتغيير معلومات حول الوحدات.

إذا كنت ترغب في تثبيت أدوات الاستغلال فقط على سبيل المثال، يمكنك تشغيل:

root@kitploit:~
./ptf
use modules/exploitation/install_update_all

سيؤدي هذا إلى تثبيت وحدات الاستغلال فقط. يمكنك فعل ذلك لأي فئة من الوحدات.

تخصيص أدواتك المثبتة

يمكنك تثبيت الأدوات التي تريدها فقط بالذهاب إلى قسم modules/custom_list/list.txt. قم بتعديل ملف list.txt وأضف الأدوات التي تريد تثبيتها أو تحديثها فقط.

مثال على ملف list.txt:

modules/exploitation/metasploit modules/post-exploitation/unicorn

ثم عند الدخول إلى PTF:

root@kitploit:~
./ptf
use modules/custom_list/list
yes

يتيح لك هذا نقل تكوين الوحدة الخاصة بك وتثبيت الأدوات التي تريدها فقط والحفاظ على تحديثها.

يمكنك أيضاً ببساطة تحديد وحدة دون استخدام الفئة:

root@kitploit:~
./ptf
use trevorc2
yes

الوحدات:

أولاً، انتقل إلى دليل modules/، بداخله أدلة فرعية تعتمد على مراحل معيار تنفيذ اختبار الاختراق (PTES). ادخل إلى تلك المراحل وانظر إلى الوحدات المختلفة. بمجرد إضافة وحدة جديدة، على سبيل المثال testing.py، سيتم استيرادها تلقائياً في المرة التالية التي تشغل فيها PTF. هناك بعض المكونات الرئيسية عند النظر إلى الوحدة التي يجب إكمالها.

أدناه نموذج لوحدة

root@kitploit:~
AUTHOR="David Kennedy (ReL1K)"

DESCRIPTION="This module will install/update the Browser Exploitation Framework (BeEF)"

INSTALL_TYPE="GIT"

REPOSITORY_LOCATION="https://github.com/beefproject/beef"

X64_LOCATION="https://github.com/something_thats_x64_instead_of_x86

INSTALL_LOCATION="beef"

DEBIAN="ruby1.9.3,sqlite3,ruby-sqlite3"

ARCHLINUX = "arch-module,etc"

BYPASS_UPDATE="NO"

AFTER_COMMANDS="cd {INSTALL_LOCATION},ruby install-beef"

LAUNCHER="beef"

TOOL_DEPEND="modules/exploitation/metasploit"

تطوير الوحدات:

جميع الحقول سهلة للغاية، بالنسبة لمواقع المستودعات، يمكنك استخدام GIT أو SVN أو FILE أو TAGS. قم بتعبئة التبعيات، والمكان الذي تريد أن يكون فيه موقع التثبيت. سيأخذ PTF مكان وجود ملف البايثون (مثل exploitation) وينقله إلى ما تحدده في إعدادات PTF (الموجودة تحت config). افتراضياً، يقوم بتثبيت جميع أدواتك في /pentest/PTES_PHASE/TOOL_FOLDER

لاحظ أنه في الوحدات، يمكنك تحديد أوامر بعد التثبيت {INSTALL_LOCATION}. سيؤدي هذا إلى إلحاق الموقع الذي تريد أن يذهب إليه التثبيت عند استخدام الأوامر بعد التثبيت.

يمكنك أيضاً تحديد {PTF_LOCATION} الذي سيسحب المسار الأساسي لتثبيت PTF الخاص بك.

لديك أيضاً القدرة على تحديد مواقع مستودعات لكل من إصدار 32 بت و 64 بت. يجب أن يكون موقع المستودع دائماً مسار التحميل x86. لإضافة مسار 64 بت لأداة، حدد X64_LOCATION وأعطه رابط URL. عند تشغيل PTF، سيكتشف تلقائياً البنية ويحاول استخدام رابط x64 بدلاً من x86.

لاحظ أن حزم ArchLinux مدعومة أيضاً، يجب تحديدها لكل من DEBIAN و ARCH حتى يتم تثبيتها بشكل صحيح على أي من النظامين الأساسيين في الوحدة.

عند استخدام وضع TAGS، سيسمح لك هذا باستخدام مشروع جيثب يستخدم الوسوم (tags) لسحب أحدث إصدار (عادةً تطبيقات مجمعة) وتحميله تلقائياً. لاستخدام طريقة TAGS، ألق نظرة على الهيكل تحت modules/intelligence-gathering/teamfiltration.py. في هذا المثال، لا حاجة لـ repository_location، لكنك ستحتاج إلى معرفة مالك المشروع، اسم المشروع/المستودع، واسم الملف المراد تحميله. في مثال TeamFiltration، يوجد على: https://github.com/Flangvik/TeamFiltration. سيكون المالك هو Flangvik، والمشروع/الأداة هو TeamFiltration. إذا انتقلت إلى الإصدارات: https://github.com/Flangvik/TeamFiltration/releases/، يمكننا رؤية أن اسم الملف الذي نريد تحميله هو "TeamFiltration_Linux". هذه تحت OWNER و REPOHOME و FILENAME. بتحديدها، سيكتشف PTF تلقائياً أحدث إصدار للأداة ويقوم بتثبيتها.

دعم GitLab

يمكنك إنشاء وحداتك الخاصة ويدعم PTF أيضاً الوصول إلى GitLab. بدلاً من تحديد git أو wget إلخ، ببساطة حدد gitlab وأشر إلى أدوات GitLab الداخلية الخاصة بك للوحدات.

تجاوز التحديثات:

عند استخدام git أو svn التقليدي كطريقة رئيسية، ما سيحدث بعد تثبيت الوحدة هو أنه سيقوم بسحب أحدث إصدار من الأداة. مع الأوامر بعد التثبيت، قد تحتاج عادةً إلى تشغيل الأوامر بعد التثبيت بعد كل تحديث. إذا قمت بتحديد تجاوز التحديثات إلى YES (BYPASS_UPDATE="YES")، في كل مرة يتم فيها تشغيل الأداة، سيتحقق من أحدث إصدار ويظل يقوم بتشغيل الأوامر بعد التثبيت. إذا تم وضع علامة no، فسوف يقوم فقط بسحب أحدث إصدار من النظام عبر git. بالنسبة لخيارات FILE، يُنصح دائماً باستخدام BYPASS_UPDATE="YES" حتى يتم استبدال الملفات في كل مرة.

الأوامر بعد التثبيت:

الأوامر بعد التثبيت هي أوامر يمكنك إدراجها بعد التثبيت. قد يكون ذلك بالتبديل إلى دليل وتشغيل أوامر إضافية لإنهاء التثبيت. على سبيل المثال في سيناريو BEEF، تحتاج إلى تشغيل ruby install-beef بعد ذلك. أدناه مثال على الأوامر بعد التثبيت باستخدام العلامة {INSTALL_LOCATION}.

root@kitploit:~
AFTER_COMMANDS="cp config/dict/rockyou.txt {INSTALL_LOCATION}"

بالنسبة لـ AFTER_COMMANDS التي تقوم بالتثبيت الذاتي (لا تحتاج إلى تفاعل المستخدم).

مشغلات تلقائية

العلامة LAUNCHER= في الوحدات اختيارية. إذا أضفت LAUNCHER="setoolkit" على سبيل المثال، فسينشئ PTF تلقائياً مشغلاً للأداة تحت /usr/local/bin/. في مثال setoolkit، عند التشغيل - سينشئ PTF تلقائياً ملفاً تحت /usr/local/bin/setoolkit حتى تتمكن من تشغيل SET من أي مكان بمجرد كتابة setoolkit. سيتم تثبيت جميع الملفات تحت الفئات المناسبة، على سبيل المثال /pentest/exploitation/setoolkit ولكن سيتم إنشاء مشغل تلقائي.

يمكن أن يكون لديك عدة مشغلات لتطبيق واحد. على سبيل المثال، بالنسبة لـ Metasploit قد ترغب في msfconsole، msfvenom، إلخ. لإضافة مشغلات متعددة، ببساطة ضع , بينها. على سبيل المثال LAUNCHER="msfconsole,msfvenom". سيؤدي هذا إلى إنشاء مشغلات لكليهما.

سطر الأوامر التلقائي

يمكنك أيضاً تشغيل ./ptf --update-all وسيقوم تلقائياً بتحديث كل شيء دون الحاجة إلى الدخول إلى الإطار.

التشغيل بدون إشراف

إذا كنت تشغل ptf في بناء تلقائي، يمكنك استخدام heredoc حتى لا تضطر إلى كتابة الوحدات التي ترغب في تثبيتها بشكل تفاعلي. مثال:

root@kitploit:~
./ptf <<EOF
use modules/exploitation/metasploit
run
use modules/password-recovery/johntheripper
run
EOF

تبعيات الأدوات

بعض الأدوات مثل Veil، SET، إلخ. تتطلب أدوات مثل Metasploit Framework. يمكنك إضافة في الوحدة TOOL_DEPEND="modules/exploitation/metasploit,module/exploitation/set" وأدوات أخرى متعددة إذا كانت هناك أداة مطلوب تثبيتها قبل تثبيت الأداة. سيؤدي هذا إلى إجبار PTF على تثبيت الأداة المطلوبة أولاً، ثم تثبيت الوحدة التي تتطلبها. مثال:

TOOL_DEPEND="modules/exploitation/metasploit"

سيؤدي هذا إلى تثبيت Metasploit أولاً أو ضمان تثبيته أولاً قبل تثبيت التطبيق.

تجاهل الوحدات أو الفئات

يمكن العثور على خيار التكوين IGNORE_THESE_MODULES= تحت config/ptf.config في الدليل الجذر لـ PTF. سيؤدي هذا إلى تجاهل الوحدات وعدم تثبيتها - كل شيء مفصول بفواصل ويعتمد على الاسم - مثال: modules/exploitation/metasploit,modules/exploitation/set أو فئات وحدات كاملة، مثل /modules/code-audit/*,/modules/reporting/*

تجاهل الوحدات من التحديث/التثبيت الكامل

يمكن العثور على خيار التكوين IGNORE_UPDATE_ALL_MODULES= تحت config/ptf.config في الدليل الجذر لـ PTF. سيؤدي هذا إلى تجاهل الوحدات فقط عند القيام بعملية install_update_all التي تُستخدم عندما تريد تثبيت جميع الأدوات. قد يكون هذا للتطبيقات الكبيرة التي تستغرق وقتاً طويلاً، أو تلك التي تتطلب تفاعلاً مع المستخدم، أو تفتح عدداً من المنافذ والبروتوكولات على النظام. يعمل هذا بشكل مشابه جداً لـ IGNORE_THESE_MODULES، باستثناء أنه يمكن تثبيتها وتحديثها يدوياً من خلال modules/update_installed. هذه مفصولة بفواصل، فمثلاً modules/exploitation/tool1,modules/exploitation/tool2، عند تشغيل install_update_all، لن يتم تثبيت الأدوات إلا إذا ذهبت إلى use modules/exploitation/tool1 وقمت بتثبيتها بهذه الطريقة.

تضمين هذه الوحدات فقط

خيار INCLUDE_ONLY_THESE_MODULES في التكوين تحت config/ptf.config سيقوم فقط بتثبيت وتضمين وحدات محددة محددة هنا. هذا جيد لتحديد الأدوات التي تريدها وتثبيتها فقط.

تشغيل PTF بدون شعار

يمكنك تشغيل PTF بدون رسالة شعار إذا أردت. ببساطة حدد:

root@kitploit:~
./ptf --no-banner

or 

./ptf -nb

التحقق من البرامج المثبتة عبر PTF

يمكنك التحقق من التطبيقات التي قمت بتثبيتها بالفعل عبر PTF بكتابة ما يلي:

root@kitploit:~
ptf>show installed
تنزيل الأداة