أدوات وبرامجمواضيع عامةمواضيع ومقالات

مقال : بدايتك لأستخدام Nmap Scripting Engine

تم أرشفة هذا المحتوى


url

الكل يعرف اداة nmap وقوتها في فحص الشبكات،  وحاليا هي اقوى اداة في هذا المجال  وتحتوي على العديد من المميزات القوية و من احد مميزات هذه الأداة والقوية أيضا  والتي  لا يستخدمها الكثير وهي NSE اختصار Nmap Scripting Engine هذة الميزة فتحت المجال  للأداة  للتوسع والخروج خارج نطاق مهام الفحص فقط  بحيث يمكن كتابة سكربتات  تقوم بمهام محدد على الشبكة وتستخدم من داخل اداة nmap  وادخال مرونة البرمجة والمهام الخرافية التي يمكن برمجتها وتطبيقها  اثناء فحص الاداة ،  المجال مفتوح جدا لبرمجة اي مهام شبكية  لتنفيذها من داخل الاداة ومع عملية الفحص مثل :

  • Network discovery

يمكن استخدام Nmap Scripting Engine لبرمجة سكربتات تساعد اثناء عملية اكتشاف الشبكة وايضا الاداة تحتوي على العديد من السكربتات الموجودة بشكل افتراضي ويمكن ايضا المشاركة بالاكواد والسكربتات المبرمجة مع مجتمع مطوري اداة nmap واضافة سكربتات الى الاداة ، على سبيل المثال يمكن الاستفادة من عملية اكتشاف الشبكة وبرمجة سكربتات تقوم بعمل استعلام whois اثناء الفحص ودمجها مع التقرير الناتج او يمكن الاستعلام عن بعض السجلات الخاصة بخوادم DNS اثناء عملية الفحص ايضا يمكن تنفيذ استعلامات SNMP مخصصة لبعض العناوين على الشبكة  او التنصت على احد البورتات والكثير من الامور التي يمكن تنفيذها اثناء عملية اكتشاف الشبكه .
  • version detection

الاداة بشكل افتراضي تستطيع التعرف على المئات من الخدمات الموجودة على الشبكة وتحديد الخدمة بالضبط مع الاصدار المستخدم للبرنامج مثل OpenSSL , vsftp ,openSSH , Apache والعديد من البرمجيات المستخدمة في عالم الشبكات ولكن اذا ماكان هناك نوع محدد تريد البحث عنه واكتشافة في الشبكة وهذة الخدمة او البرمجية ليست منتشرة لدرجة اضافتها الى معلومات الاداة في هذة الحاله سوف نقوم بكتابة سكربت خاصة بنا ونضيف الخدمات المراد اضافتها واكتشافها اثناء عملية الفحص ، ايضا من الممكن ان بعض البرامج عندما تترقى الى اصدار احدث تتغير بعض الامور الجوهرية في الاداة مما يجعلها لا تكشف من الاداة كذلك هنا تكمن مهمة NSE في اضافة الكود المطلوب وانت قم بقياس الامر على بقية الحالات .
  • Vulnerability detection

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

  • Backdoor detection

نفس فكرة النقطة السابقة ولكن الاختلاف هو ليس الكشف عن الثغرات وانما الكشف عن الباكدور ، يمكن للفيروسات او الديدان او اي ملفات خبيثه انتشرت على شبكة الانترنت ان تترك باكدور لتتمكن من التحكم بالشبكات والاجهزة ، ويمكن استخدام NSE في البحث عن اي باكدور في شبكة الانترنت .

  • Vulnerability exploitation

يمكن كتابة استغلالات للثغرات وتنفيذها من الاداة وتطبيق الاستغلال على مجموعة كبيرة من الاجهزة دفعة واحده اثناء عملية الفحص ويمكن الاستفادة من النقطة السابقة Vulnerability detection وهي البحث في مجموعة كبيرة من الشبكات اذا ماكانت مصابة بالثغره ثم استغلالها في نفس الوقت .

كانت هذة النقاط الرئيسة المتوقعة والتي يمكن استخدامها مع اداة nmap ولكن المجال اوسع ومفتوح للابتكار والأبداع  ، يمكن برمجة السكربتات بواسطة لغة برمجة Lua programming language هناك كتاب وتم توثيق اللغه فيه اسمة Programming in Lua, Second Edition  ايضا Lua 5.1 Reference Manual .

تستخدم NSE في الاداة عن طريق الخيار sC- او script– والذي من خلالة نختار السكربتات الموجودة افتراضيا في الاداة ، هناك مجموعة من السكربتات بمهمام مختلفه يمكن استخدامها ايضا يمكن ان تقوم باضافة سكربتك الخاص ، ايضا يمكنك ايتعراض المساعدة عن طريق الخيار script-help-- 

جميع النصوص البرمجية التي تنفيذ في اداة nmap على هيئة سكربتات لا تعمل كـ sandbox وقد تتسبب الاكواد الخاطئة في تلف نظامك او اختراقة ولا تستخدم اي سكربتات لأي اشخاص غير موثوق بهم

تم وضع تصنيف من قبل مطوري أداة nmap  حسب موقعهم الرسمي لتصنيف السكربتات وتحت اي فئة تنتمى كالتالي

nmap scripting engine tutorial

كما هو ملاحظ في الصورة اعلى الصنيفات الرئيسة للسكربتات الافتراضية للاداة ، اذا كان هناك سكربت ليس من السكربتات الافتراضية فيجب عليك تحديده واختيار مسارة عن طريق الخيار script–

بعض الامثلة لأستخدام NSE

مثال لأستخدام Authentication

script-auth

كما تلاحظون من المثال السابق عندما قمنا باختيار auth نجح الفحص في كشف عمليات تسجيل الدخول وأظهار حساب المستخدم .

default-script

هذا المثال عندما تم اختيار Default Scripts وهي السكربتات التي تندرج تحت التصنيف الافتراضي اظهرت معلومات عن النظام بشكل رائع ودقيق .

script-external

تصنيف سكربتات external يظهر لك معلومات بالاستعانه بمصادر خارجية ايضا معلومات الدومين واي معلومات لها علاقة بمصدر خارجي .

discovery1

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

script-vuln

كم هوا ظاهر في الصورة تم الكشف عن ثغره موجودة في الهدف مع ان اداة nmap ليست سواء اداة فحص ولكن مع NSE او السكربتات في NSE هي من قامت بكشف الثغره اصبح الامر ممتع بالفعل .

هذه كانت بعض الامثلة التي يمكن استخدامها مع الامر sC- والذي يتم اختيار بعض السكربتات الموجوده بشكل افتراضي في الاداة اما اذا اردت انا استخدام سكربت خاص بي قمت ببرمجتة او قمت بتنزيلة من الانترنت يمكن استخدامه مع الامر script–  سوف نقوم الان باستعراض مثال يوضح الامر :

الكشف عن معلومات SQL Servers

screenshot

كما هو ظاهر من الصورة قمنا بتفيذ امر الفحص لبورت 1433 وهو البورت المستخدم عادة في SQL Servers وقمنا باستخدام الخيار script– لتحديد سكربت ms-sql-info ليظهر لنا معلومات مهمة عن السيرفر

SQL Servers

بعد ان قمنا بكشف معلومات SQL Servers قمنا بالبحث والتحقق من احتمالية تنفيذ هجمات التخمين او اذا ماكان الباسورد ضعيف ويمكن تخطي عملية Authentication ولكن بالفعل لم نستطيع اكتشاف كلمة المرور ولم تكن كلمة المرور الافتراضية لهذا سوف نقوم بتنفيذ عملية التخمين على السيرفر عن طريق الامر

nmap -p1433 –script ms-sql-brute –script-args userdb=/var/usernames.txt,passdb=/var/passwords.txt

يمكن ايضا المحاولة والكشف لمعرفة اذا ماكان الباسورد null اي قيمة فارغه

null

ايضا يمكن الاستعلام عن الجداول الموجودة في القاعدة واظهارها

qurey

من الرائع ايضا ان نقوم بتنفيذ اوامر النظام على السيرفر من داخل اداة nmap

nmap cmd

هذه مجرد امثلة بسيطة جدا بالمقارنة بقوة NSE  ويجب عليك التركيز عليها والبحث عن افضل السكربتات في عالم اداة nmap واستخدامها سوف تسهل عليك الكثير من الامور

الان هل اصبحت اداة nmap اكثر قوة بالنسبة لك ، وبواسطة nmap script engine يمكن تنفيذ امور خرافية اثناء عملية الفحص .

علي الوشلي

علي الوشلي من اليمن, مدير مجتمع iSecur1ty , مهتم بأمن المعلومات واختبار الاختراق . حسابي على تويتر : ali_alwashali@

مقالات ذات صلة

‫13 تعليقات

  1. هلا هلا

    شكرا على التوضيح ..

    بس اعتقد انك اخطات في NES اعتقد ان اسمهآ NSE

    (N)map (S)cripting (E)ngine

    موفقين باذن الله

  2. اشكرك اخي الكريم بصراحة شرح رائع ومتقدم

    لكن لدي سؤال لم اجد اجابته لدى الكثير

    هل هو صعب ام انهم لايعلمون مع انهم مختبرو اختراق

    ###################################################################
    السؤال : عندما اقوم بفحص اي موقع عن اداة Nmap هل يمكن للأدمن او الروت ان يكشف ذلك بأن تمت عملية سكان ع البورتات
    علماً بأنني استخدم برنامج التخفي TOR لكن السؤال
    —————————————————————————————————————————————
    لو افترضنا ان صاحب السيرفر يستطيع ان يعرف الآي بي الخاص بي ويستطيع ان يعرف انه تمت عملية سكان ع البورتات

    #هل سيجد في Logs السيرفر اي بي الرواتر الحقيقي التابع لي من مزود الخدمة ام سيجد اي بي شبكة TOR ؟

    وذلك لانني اعتقد انه سيجد الاي بي الحقيقي لي لأن الرواتر يرسل ICMP باكت

    فماهو الحل للتخفي

    وشكرا للجميع

    1. اولا شكرا لقراءة المقال سؤالك جدا مهم

      في هذة الحاله يجب علينا ان نستخدم بروكسي سيرفر لنقوم بعملية
      Redirect connections through proxy servers
      للترايفك كله

      وهناك العديد من الحلول والكثير من البرمجيات التي تمكنك من انشاء سيرفر وتستخدمة كبروكسي لعكس الترايفك بالكامل

      على سبيل المثال يمكنك استخدام proxychains .
      اذا قمت بفتح المسار التالي الخاص proxychains
      وتتحقق من الملف proxychains.conf الموجود في etc

      سوف تلاحظ انه معد مسبقا لشبكة تور
      يمكننا اضافة بروكسي بانفسنا يدويا هناك العديد Free Public Proxy Servers

      ولكن انتبه ايضا مازال الايبي لديك مكشوف اثناء عملية تحويل الدومين الى ايبي بواسطة dns
      لذلك استخدم تور لعملية التحويل بالامر التالي :

      tor-resolve google.com
      وقم بعدها بادخال الايبي للفحص وليس اسم الدومين

      ===============================

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

      1. اخي ىلكريم هلا انشات لنا درس فسديو او مقال تتطرق للتخفي بشكل دقيق كيف جميع مختبروا الاختراق يقومون بالتخفي

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى