
- بواسطة x32x01 ||
دليلك لبناء أدوات اختراق ببايثون من الصفر
لو إنت اتعلمت بايثون بس مش عارف تحول معرفتك لأدوات اختراق تساعدك في اختبار الاختراق (Penetration Testing) أو Bug Hunting، المقال ده ليك!

البرمجة: اكتب كود وحل مشاكل
البرمجة بتتكون من جزأين رئيسيين:- Coding: ده الجزء اللي بتتعلمه من كورسات فيديو، كتب، أو الـ Documentation الخاص باللغة.
- Problem Solving: بتتعلمه بالممارسة، زي إنك تحل مسائل، تدرس سكربتات جاهزة، وتفهم ليه الكود مكتوب بالشكل ده.

موارد عشان تبدأ في برمجة أدوات الاختراق
فيه كتير موارد تساعدك توظف معرفتك ببايثون في مجال الأمن السيبراني:- كتاب Black Hat Python (الإصدار الأخير): بيشرح إزاي تبني أدوات اختراق باستخدام Python 3. مثالي للـ Bug Hunters وRed Teamers.
- كورسات CodeRed: كورسات خفيفة ومفيدة بتشرح برمجة أدوات الاختراق.
- يوتيوب: فيه كورسات عربي وإنجليزي بتشرح بايثون للأمن السيبراني.
أهم مكتبات بايثون لبرمجة أدوات الاختراق
هنعرفك على أهم مكتبات بايثون اللي هتساعدك تبني أدوات اختراق قوية. بعضها Built-in وبعضها محتاج تثبيت عبر pip. المكتبات دي هتغطي 60% من احتياجاتك في الـ Penetration Testing!
1. مكتبات urllib، urllib2، وRequests: طلبات HTTP
المكتبات دي بتساعدك تبعت طلبات HTTP (زي GET وPOST) لاختبار مواقع الويب. **Requests** هي الأفضل والأكتر استخدامًا عشان سهولتها.- سهلة: Requests بتوفر واجهة بسيطة للتعامل مع الويب.
- مرنة: بتدعم اختبار ثغرات زي SQL Injection وXSS.
- Built-in: urllib وurllib2 مدمجين في بايثون.
Python:
# مثال لاختبار ثغرة باستخدام Requests
import requests
url = "http://example.com/login"
payload = "' OR '1'='1"
data = {"username": payload, "password": "test"}
response = requests.post(url, data=data)
if "Welcome" in response.text:
print(f"ثغرة SQL Injection موجودة! 🚨")
else:
print("محاولة فاشلة! 😔")

2. مكتبة Socket: التحكم في الشبكات
**Socket** هي مكتبة مدمجة (Built-in) في بايثون بتساعدك تبني أدوات شبكات تدعم بروتوكولات زي TCP وUDP.- مرنة: بتدعم إرسال واستقبال الحزم.
- Built-in: مدمجة في بايثون، مش محتاج تثبيت.
- مثالية: لفحص المنافذ أو بناء خوادم.
Python:
# مثال لفحص منفذ باستخدام Socket
import socket
host = "example.com"
port = 80
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
result = sock.connect_ex((host, port))
if result == 0:
print(f"المنفذ {port} مفتوح! ✅")
else:
print(f"المنفذ {port} مقفول! 🚫")
sock.close()

3. مكتبات JSON، lxml، وBeautiful Soup: تحليل البيانات
المكتبات دي (JSON مدمجة، lxml وbs4 خارجية) بتساعدك تعمل Parse لردود HTTP وتنظم البيانات.- JSON: لتحليل بيانات JSON من الويب.
- lxml: لتحليل XML بسرعة.
- Beautiful Soup (bs4): لسحب بيانات HTML (Web Scraping).
Python:
# مثال لسحب بيانات باستخدام Beautiful Soup
from bs4 import BeautifulSoup
import requests
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
for link in soup.find_all("a"):
print(f"رابط: {link.get('href')} 🔗")

4. مكتبة Selenium: أتمتة المتصفح
**Selenium** بتساعدك تتحكم في المتصفح زي Chrome أو Firefox، وبتنفع في اختبار مواقع الويب أو أتمتة المهام.- أتمتة: بتتفاعل مع المواقع زي الإنسان.
- مرنة: بتدعم ملأ استمارات واختبار واجهات.
- خارجية: لازم تثبتها عبر pip.
Python:
# مثال لفتح موقع باستخدام Selenium
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://example.com")
print("تم فتح الموقع! 🌐")
driver.quit()

5. مكتبات Pwntools وpwnlib: كتابة Exploits
**Pwntools** و**pwnlib** هما مكتبتين قويين لكتابة Exploits واختبار الثغرات، خاصة في CTF وRed Teaming.- قوية: بتساعدك تكتب Exploits بسهولة.
- متخصصة: مثالية للـ Binary Exploitation.
- خارجية: لازم تثبتها عبر pip.
Python:
# مثال بسيط باستخدام Pwntools
from pwn import *
conn = remote("example.com", 12345)
conn.sendline(b"Hello, Exploit!")
response = conn.recv()
print(f"الرد: {response.decode()} 🚨")
conn.close()

6. مكتبة Colorama: جمّل سكربتاتك
**Colorama** بتساعدك تضيف ألوان وتنسيقات للسكربتات بتاعتك عشان تبقى أجمل وأوضح.- جمالية: بتضيف ألوان للنصوص في الترمينال.
- سهلة: بسيطة جدًا في الاستخدام.
- خارجية: لازم تثبتها عبر pip.
Python:
# مثال لإضافة ألوان باستخدام Colorama
from colorama import Fore, init
init()
print(Fore.RED + "تحذير: ثغرة موجودة!" + Fore.RESET)
print(Fore.GREEN + "النظام آمن!" + Fore.RESET)

7. مكتبة os: التحكم في النظام
**os** هي مكتبة مدمجة بتساعدك تتحكم في نظام التشغيل، زي تنفيذ أوامر أو إنشاء مجلدات.- Built-in: مدمجة في بايثون.
- مرنة: بتدعم التعامل مع الملفات والأنظمة.
- مثالية: لإنشاء أدوات تتفاعل مع النظام.
Python:
# مثال لإنشاء مجلد باستخدام os
import os
os.mkdir("pentest_tool")
print("تم إنشاء المجلد بنجاح! 📁")

8. مكتبة Argparse: إضافة Arguments للسكربتات
**Argparse** بتساعدك تضيف Arguments للسكربتات بتاعتك عشان تتحكم فيها من الترمينال.- Built-in: مدمجة في بايثون.
- سهلة: بتخلّيك تضيف خيارات للسكربت.
- احترافية: بتخلّي أدواتك زي الأدوات الشهيرة.
Python:
# مثال لإضافة Arguments باستخدام Argparse
import argparse
parser = argparse.ArgumentParser(description="أداة فحص منافذ")
parser.add_argument("--host", required=True, help="عنوان الهدف")
parser.add_argument("--port", type=int, required=True, help="المنفذ")
args = parser.parse_args()
print(f"فحص: {args.host}:{args.port} 🔍")

9. مكتبة Pyarmor: حماية الكود
**Pyarmor** بتساعدك تعمل Obfuscation للكود بتاعك أو تضيف License عشان تحميه.- حماية: بتخفي الكود من التعديل.
- مرنة: بتدعم إضافة تراخيص.
- خارجية: لازم تثبتها عبر pip.
Python:
# مثال لتشفير ملف باستخدام Pyarmor (بعد التثبيت)
# pyarmor obfuscate script.py
print("الكود محمي بـ Pyarmor! 🔒")

10. مكتبات PyInstaller وpy2exe: تحويل السكربتات لملفات تنفيذية
**PyInstaller** و**py2exe** بيحولوا سكربتات بايثون لملفات تنفيذية (.exe) عشان تشغلها على أي جهاز.- سهلة: بتحول السكربت لملف تنفيذي بسهولة.
- مرنة: بتدعم ويندوز، لينكس، وماك.
- خارجية: لازم تثبتها عبر pip.
Python:
# مثال لتحويل سكربت باستخدام PyInstaller (بعد التثبيت)
# pyinstaller --onefile script.py
print("تم تحويل السكربت إلى ملف .exe! 💿")

نصايح لتطوير نفسك في برمجة أدوات الاختراق
- ابدأ بسيط: اكتب سكربتات صغيرة زي فحص منافذ أو سحب بيانات.
- مارس Problem Solving: حاول تحل مسائل برمجة على منصات زي HackTheBox.
- ادرس أكواد جاهزة: شوف سكربتات على GitHub وفهمها.
- انشر مشاريعك: انشئ حساب على GitHub وانشر أدواتك عشان الناس تديك تعليقات.
الخلاصة: ابدأ بناء أدواتك اليوم!
لو إنت عارف أساسيات بايثون، المكتبات زي Requests، Socket، Beautiful Soup، وPwntools هتساعدك تبني أدوات اختراق قوية.

التعديل الأخير: