السلام عليكم ورحمه الله أعزائي القراء وأعتذر علي الغيبه الطويله ولكن بأذن الله عودا حميد.

هدف هذه السلسله هو التوضيح لك مدي سهوله أختراق أنظمه الويندوز أذا كان الجهاز الهدف معك علي نفس الشبكه وسنعتمد في شروحاتنا هذه علي بعض التكنيكات المتقدمه والغير متقدمه للتلاعب بـالـProtocols الخاصه بالتواصل بين انظمه الويندوز وبعضها داخل الشبكه والذي من المفترض أنك كـمختبر أختراق محترف علي علم ببعضها لكن أعدك أن في هذه السلسله ستتفاجئ ببعض المعلومات التي لم تكن تعلمها 😀 .

 سنبدأ في هذا المقال بشرح وتطبيق هجوم الـLLMNR poisoning للحصول علي باسورد المستخدم ومن ثم أختراقه ولكن قبل أن نبدأ يجب وضع النقط علي الحروف كما يقال حتي أتأكد بأنك ستكون علي علم بكافه المصطلحات التي ستقال في هذا المقال.

 ماذا تعني المصطلحات LM ,Net-NTLMv1/v2,NTLM ؟

LM

هو نوع من أنواع الهاش وهو أقدم وأول نوع بدأ أستخدامه في أنظمه الويندوز لتخزين الكلمات السريه وتم أيقافه (لكنه مازال موجود) مع صدور Windows Vista بسبب ضعفه وسهوله كسره ولكن كما لاحظت أنت الأن ستجده علي أصدارات ويندوز XP وهذه نقطه سنعود لها لكن ليس الأن.

NTHash أو NTLM

هو نوع الهاش الذي يستخدم علي أصدارات الويندوز الحاليه لتخزين الكلمات السريه وتستطيع أن تستخرجه من ملف الـSAM أو بأستخدام أداه Mimikatz ويطلق عليه في الغالب NTLM فقط وهو مايسبب أختلاط المسميات دوما بينه وبين بروتوكول الـNTLM ولذلك يفضل تسميته بالـNTHash وهذا هو ما يبدو عليه :

وللعلم الخوارزمية المستخدم لتكوينه هو

Net-NTLMv1/v2 أو NTLMv1/v2

هو البروتوكول المسئول بنفسه 😀 وهو يعمل عن طريق أنه يأخذ هاش الـNTHash ويستخدمه في أنشاء أتصال عن طريق خوارزمية challenge/response بين الطرفين والذي هو يكون كالأتي (بفرض أن الطرف الأول يود تسجيل الدخول للطرف التاني) :

الطرف الثاني يرسل سؤال أو تحدي للطرف الأول عباره عن رساله عشوائيه والمفترض أن يشفره بأستخدام الـNTHash الخاص به فيقوم الطرف الأول بتشفير التحدي وأرساله مع الـNTHash الخاص به فيكون الرد علي الشكل الأتي :

الأن يقوم السيرفر أو الطرف الثاني بفك التشفير بأستخدام هاش كلمه السر او الـNTHash الخاص بالطرف الأول والذي أرسله له في الرد واذا كان الناتج بعد فك التشفير هو التحدي الذي ارسله له في البدايه فا يقوم بالسماح له بالأتصال وهذه صوره للتوضيح :

الفرق بين NTLMv1 و NTLMv2

بروتوكول NTLMv2 هو تحديث NTLMv1 وهو الذي سبق شرحه ويستخدم بشكل أفتراضي في أصدارات الويندوز بدايه من أصدار 2000 وهو يعمل بنفس مبدأ وطريقه NTLMv1 كما شرحنا لكن الفرق في أن التشفير أقوي والرد مختلف فشكل الرد يكون :

والفرق بين طريقه التشفير في كل واحد من باب العلم بالشئ هو

NTLMv1

NTLMv2

والأن مقارنه بين هاشات الـNTLM أو الـNTHash والـNet-NTLM من السابق شرحه ولكن هذه المره من الناحيه الأمنيه التي تهمنا كمختبرين أختراق

  • الـNTLM Hash تستطيع أستخدامها في هجمات Pass-the-hash ولكن الـNet-NTLM hashes لا تستطيع أستخدامها فيها
  • الأثنين تستطيع أن تنفذ عليهم هجمات الـBruteForcing و الـDictionary attacks لتأتي بكلمه السر ولكن…
  • بدايه من ويندوز 8.1 لا تستطيع أن تأتي بكلمه السر من هاش الـNTLM بأستخدام أداه Mimikatz ولكن تستطيع بنفس الأداه من خلال ذاكره الجهاز أن تأتي بالهاش ثم تنفذ هجوم Pass-the-hash
  • مع أنك لا تستطيع أن تستخدم الـNet-NTLM hash في هجوم Pass-the-hash ولكنك تستطيع أن تستخدمه في هجوم الـsmb relay وتخترق الأجهزه الأخري الموجوده داخل الشبكه في دقائق وهو الذي لا تستطيع أن تفعله بأستخدام الـNTHash وسوف نتناول هذا الهجوم وشرحه والتطبيق بالتفصيل في المقال القادم 😀

(ملحوظه : كل الهاشات التي ذكرت بالأعلي هي من صفحه الأمثله علي موقع hashcat واذا أردت فهم طريقه عمل الـNTLM بالتفصيل أكثر فصفحه wikipedia قامت بشرح أكثر من رائع لها )

والأن ماهو برتوكول الـLLMNR ؟

هو أختصار لـLink-Local Multicast Name Resolution وهو عمله يتلخص في عده أشياء أهمها عمل name resolution للأجهزه داخل الشبكه عندما لا يعلم الـDNS Server الأجابه وشكل الـPacket مبني علي شكل باكت الـDNS Query ،أعلم أعلم أنك لم تفهم شئ فلنبسط الأمور قليلا 😀

مثال عندما تكتب عنوان هوست محدد داخل الشبكه يقوم المتصفح بسؤال الـDNS server الموجود في أعدادات الجهاز عن الـIP الخاص به فعندما لا يعلم الأجابه فهنا يأتي دور الـLLMNR Protocol فيقوم بعمل Multicast أو بث لكل الأجهزه التي علي الشبكه يسألهم فيها هل يعرف احد هذا الجهاز فيجيب عليه أحد الأجهزه علي الشبكه ويقول هو فلان أو يجيب الهوست نفسه أذا كان علي نفس الشبكه ويقول هذا أنا!

حتي الأن لا يوجد مشكله صحيح ؟ لكن من الناحيه الأمنيه ؟ *أيموجي ضحكه شريره*

أستغلال الـLLMNR لصالحنا

وليكن السيناريو كالتالي لكي يتضح الأمر أن لم تتخيله بعد :

  1. الهدف يحاول الدخول علي الطابعه التي بداخل الشبكه والتي الهوست نيم الخاص بها لنفرض printer اذا المفترض انه سيقوم بكتابه //printer
  2. الهدف يقع في خطأ أملائي وهي يكتب فيقول له الـDNS Server أنه لا يعرف هذا الهوست
  3. يقوم جهاز الهدف الأن بعمل Multicast يسأل الأجهزه التي بالشبكه هل يعرف أحد هذا الهوست
  4. يقوم المهاجم بالأجابه عليه فيقول نعم هذا أنا ! والأن اذا تريد الأتصال بي قم بتشفير هذا التحدي بهاش كلمه السر الخاصه بيك (كما شرحنا)
  5. يقوم جهاز الهدف بالرد بالـNet-NTLM hash (والذي هو الرد كما شرحنا من قبل)
  6. يقوم المهاجم بحفظ الهاش ثم يقطع الأتصال 😀

هذا هو مايسمي بهجوم الـLLMNR Poisoning والأن كيف نقوم به ؟

هناك العديد من الأدوات التي تمكنا من تنفيذه وحتي أنه يوجد موديولز خاصه به علي فريم ورك Metasploit  (auxiliary/spoof/llmnr/llmnr_response) ولكننا سنستخدم أداه Responder بسبب قوتها وسهوله أستخدامها ولأننا بشكل أو بأخر سنحتاجها في المقالات القادمه

تستطيع أن تحملها من هنا وتثبتها بالطريقه التقليديه أن لم تكن لديك من الأساس والأن نقوم بتعديل ملف  Responder.conf لنوقف الـHTTP Server بضبط المتغير لـOff بدل On حتي نضمن أنه لن يحصل تداخل ونحصل علي الهاش بسبب شئ أخر 😉 (سنوضحه بعد قليل) وستجد هذا الملف بداخل المسار

فيكون شكل بدايه الملف كالتالي :

الأن سنقوم بتشغيل الأداه عن طريق الأمر :

وتستبدل wlan0 بالـinterface التي أنت والهدف عليها والأن لنلعب 😀

الهدف هذه المره هو ويندوز 7

كما تري هذا ويندوز 7 الهدف والأداه تعمل بالخلفيه.

الأن كل المطلوب هو الأنتظار حتي يحاول الجهاز الهدف الدخول علي جهاز أخر داخل الشبكه غير موجود أو أي شئ مثل هذا

ولمحاكاه هذا سأكتب أي أسم جهاز عشوائي للدخول عليه وتستطيع عمل هذا بكتابه \\ ومن ثم أسم عشوائي سواء داخل الـexplorer الخاص بالملفات أو حتي داخل متصفح الـInternet Explorer وأنا عن نفسي سأكتبه داخل Run ومن ثم ستجد أداه Responder تخبرك بأن الجهاز الهدف يعمل Multicast وتأتي بالهاش كما شرحنا فيكون الأمر بالشكل الأتي

كما تري في جهاز الهدف ظهر خطأ أما نحن لدينا الأن كل مانريده 😀

أداه responder تقوم بعمل ملف لكل جهاز تلتقط منه شئ وتحفظ فيه المعلومات المهمه وهي الملفات ستجدها داخل المسار

فنقوم بعرض الملف فنجد الهاشات كالأتي

الأن سنقوم بعمل crack للهاش لنأتي بكلمه السر وسنستخدم أداه John The Ripper لهذا كالأتي

كما نري كلمه السر هي 1234567890 واليوزر اذا لم تلاحظ من قبل هو win7lab والأن نستطيع أن نستخدم موديول psexec من فريم ورك metasploit لأختراق الجهاز ومع أنه أمر سهل بعد الأتيان بكلمه السر ولكن سأوضحه هذه المره لمن لا يعلمون.

نفتح الميتاسبوليت ونكتب الأوامر المعتاده ولكن بما أن صوره أفضل من ألف كلمه فهذا ما ستفعله

لا ، لن أقول “تم أختراق الهدف بنجاح” 😀

الأن كما تري الطريقه سهله ولا تحتاج أن تتواصل مع المستخدم بأي طريقه لكن المشكله الوحيده أنك ستضطر أن تنتظر المستخدم أن يخطأ في كتابه أي Host Name هو يدخل عليه والذي ليس يحدث كثيرا في الشبكات العاديه والمستخدمين العاديين لكن بداخل شبكه شركه أو داخل سايبر/مقهي/كافيه أو أي مكان المستخدمين يشاركون فيه الملفات بينهم وبين بعض ستري هذا يحدث.

ولكن أن كنت في شبكه عاديه في الغالب هذه الطريقه لن تكون ذات جدوي في بهذا الشكل ،أذا هي تحتاج بعض التطوير 😀

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

كما تري الفكره كلها في الـAuthenticate لذلك نحن نحتاج أن يجعل المستخدم يتصل بنا تلقائيا فعلي سبيل المثال تستطيع أن تنشئ صفحه html وتضع بها تاج img الخاص بالصور وتضع السورس هو صوره من علي جهازك سواء كانت موجوده أو لا ،أي جهاز سيفتح هذه الصفحه سيتصل بجهازك(في أكثر الحالات) .

تطبيق عملي سريع 😀

كما تري الأمر أصبح أسهل ولكن هنا تحولت الي مشكله أنك تحتاج أن تجعل المستخدم يفتح الصفحه فأصبحت تحتاج الأن الي تدخل من المستخدم لكن أذا كنت تري الأمر هكذا فأنت لم تفهم الفكره بعد :3

أستخدم سكربت LANs.py أو أداه Bettercap أو أي اداه تتيح لك بتنفيذ هجوم MITM وحقن أكواد HTML داخل الـTraffic الخاصه بالهدف فنقوم فحقن تاج الـimg فنحصل علي نفس النتيجه بدون أي تدخل من المستخدم مجرد أنه يتصفح فقط ! 😀

الأن كل هذا كما تري داخل الشبكه فهل توجد طريقه أحصل بها علي الـNTLM hashes من خارج الشبكه ؟ 😀

نعم هناك والعديد من الشركات والخبراء الأمنين حذروا من الهجمات المماثله لكن هذا سيكون موضوع مقاله أخري في هذه السلسله سنتكلم فيها عن العديد من الخدع التي نستطيع عمل هذا بها ولكن حتي وقتها هل تعلم أن كتابه رساله email بالـ html ووضع فيها تاج img السابق ذكره فعند فتح هذه الرساله من تطبيق الـOutlook ان الجهاز سيتصل بك كما حصل منذ قليل وتستلم أنت الهاش 😀 ؟ ولكن كتابه رساله html ليس سهل الأن فقليل من الخدمات أصبح يسمح لك بهذا ولكن هذا ليس موضوعنا الأن لنترك الحديث فيه وشرحه للمقاله الخاصه به 😀

والأن…

كنت أريد أن أشرح في هذا المقال أيضا كيف أن مجرد فتحك لمتصفح Internet Explorer يتسبب في أختراقك بدون فعل أو فتح أي صفحه لكن بما أن المقال أصبح طويلا كما ومعلوماتيا فنتركه للمقال القادم حيث أنه لا أستطيع أن أمر علي الأمر سريعا.

أتمني أن تكونوا أستفدتم من المقال وأراكم في المقالات القادمه وأعدكم أن ماقيل في هذه المقاله لا يقارن بما سيقال في باقي السلسله فهذه كانت مجرد مقدمه لازال هناك العديد من البرتوكولات وأستغلالها أجمل بكثير 😀