
عدة أدوات بلغة C# لقواعد بيانات MS SQL، مصممة للاستطلاع الهجومي وعمليات ما بعد الاستغلال.
SQLRecon عبارة عن مجموعة أدوات لخادم Microsoft SQL Server مصمّمة للاستطلاع الهجومي وما بعد الاستغلال. للحصول على معلومات مفصّلة حول كيفية استخدام كل تقنية، راجع الويكي.
يمكنك تنزيل نسخة من SQLRecon من صفحة الإصدارات. أو يمكنك تجميع الحل بنفسك؛ يجب أن يكون الأمر سهلاً مثل استنساخ المستودع، والنقر المزدوج على ملف الحل، ثم البناء.
كما تم توفير إرشادات الوقاية والكشف والتخفيف لجميع المدافعين.
اطّلع على مقالتي على موقع IBM Security Intelligence. وإذا كنت تفضّل الفيديوهات، فشاهد عرضي في Black Hat.
لا تتطلب وحدات التعداد توفير موفِّر مصادقة. يجب تمرير هذه الوحدات إلى علامة وحدة التعداد (/e:, /enum:). يحتوي الويكي على تفاصيل حول استخدام وحدات التعداد.```
Info - Show information about the SQL server.
/h:, /host -> SQL server hostname or IP. Multiple hosts supported.
/port: -> (OPTIONAL) Defaults to 1434 (UDP).
/t:, timeout: -> (OPTIONAL) Defaults to 3s.
SqlSpns - Use the current user token to enumerate the AD domain for MSSQL SPNs. /d:, /domain: -> (OPTIONAL) NETBIOS name or FQDN of domain.
# مزودو المصادقة
يدعم SQLRecon مجموعة متنوعة من مزودي المصادقة (`/a:, /auth:`) لتمكين التفاعل مع خادم Microsoft SQL Server.```
WinToken - Use the current users token to authenticate against the SQL database
/h:, /host: -> SQL server hostname or IP
WinDomain - Use AD credentials to authenticate against the SQL database
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/d:, /domain: -> NETBIOS name or FQDN of domain.
/u:, /username: -> Username for domain user.
/p:, /password: -> Password for domain user.
Local - Use local SQL credentials to authenticate against the SQL database
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/u:, /username: -> Username for local SQL user.
/p:, /password: -> Password for local SQL user.
EntraID - Use Azure EntraID credentials to authenticate against the Azure SQL database
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/d:, /domain: -> FQDN of domain (DOMAIN.COM).
/u:, /username: -> Username for domain user.
/p:, /password: -> Password for domain user.
AzureLocal - Use local SQL credentials to authenticate against the Azure SQL database
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/u:, /username: -> Username for local SQL user.
/p:, /password: -> Password for local SQL user.
/h:, host:) مطلوبة وتسمح بخادم SQL واحد أو أكثر. إذا أردت تنفيذ وحدة نمطية ضد خوادم SQL متعددة، فافصل بين المضيفين بفاصلة، على سبيل المثال /h:SQL01,10.10.10.2,SQL03.master افتراضيًا، ومع ذلك يمكن تغيير ذلك اختياريًا عن طريق توفير اسم قاعدة بيانات مخصص عبر علامة قاعدة البيانات (/database:)./debug اختيارية وتعرض جميع استعلامات SQL التي ينفذها الوحدة النمطية، دون تنفيذها فعليًا على المضيف (المضيفين) البعيدين. يمكن العثور على مثال على ذلك في الويكي.1433 افتراضيًا، ومع ذلك يمكن تغيير ذلك اختياريًا باستخدام علامة /port:.3 ثوانٍ، ومع ذلك يمكن تغيير هذه القيمة اختياريًا عن طريق توفير قيمة مهلة (/t:, /timeout:) تتوافق مع عدد الثواني قبل إنهاء محاولة الاتصال./v, /verbose اختيارية وتعرض جميع استعلامات SQL التي ينفذها الوحدة النمطية قبل تنفيذها على المضيف (المضيفين) البعيدين. يمكن العثور على مثال على ذلك في الويكي.يُرجى ملاحظة أن موفر المصادقة EntraID يتطلب وجود مكتبة مصادقة Azure Active Directory (ADAL) أو مكتبة مصادقة Microsoft (MSAL) على النظام الذي يتم تنفيذ SQLRecon منه. وذلك لوظائف مصادقة Azure EntraID والترخيص.
يتم تنفيذ وحدات SQL النمطية ضد مثيل واحد أو أكثر من خادم Microsoft SQL. يجب تمرير هذه الوحدات إلى علامة الوحدة النمطية (/m:, /module:).