Pwntools هو إطار عمل CTF ومكتبة تطوير. تم كتابته بلغة بايثون، وهو مصمم للنماذج الأولية والتطوير السريع، ويهدف إلى جعل الكتابة المستغلة بسيطة قدر الإمكان.
from pwn import *
context ( arch = 'i386' , os = 'linux' )
r = remote ( 'exploitme.example.com' , 31337 )
# EXPLOIT CODE GOES HERE
r . send ( asm ( shellcraft . sh ()))
r . interactive ()
وثائقنا متاحة على docs.pwntools.com
تتوفر أيضًا سلسلة من البرامج التعليمية عبر الإنترنت
للبدء، قدمنا بعض الحلول النموذجية لتحديات CTF السابقة في مستودع الكتابة الخاص بنا.
يتم دعم Pwntools بشكل أفضل على إصدارات Ubuntu LTS 64 بت (18.04 و20.04 و22.04 و24.04). يجب أن تعمل معظم الوظائف على أي توزيعة تشبه Posix (Debian، وArch، وFreeBSD، وOSX، وما إلى ذلك).
يُقترح استخدام Python3، لكن Pwntools لا يزال يعمل مع Python 2.7. معظم وظائف pwntools قائمة بذاتها ومعتمدة على Python فقط. يجب أن تكون قادرًا على الركض بسرعة مع
sudo apt-get update
sudo apt-get install python3 python3-pip python3-dev git libssl-dev libffi-dev build-essential
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade pwntools
ومع ذلك، فإن بعض الميزات (تجميع/تفكيك البنى الأجنبية) تتطلب تبعيات غير بايثون. لمزيد من المعلومات، راجع تعليمات التثبيت الكاملة هنا.
انظر CONTRIBUTING.md
إذا كانت لديك أي أسئلة لا تستحق تقرير الأخطاء، انضم إلى خادم Discord على https://discord.gg/96VA2zvjCB