إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

Attacking and Securing RIP

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • Attacking and Securing RIP

    السلام عليكم

    فكرت نرجع شوية لايام زمان ونتكلم في السيكيورتي والهاكينج
    طبعا الموضوع ده موجه لميديري الشبكات والانظمة وخبراء الامن والهاكرز
    اذا انت واحد من دول فالموضوع هيفيدك .. لاني مش هدخل في تفاصيل كتير .. ولكن سأركز على الموضوع من ناحية امنية فقط .. اي حاجه تانية بئى ممكن تكلم فيها الحج جوجل

    طبعا زي محنا عارفين هناك العديد من بروتوكولات الراوتينج اللي بنتعامل معاها ويمكن اقدمها واشهرها هو RIP او Routing Information Protocol .. ولكن ليس اكثرها تعقيدا
    وبيشتغل على جميع الراوترات من اول سيسكو الى باقي الشركات الاخرى وكما يعمل على Linux-router عن طريق سوفتوير www.quagga.net

    اكيد طبعا عارفين ان RIP مصنف تبع فئة ال DISTANCE-VECTOR ROUTING PROTOCOLS

    وبروتوكولات ال DISTANCE-VECTOR جميعها يقوم بأرسال ال Routing table الى جميع الراوترات الاخرى في الشبكة خلال فترة معينة
    في ال RIP كل 30 ثانية

    عندنا نوعين من ال RIP او فيرجن ١ و فيرجن ٢
    الفيرجن الاول يعتبر قديم وبه الكثير من العيوب
    الفيرجن الثاني يدعم ال VLSM او Variable Length Subnet Masking
    طبعا اكيد عارفين ان ال VLSM هو عندما يكون هناك class تحتوي على اكثر من subnet
    ويدعم ايضا ال discontiguous networks وهو ان يكون هناك ٢ networks لها subnet موحده موصولتين ببعض عن طريق network اخرى لها subnet مختلفة

    ولكن في حالة RIP version 1 فهو لا يقوم بارسال ال netmask خلال ال advertisement

    ميزة اخرى لل RIPver2 وهي انه يدعم ال authntication عن طريق MD5

    ولكن للاسف العديد من مدراء الشبكات .. بل اغلبهم لا يقوم بتفعيل التوثيق ومعلومات ال md5.
    كما ان البعض مازال يستخدم RIPver1

    طبعا ال RIP بروتوكول connectionless حيث يستخدم UDP والبورت 520
    ولذلك اذا ال authentication غير مفعل , فسيكون من السهل ارسال packets مقبوله الى ال RIP router

    طبعا في السيكيورتي الطريقة الوحيده للتصدي للهاكرز .. هي ان تكون هاكر وتفكر كما يفكر
    وعلشان كده هنشوف ازاي نهاجم RIP router

    طبعا انت في البداية محتاج تحدد اذا كان الهدف هو فعلا راوتر مشغل RIP ... يعني scan بسيط سيفي بالغرض عن طريق ال nmap
    كود:
    nmap -sU -p 520 -v 192.168.0.2
    المفروض يظهرلك:
    كود:
      520/udp  open   route
    بعد كده محتاجين نعرف ال Routing Table لمعرفة باقي المعلومات مثل الفيرجن واذا كان ال authentication مستخدم ام لا ومعرفة خريطة الشبكة

    طبعا احنا قولنا في الاول ان RIP يقوم بعمل broadcast لل routing table الخاص به في الشبكة كل ٣٠ ثانية او في حالة حدوث تغيير في الشبكة يعني انت لو في الشبكة نفسها .. فكل ما عليك انك تشغل ال sniffer الظريف بتاعك وتستنى الرد
    ومش هتحتاج الى Arp Poisening او غيره حتى مع وجود السويتشات في الشبكة ... لان السويتش بيعمل Forward لل broadcasts الى جميع ال interfaces

    طبعا ده في حالة اذا انت موجود في الشبكة نفسها اللي فيها الراوتر الهدف بتاعنا
    اما اذا كنت Remote Attacker فمش هتعرف تعمل sniff لل broadcasts لان ال router بيعمل لها ... ولكن الحل موجود وهو بأستخدام اداة rprobe

    كود:
    rprobe -a -v 192.168.0.2
    والاداة ستقوم بطلب نسخة من ال RIP routing table من الراوتر الهدف
    طبعا هتحتاج تكون مشغل sniffer على نفس كرت الشبكة علشان تشوف الردود من الراوتر

    كود:
    tcpdump -i eth0 host 192.168.0.2 -vv
    وهيظهر لك معلومات ال RIP بها الفيرجن وحالة ال authentication

    نكمل بكرة بئى بسبب ظروف
    سلام عليكم
    There's no place like 127.0.0.1

  • #2
    فيه حد يا جماعة مهتم بالموضوع ده؟
    لسه مدخلناش في الموضوع .. يعني ممكن نغير المسار لاي حاجه تانية تفيد عدد اكبر من المستخدمين
    There's no place like 127.0.0.1

    تعليق


    • #3
      انا مهتم جدا كمل "اذا كنت تريد" لكن انا مهتم جدا
      وان امكنك ادراج بعض المصادر يكون احسن
      BOOOF , I AM GONE
      Still , you gotta wait for my PRESENT :D
      C programming arabic Tutorial|Programming-fr34ks

      تعليق


      • #4
        نكمل بكرة بئى بسبب ظروف
        اظن مش حد رضى يرد غير لما تخلص الموضوع بس للآخر .. لكن الموضوع كتير جميل ومفيد ليا ولناس كتير ..

        منتظر البقية .. شكرا لك ياباشا ^_^
        Programming-Fr34ks[dot]NET
        Ma Weblog
        ابدأ بتعلم Python | Ruby
        كتاب البايثون متوافر الآن
        لا اتواجد بهذا المنتدى ... للإتصال

        تعليق


        • #5
          طيب نكمل

          المفروض اننا خلصنا مرحلة التأكد من هوية ال RIP router
          واتطلعنا على ال routing table زي ما وضحت بالاعلى

          دلوئتي احنا جاهزين لل injection attack..
          احب اوضح ايضا ان الراوترات الي تعمل ب RIP تقوم باعلان routing table بتاعها كل 30 ثانية (القيمة قابلة للتغيير) ثم تقارن الاعلان القادم من الراوترات الاخرى .. اذا فيه جديد فسيتم اضافته الى ال routing table الخاص بالراوتر المستقبل للتأكد ان نفس الجدول في جميع الراوترات في الشبكة واحد

          والهدف بتاعي من الهجوم هو اعادة توجيه redirecting الترافيك ليمر من خلال جهازي اللي مثبت عليه ال sniffers والادوات الاخرى .. او توجيه الترافيك الى جهاز اخر في الشبكة ليك صلاحيات عليه
          ولنفرض مثلا المطلوب هو توجيه الترافيك الصادر الى microsoft.com الى جهازي

          طبعا للوصول للهدف ده محتاج اني اقوم بتعديل في routing table للراوتر الهدف بتاعنا .. ونخليه يحول اي حاجه رايحه ل microsoft.com .. يحولها لجهازي
          وللتعديل في routing table للراوتر الهدف .. سأقوم بجعل جهازي RIP Router علشان يبعت باكيت مقبوله للراوتر الهدف وده هيتم عن طريق Quagga

          ملاحظة: اذا كنت remote attacker .. فلازم يكون بينك وبين الراوتر الهدف اقل من 15 راوتر
          لان ال RIP يعتمد على ال hop count حتى لا يحدث routing loop في الشبكة
          واقصى عدد لل hop count هو 15 .. يعني 16 هيكون Unreachable
          وطبعا كل راوتر تمر عليه الباكيت اسمه hop .. فأذا بينك وبين الراوتر الهدف اكثر من 15 راوتر .. فهتحتاج تطلع واحد منهم بره .. يعني تزحلقه بالمصري .. بس مش هندخل في تفاصيل النقطة دي

          نكمل:

          هنحتاج نفعل ال forward على جهازي اللي هخلي الترافيك يعدي عليه
          كود:
          echo 1 > /proc/sys/net/ipv4/ip_forward
          بعد كده نزل Quagga وثبته

          وده مثال لاعدادت Quagga الخاصة ب RIP

          كود:
               !
               hostname ripd
               enable password 8 Cb/yfFsI.abqs
               log file /var/log/quagga/ripd.log
               service advanced-vty
               service password-encryption
               !
               router rip
                version 2
                redistribute connected
                network 192.168.20.0/24
          اطلع على ال documentation بخصوص اعداد Quagga

          دلوئي بعد ما اعددت RIP Router .. كده هقدر ابعت عن طريقه Advertisments مقبوله للراوترات الاخرى

          احنا كده لحد دلوئتي في السليم ومش بائي الا ال routes اللي هبتعتها
          ولكن فيه حاجه مهمة ناقصة

          احنا هدفنا ان الترافيك اللي خارج من الاجهزة في الشبكة يتحول لجهازي .. طبعا انا هخلي الراوتر الهدف يحول الباكيت دي لجهازي على اساس اني ال hop اللي بعده ... ولكن الترافيك القادم من ميكروسوفت الى الشبكة مش لازم يعدي عليا
          لان الراوتر الهدف هيحوله للاجهزة مباشرة بمجرد وصوله .. لانه في نفس ال network segment

          وهنا هحتاج ال NAT لعمل translation للترافيك بحيث ان ال Incoming و ال outging يمر من خلالي .. ومع ال NAT هترجم الباكيتس الخارجة من الاجهزة واللي عدت عليا واخليها كأنها صادرة من عنواني انا ... علشان الرد يرجعلي انا الاول .. وبعدين جهازي يحولها لاجهزة الشبكة .. ممكن تشبهه ب man in the middle
          يعني بأختصار:

          كود:
          # iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j SNAT --to-source 192.168.0.20
          192.168.0.0/24 عناوين الشبكة
          192.168.0.20 عنوان ال attacker

          دلوئتي ندخل مرحلة ال route injection
          بس احنا مش عاوزين نعمل Broadcasts Advertisments .. علشان منتسببش في routing loops
          ولكن هنبعت ال routing update ل unicast address واللي هو عنوان الراوتر الهدف او الضحية مباشرة

          نقطة مهمة: عملية ال route injection عن طريق static route مش هتنفع
          ولكن Quagga يتيح لك route injection عن طريق static route من غير ما يحطها في ال kernel's routing table

          اعدادت Quagga الخاصة ب RIP:

          كود:
               router rip
                version 2
                default-information originate
                neighbor 192.168.0.2
          neighbor تحدد الراوتر الهدف المراد ارسال الابديت اليه
          default-information originate وهي دي المهمة في الموضوع
          وفايدتها انها تتيح لك عمل RIP route او RIP update بأستخدام امر route

          يعني اذا عناوين شبكة ميكروسوفت 64.150.20.0/16 و 128.10.0.0/24
          فسيكون ال RIP route injection كالتالي:

          كود:
              # ip route add 64.150.20.0/16 dev eth0
               # ip route add 128.10.0.0/24 dev eth0
          ودلوئتي بمجرد اعلانك لل advertisements فيفترض ان يقبلها الراوتر الهدف ويضيفها الى ال routing table الخاص به
          شغل ال sniffer بتاعك واتفرج على الترافيك ..
          ممكن بئى تشغل ال packet analyzer تجمع باسوردات او تنفذ DOS او تطلع على هدف معين او تعيد توجيه الترافيك زي مانت عاوز

          ولكن خلي بالك اذا الادمين وهو فاضي حب يتفرج على ال routing table الخاص بالراوتر الهدف هيشوف حاجه زي كده

          كود:
          #sh ip route
          [output cut]
          .....
          R    64.150.20.0 [120/1] via 192.168.0.20
          R    128.10.0.0  [120/1] via 192.168.0.20
          ....
          [output cut]
          ملاحظة : ممكن بدل ما تستخدم Quagga المعقد .. تستخدم اي اداة تقوم ب packet injection للوصول الى نفس الهدف مثل اداة Nemesis
          شوف اللينك
          http://www.datastronghold.com/securi...g-nemesis.html

          ايضا شوف اللينكات التالية:
          http://www.networksorcery.com/enp/protocol/rip.htm
          http://www2.rad.com/networks/1995/rip/content.htm
          http://www.nada.kth.se/kurser/kth/2D...ctures/rip.pdf

          وشكرا
          التعديل الأخير تم بواسطة Net_Spider; الساعة 22-05-2007, 05:15 PM.
          There's no place like 127.0.0.1

          تعليق


          • #6
            بارك الله فيك .. ^_^
            GCS

            تعليق


            • #7
              شكرا لك ياباشا على الموضوع المميز .. خالص ودى ^_^
              Programming-Fr34ks[dot]NET
              Ma Weblog
              ابدأ بتعلم Python | Ruby
              كتاب البايثون متوافر الآن
              لا اتواجد بهذا المنتدى ... للإتصال

              تعليق


              • #8
                اقول و أعيد وأكرر ... متميز كعادتك اخي نت سبادير
                V.I.P

                (وَاصْبِرْ فَإِنَّ اللَّهَ لَا يُضِيعُ أَجْرَ الْمُحْسِنِينَ)
                هود 115

                Linux is user-friendly, but it happens to be selective about its friends

                "احذر أن تكون مثل البقية تأخذ وﻻتعطي ، فلن يكون هناك مصادر تعليمية على الشبكة، ﻻأكثر الله من أمثالهم"


                مجتمع لينوكس العربي: وقف لله تعالى وصدقة جارية، فلا بارك الله في كل من يحاول الإساءة إليه في الظاهر أو في الخفاء...


                تعليق


                • #9
                  شكراً لك اخي على الدرس المتميز .... صراحة ابداااع تقني ..

                  تعليق


                  • #10
                    العفو يا جماعه
                    أن شاء الله بعد ما اخلص التجارب على BGP اكتب عن

                    attacking BGP (Border Gateway Protocol)

                    وهو بالمناسبة بروتوكول راوتينج ولكن تحت فئة ال exterior routing protocols
                    يستخدم بين ال ISPs او الحكومات وشركات الاتصالات

                    علشان نقفل شركة الاتصالات ان شاء الله
                    There's no place like 127.0.0.1

                    تعليق


                    • #11
                      روعة يا نت سبيدر وسلس ولى عوده معاك يامبدع
                      SЄČURiTY TЄΛM
                      MyBlog

                      تعليق


                      • #12
                        إيه رأيك يا جميل تعملها في كتاب Pdf و ترفعهولنا علشان تقدر نفيد و نستفيد من كلامك
                        إلللي زي العسل؟
                        مـدونـتي الـتقـنـيـة

                        サブリ

                        مــا خِفتُ المـوتَ ولا عُـقبــاهُ ,,, فما أعظمَ شأنهُ غيرَ مولاهُ
                        أهوِن بما في الموتِ من حدثٍ ,,, غـــيــرَ أن بـــهِ الله ألقــاهُ

                        خارج الخدمة


                        تعليق


                        • #13
                          رائع

                          شرح رائع وتفصيل ولا أروع

                          وطرق إحترافية بحتة

                          أكمل ونحن معك متابعين إلى آخر قطرة

                          لاتحرمنا إبداعك ننتظر المزيد ...

                          تعليق

                          يعمل...
                          X