بناء أدوات الشبكة الخاصة بك
لبناء ماسحات مخصصة، أو reverse shells ، أو تطبيقات عميل/خادم، يستخدم محترفو الأمن برمجة الـ sockets — وهي الطريقة الأساسية التي تتواصل بها البرامج عبر الشبكة.
وحدة socket
توفر وحدة socket في Python واجهة برمجة التطبيقات القياسية للتفاعل مع بروتوكولات الشبكة (TCP/UDP).
مثال مفاهيمي: بناء عميل TCP بسيط
python import socket
إنشاء سوكت TCP/IP
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
عنوان الهدف والمنفذ
target_ip = '127.0.0.1' target_port = 80
try: # الاتصال بالخدمة s.connect((target_ip, target_port)) # إرسال بيانات (مثل طلب HTTP) s.sendall(b"GET / HTTP/1.1\r\n\r\n") # استقبال الاستجابة response = s.recv(4096) print("Service banner received:", response.decode())
except ConnectionRefusedError: print("Connection failed.") finally: s.close()
فهم الـ sockets يتيح لك تخصيص صياغة الحزم والتفاعل مع الشبكة بما يتجاوز ما تقدمه الأدوات القياسية.