






السمعة:
السلام عليكم ورحمة الله وبركاته
كيف الحال والعيال, عساكم طيبين أيها الهكرجية الكرام؟
كنت قد تحدثت في موضوع سابق عن استهداف قواعد MySQL كـخدمة داخل الشبكة أو Service واستطردت فيها وفي تفاصيلها, أما اليوم سأكمل هذا الموضوع وزيادة عليه قواعد MsSQL حتى نكون قد لخصنا التكنيك المستخدم دائمًا لاستهداف هذه الخدمات
قد يقول قائل: لماذا لم تجعلها في موضوع واحد ؟؟
والله يا صاحبي كان المفترض أن يكون موضوع واحد لكن حصلت ظروف منعتني من هذا الأمر، لذلك قسمتها على موضوعين.
طيب، ما هي الأمور المطلوب معرفتها لقراءة هذا الشرح ؟؟
1 - معرفة أساسية بالشبكات وبروتوكولاتها
2 - معرفة أساسية بأداة nmap الشهيرة
3 - معرفة أساسية بمشروع الــmetasploit
4 - معرفة بسيطة بلغة SQL
5 - قراءة الشرح السابق عن MYSQL
لقراءة الشرح اضغط هنا
والآن لنتوكل على الله ونبدأ الشرح ..
دائمًا أخي العزيز ستجد الكثير من الاسكربتات لاستهداف أي خدمة ولكن لا أحد يوضح التكنيك الصحيح، وهنا في هذا الشرح سنعطيك التكنيك الصحيح الخاص باستهداف قواعد MySQL و MsSQL
اعلم أخي الحبيب أن استهداف هذه القواعد دائمًا يعتمد في المقام الأول على مرحلة جمع المعلومات ومرحلة التعداد بشكل أساسي؛ والسبب هو أنك ستحتاج إلى الوصول إلى أحد اليوزرات، بمعنى أنك إذا لم يكن لديك وصول لأحد اليوزرات سيفشل الاستهداف بنسبة 80% لأنه كما نلاحظ أن الاستهداف يعتمد على إرسال SQL Queries وطبعا لا تستطيع أن تفعل هذا الأمر دون شروط معينة متوفرة في الهدف الذي أمامك.
فأولًا يجب أن تمتلك وصول لأحد اليوزرات، ثانيًا يجب أن يدعم الهدف تطبيق Queries وكنا قد فصلنا في هذا الأمر وتحدثنا عن كيفية جمع هذا النوع من المعلومات.
أما في هذا الدرس سأعطيك مساحة أكبر من الأدوات التي يمكنك استخدامها لاستهداف MySQL وهذه الأدوات تتلخص في مشروع metasploit بالإضافة لأمر آخر سأشرحه في نهاية الاستهداف.
بعد أن فحصنا الهدف ووجدنا الخدمة فعّالة وطبقنا كل ما قلناه في الشرح الفائت سنبدأ باستخدام مشروع metasploit, إن كنت قد فشلت في إيجاد Empty Passwords كما فعلنا في الدرس الماضي، إذًا لا عليك، لنجرب شيئا آخر...
سنقوم بتطبيق هجوم القوة الغاشمة BruteForce, لنفتح مشروع الـmetasploit ونبحث في ال Modules
كما نرى سنستخدم هذا الـUtility لتنفيذ الهجوم:
كيف الحال والعيال, عساكم طيبين أيها الهكرجية الكرام؟
كنت قد تحدثت في موضوع سابق عن استهداف قواعد MySQL كـخدمة داخل الشبكة أو Service واستطردت فيها وفي تفاصيلها, أما اليوم سأكمل هذا الموضوع وزيادة عليه قواعد MsSQL حتى نكون قد لخصنا التكنيك المستخدم دائمًا لاستهداف هذه الخدمات
قد يقول قائل: لماذا لم تجعلها في موضوع واحد ؟؟
والله يا صاحبي كان المفترض أن يكون موضوع واحد لكن حصلت ظروف منعتني من هذا الأمر، لذلك قسمتها على موضوعين.
طيب، ما هي الأمور المطلوب معرفتها لقراءة هذا الشرح ؟؟
1 - معرفة أساسية بالشبكات وبروتوكولاتها
2 - معرفة أساسية بأداة nmap الشهيرة
3 - معرفة أساسية بمشروع الــmetasploit
4 - معرفة بسيطة بلغة SQL
5 - قراءة الشرح السابق عن MYSQL
لقراءة الشرح اضغط هنا
والآن لنتوكل على الله ونبدأ الشرح ..
دائمًا أخي العزيز ستجد الكثير من الاسكربتات لاستهداف أي خدمة ولكن لا أحد يوضح التكنيك الصحيح، وهنا في هذا الشرح سنعطيك التكنيك الصحيح الخاص باستهداف قواعد MySQL و MsSQL
اعلم أخي الحبيب أن استهداف هذه القواعد دائمًا يعتمد في المقام الأول على مرحلة جمع المعلومات ومرحلة التعداد بشكل أساسي؛ والسبب هو أنك ستحتاج إلى الوصول إلى أحد اليوزرات، بمعنى أنك إذا لم يكن لديك وصول لأحد اليوزرات سيفشل الاستهداف بنسبة 80% لأنه كما نلاحظ أن الاستهداف يعتمد على إرسال SQL Queries وطبعا لا تستطيع أن تفعل هذا الأمر دون شروط معينة متوفرة في الهدف الذي أمامك.
فأولًا يجب أن تمتلك وصول لأحد اليوزرات، ثانيًا يجب أن يدعم الهدف تطبيق Queries وكنا قد فصلنا في هذا الأمر وتحدثنا عن كيفية جمع هذا النوع من المعلومات.
أما في هذا الدرس سأعطيك مساحة أكبر من الأدوات التي يمكنك استخدامها لاستهداف MySQL وهذه الأدوات تتلخص في مشروع metasploit بالإضافة لأمر آخر سأشرحه في نهاية الاستهداف.
بعد أن فحصنا الهدف ووجدنا الخدمة فعّالة وطبقنا كل ما قلناه في الشرح الفائت سنبدأ باستخدام مشروع metasploit, إن كنت قد فشلت في إيجاد Empty Passwords كما فعلنا في الدرس الماضي، إذًا لا عليك، لنجرب شيئا آخر...
سنقوم بتطبيق هجوم القوة الغاشمة BruteForce, لنفتح مشروع الـmetasploit ونبحث في ال Modules
كود:
search mysql
كما نرى سنستخدم هذا الـUtility لتنفيذ الهجوم:
كود:
use auxiliary/scanner/mysql/mysql_login
set RHOSTS 192.183.156.3
set PASS_FILE /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt
set USERNAME root
run
كما ترون نجح الهجوم بفضل الله , سنجرب نفس الهجوم ولكن من أداة hydra:
كود:
hydra -l root -P /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt 192.183.156.3 mysql
كما ترون ظهر لنا نفس النتيجة
والآن بعد أن امتلكنا وصولًا لأحد اليوزرات، يمكنك أن تشرع بمزيد من التعداد , بإمكانك أن تستخدم أداة mysql التي شرحناها في الدرس الماضي ولكن في حال تم رفض الاتصال ستحتاج أن تستخدم الـmodules المتواجدة في metasploit.
الآن سأترك لك بعض الـmodules المهمة التي أنصحك بتجربتها والتي لن أشرحها لسهولة التطبيق عليها، كل ما ستحتاجه هو يوزر وباسسورد لتشغيل الـmodule وفي أقصى الأحوال ستحتاج مسار ملف لعمل تخمين
كود:
auxiliary/scanner/mysql/mysql_file_enum
auxiliary/scanner/mysql/mysql_hashdump
auxiliary/scanner/mysql/mysql_schemadump
auxiliary/scanner/mysql/mysql_version
auxiliary/scanner/mysql/mysql_writable_dirs
طيب لنفترض أنه في أسوأ الأحوال لم تصل لشيء أبدًا، أي لم تتمكن من الوصول لأي يوزر ولم تتمكن من التخمين، أي كل شيء مقفل, ماذا نفعل ؟؟
عليك باستهداف رقم الإصدار الخاص بالخدمة والبحث عن ثغرات الاختراق المباشر وهذا لن نغطيه في هذا الشرح؛ نظرًا لأن ثغرات الـmysql كثيرة جدًّا ويستحيل تغطيتها في شرح ما، لكن بإمكانك أن تجربها على metasploitable
ربما نتطرق لهذا الأمر في موضوعات قادمة بإذن الله
طيب لنفترض أنك لم تجد ثغرة في رقم الإصدار ماذا تفعل ؟؟
والله يا صاحبي يعني نموت نفسنا يعني ؟؟ خلاص بقى شوف أي حاجة غيرها محبكتش يعني تستهدف الخدمة دي

هذا كان خلاصة استهداف mysql كاختبار اختراق شبكات، طبعًا يوجد أدوات أخرى ولكن لا أعرف حتى الآن تكنيكات أخرى لاختراق هذه الخدمة إلا عن طريق الويب وهذا أمر آخر بعيدًا تمامًا عن اختبار اختراق الشبكات.
استهداف MsSQL
هل تذكر أخي العزيز ما فعلناه مع mysql في الشرح السابق وفي الكلام السابق في هذا الدرس ؟؟
هل تذكر التكنيك الذي تحدثنا عنه ؟؟
copy past مفيش أي تغيير

نعم والله لا يوجد أي تغيير إلا في الاسكربتات وبعض التفاصيل الصغيرة جدًا، سنتحدث عنها في هذا الدرس فركز معي
لنبدأ بفحص الهدف:
كود:
nmap 10.2.29.129 -vv
كما نرى خدمة mssql موجودة, لنبدأ باستخدام اسكربتات الـnmap
كود:
nmap -p 1433 --script ms-sql-info 10.2.29.129 -vv
كما نرى أهم المعلومات التي حصلنا عليها هي أن الخدمة تعمل على سيرفر Microsoft SQL Server 2019, والآن لنستمر في عملية التعداد(Enumeration) ونحاول أن نصل لمعلومات أكثر:
كود:
nmap -p 1433 --script ms-sql-ntlm-info 10.2.29.129 -vv
ما الذي حدث؟ وكيف تحصلنا على هذه المعلومات؟
كما نرى ظهرت لنا معلومات مهمة مثل إصدار النظام واسم الكمبيوتر واسم الـDN وغيرها من المعلومات المهمة
ما حدث هو أن هذا السكربت يقوم بإرسال طلب مصادقة (authentication request) باستخدام اسم domain غير صحيح ومعلومات تسجيل دخول فارغة مما يتسبب برد الخدمة علينا محملة ببعض المعلومات مثل Os Version, DNS و NetBIOS
سأترك مصدر في آخر الدرس لمزيد من المعلومات.
أحيانًا قد لا يظهر معك أي معلومات، حينها ممكن تستخدم script args كالتالي
كود:
--script-args mssql.instance-port=1433
الآن بعد أن حصلنا على بعض المعلومات الأساسية، سنفعل كما فعلنا مع MySQL، سنبدأ بالبحث عن empty Passwords
كود:
nmap -p 1433 --script ms-sql-empty-password 10.2.29.129 -vv
كما نرى وجدنا اسم مستخدم، بإمكاننا أن نستخدمه لتسجيل الدخول، ولكن لنحاول الحصول على مزيد من اليوزرات بما أننا تحدثنا عن اليوزرات
لنحاول عمل bruteforce على اليوزرات:
كود:
nmap -p 1433 --script ms-sql-brute --script-args "userdb=/root/Desktop/wordlist/common_users.txt,passdb=/root/Desktop/wordlist/100-common-passwords.txt" 10.2.29.129 -vv
كما نرى ظهر لنا المزيد من اليوزرات ومن ضمنهم حساب Admin
والآن لنسجل كل هذه المعلومات ونمضي في التعداد بعد أن حصلنا على العديد من اليوزرات، لنجرب عمل dump للهاشات
كود:
nmap -p 1433 --script ms-sql-dump-hashes --script-args "mssql.username=admin,mssql.password=anamaria" 10.2.29.129 -vv
لا نحتاج أي تعليق على النتائج
الآن إذا قمنا باستعراض جميع اسكربتات nmap الخاصة بــmssql , سنجد أحد الاسكربتات المثيرة للاهتمام وهو ms-sql-xp-cmdshell.nse
هذا الاسكربت يستغل خاصية مفعلة في قاعدة البيانات , تمكن الخدمة من عمل spawn لـ Windows Command Shell
وبالتالي ستتمكن من تطبيق أي أوامر cmd ، ولكن في أغلب الأحيان هذه الخاصية لا تكون مفعلة لأن الخدمة بعد تفعيلها تأتي هذه الخاصية مغلقة بشكل افتراضي ولكن لا ضرر من التجربة
كود:
nmap -p 1433 --script ms-sql-xp-cmdshell --script-args mssql.username=admin,mssql.password=anamaria,ms-sql-xp-cmdshell.cmd="ipconfig" 10.2.29.129 -vv
كما نرى تم تطبيق الأمر بلا أي مشاكل
مُلاحظة:
من أهم أسرار استهداف الخدمات أن تقوم بتفحص الأدوات الخاصة بك وتفحص ما تمتلك من إمكانيات, لذلك أنصحك دائما أن تلقي نظرة على الاسكربتات الخاصة بالـnmap وهذا ما أريدك أن تفعله الان، وهو أن تذهب لمسار هذه الاسكربتات وتلقي نظرة على الاسكربتات الخاصة بهدفك
بإمكانك أن تجرب كذلك تطبيق queries على الخدمة كما فعلنا مع mysql ولكن سأترك لك مساحة البحث عن الاسكربت فهو موجود في لستة الاسكربتات
استخدمنا الـnmap بفعالية بفضل الله ولكن ماذا عن مشروع الـ metasploit ؟
مشروع الميتا لن يختلف كثيرًا عن الـnmap سوا سهولة الاستخدام، ولكن سيقوم بنفس العمل تقريبًا.
سأعطيك أهم الـmodules التي أستخدمها في مشروع ميتا واستخدامها ومتطلباتها لن تخرج عما ذكرناه:
كود:
use auxiliary/scanner/mssql/mssql_login
use auxiliary/admin/mssql/mssql_enum
use auxiliary/admin/mssql/mssql_enum_sql_logins
use auxiliary/admin/mssql/mssql_exec
use auxiliary/admin/mssql/mssql_enum_domain_accounts
هذه بعض المصادر التي قد تفيدكم في هذا الموضوع:
https://nmap.org/nsedoc/scripts/ms-sql-tables.html
https://learn.microsoft.com/en-us/s...p-cmdshell-transact-sql?view=sql-server-ver15
https://tryhackme.com/r/room/networkservices2
https://learn.microsoft.com/en-us/sql/sql-server/?view=sql-server-ver16
هنا ينتهي الموضوع. إن أحسنت فمن الله، وإن أسأت فمن نفسي والشيطان
دُمتم هكرجية
التعديل الأخير: