Skip to content

سرقة شبكات #2793

@georgefahmy164-star

Description

@georgefahmy164-star

import scapy.all as scapy
import socket

def get_gateway_ip():
"""جلب عنوان الآي بي الخاص بالراوتر تلقائياً"""
try:
# إنشاء اتصال وهمي لمعرفة الآي بي المحلي
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(("8.8.8.8", 80))
ip = s.getsockname()[0]
s.close()
# تحويل الآي بي مثل 192.168.1.5 إلى 192.168.1.1/24
return ".".join(ip.split('.')[:-1]) + ".1/24"
except Exception:
return "192.168.1.1/24"

def scan(ip):
"""إرسال طلبات ARP للكشف عن الأجهزة"""
print(f"🔎 جاري فحص الشبكة: {ip} ...\n")

# إنشاء حزمة ARP طلب (من يسكن هنا؟)
arp_request = scapy.ARP(pdst=ip)
# إنشاء حزمة Broadcast (إرسال للجميع)
broadcast = scapy.Ether(dst="ff:ff:ff:ff:ff:ff")
# دمج الحزمتين
arp_request_broadcast = broadcast/arp_request

# إرسال الحزمة واستقبال الردود
answered_list = scapy.srp(arp_request_broadcast, timeout=2, verbose=False)[0]

clients_list = []
for element in answered_list:
    client_dict = {"ip": element[1].psrc, "mac": element[1].hwsrc}
    clients_list.append(client_dict)
return clients_list

def display_result(results_list):
"""عرض النتائج بشكل منظم"""
print("-----------------------------------------")
print("IP Address\t\tMAC Address")
print("-----------------------------------------")
for client in results_list:
print(f"{client['ip']}\t\t{client['mac']}")
print("-----------------------------------------")
print(f"✅ تم العثور على {len(results_list)} جهاز متصل.")

تشغيل الأداة

target_ip = get_gateway_ip()
scan_result = scan(target_ip)
display_result(scan_result)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions