Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
DNSRPC-BOF — बीकन ऑब्जेक्ट फ़ाइल (BOF) कार्यान्वयन dnscmd.exe कार्यक्षमता का, जिसका उपयोग MS-DNSP का उपयोग करके ServerLevelPluginDll एज का शोषण करके ADIDNS सर्वर पर रिमोट कोड निष्पादन प्राप्त करने के लिए किया जाता है। | Kitploit
उपकरण/GitHubGitHub/paradoxis/dnsrpc-bof
शोषणपोस्ट-शोषणपेनिट्रेशन टेस्टिंगरेड टीमिंगपेलोड डेवलपमेंट
GitHubparadoxis/dnsrpc-bof

DNSRPC-BOF

बीकन ऑब्जेक्ट फ़ाइल (BOF) कार्यान्वयन dnscmd.exe कार्यक्षमता का, जिसका उपयोग MS-DNSP का उपयोग करके ServerLevelPluginDll एज का शोषण करके ADIDNS सर्वर पर रिमोट कोड निष्पादन प्राप्त करने के लिए किया जाता है।

रिपॉजिटरी देखें
505141 महीना पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

DNSRPC-BOF

dnscmd.exe कार्यक्षमता का Beacon Object File (BOF) कार्यान्वयन, जिसका उपयोग MS-DNSP 1 का उपयोग करके ServerLevelPluginDll एज 2 3 4 का शोषण करके ADIDNS सर्वर पर रिमोट कोड निष्पादन प्राप्त करने के लिए किया जाता है। शोषण के लिए उस उपयोगकर्ता खाते तक पहुंच की आवश्यकता होती है जो DnsAdmins समूह का सदस्य है।

[!NOTE] चूंकि BOF मूल रूप से C अपवादों का समर्थन नहीं करते हैं, यह एक्सटेंशन RtlRaiseException विधि में हुक करता है और RPC कॉल के दौरान नियंत्रण प्रवाह को BOF में वापस लौटाता है। हालांकि यह विधि हैकी है, यह आवश्यक है क्योंकि Microsoft का RPC कार्यान्वयन नियंत्रण प्रवाह के लिए RpcTryExcept का भारी उपयोग करता है। यह परीक्षण वातावरण में ठीक काम करता है, लेकिन ध्यान रखें कि यह तकनीक बीकन अस्थिरता का कारण बन सकती है।

संकलन

प्रोजेक्ट को संकलित करने के लिए, आप MinGW स्थापित सिस्टम पर का उपयोग कर सकते हैं:

make
root@kitploit:~
make

वैकल्पिक रूप से, यदि आप Windows पर Visual Studio के लिए x64 Native Tools Command Prompt का उपयोग कर रहे हैं तो .\build.bat का उपयोग करें:

root@kitploit:~
.\build.bat

दोनों संकलन चरण .o फ़ाइलों के साथ-साथ .exe फ़ाइलें भी उत्पन्न करेंगे ताकि प्रयोगशाला वातावरण में BOF कार्यक्षमता के साथ प्रयोग किया जा सके।

उपयोग

ADIDNS सर्वर के साथ इंटरैक्ट करने के लिए निम्नलिखित BOF बनाए गए हैं:

  • dnsrpc_probe - जांचें कि ADIDNS सर्वर चालू है या नहीं
  • dnsrpc_info - वर्तमान ADIDNS सर्वर सेटिंग्स प्राप्त करें
  • dnsrpc_coerce_write - ADIDNS सर्वर को नेटवर्क शेयर पर फ़ाइल लिखने के लिए बाध्य करने की उपयोगिता, यह परीक्षण करने के लिए कि आपका DC दिए गए नेटवर्क शेयर तक पहुंच सकता है या नहीं, इससे पहले कि आप इसे dnsrpc_set_plugin_dll प्लगइन के माध्यम से नष्ट कर दें।
  • dnsrpc_set_plugin_dll - सर्वर पुनरारंभ होने पर लोड होने वाली DLL को कॉन्फ़िगर करता है
  • dnsrpc_restart_server - ADIDNS सर्वर को पुनरारंभ करने का आदेश जारी करता है
  • dnsrpc_cleanup - dnsrpc_coerce_write और dnsrpc_set_plugin_dll कमांड द्वारा छोड़े गए रजिस्ट्री आर्टिफैक्ट्स को साफ करता है। इसे डोमेन कंट्रोलर पर ही निष्पादित किया जाना चाहिए।

इसके अतिरिक्त, dnssrv_plugin.c में एक उदाहरण पेलोड प्रदान किया गया है।

[!WARNING] यदि DC किसी कारण से उस DLL पेलोड को छू नहीं सकता जिसे आपने dnsrpc_set_pugin_dll के साथ निर्दिष्ट किया है, तो यह फिर से शुरू होने से इनकार कर देगा और आप संभवतः पूरे डोमेन को अपंग कर देंगे। इससे पहले कि आप गलती से लक्ष्य को नष्ट कर दें, यह जांचने के लिए dnsrpc_coerce_write का उपयोग करने पर विचार करें कि क्या DC वास्तव में आपके शेयर से कनेक्ट हो सकता है। जब उनका DNS डाउन हो जाता है तो लोग नाराज हो जाते हैं।

इसके अलावा, dnsrpc_restart_server के परिणामस्वरूप दो मिनट का DNS डाउनटाइम होगा। BOF को कई बार कॉल करने से टाइमआउट हर बार बढ़ता जाएगा, इसलिए इसका कम उपयोग करें।

विकास

विकास वातावरण में BOF का परीक्षण करने के लिए, आप TrustedSec's COFFLoader जैसे टूल का उपयोग कर सकते हैं, जिसे Windows पर इस प्रकार संकलित किया जा सकता है:

root@kitploit:~
cl.exe /W4 /DCOFF_STANDALONE /DDEBUG beacon_compatibility.c COFFLoader.c /Fe:COFFLoader.exe /link advapi32.lib

फिर एक BOF निष्पादित करने के लिए (जैसे: dnsrpc_info BOF), तर्क उत्पन्न करें और उन्हें COFFLoader को पास करें:

root@kitploit:~
> python beacon_generate.py
Beacon Argument Generator
Beacon>addWString DC01
Beacon>generate
b'0e0000000a00000044004300300031000000'
Beacon> exit

> cl.exe /c /GS- dnsrpc_info.c /Fo:dist\dnsrpc_info.o
> COFFLoader.exe go dist\dnsrpc_info.o 0e0000000a00000044004300300031000000
...
        $SG77912
: Section: 3, Value: 0xA08
        $SG77914H
: Section: 3, Value: 0xA48
        $SG77915X
: Section: 3, Value: 0xA58
        .chks64: Section: 11, Value: 0x0
        X: Section: 0, Value: 0x0
Back
Returning
Ran/parsed the coff
Outdata Below:

server name: DC01.research.lan
server version: 4F7C000A (10.0 build 20348)
rpc structure version: 2 (longhorn)
directory services available: yes
admin configured: yes
allow update: yes
is read-only domain controller: no
boot method: 3 (registry)
no recursion: no
round robin: yes
secure responses: yes
forward timeout: 3
recursion retry: 3
recursion timeout: 8
max cache ttl: 86400
directory services polling interval: 180
scavenging interval: 0
log level: 0x00000000
directory services container: cn=MicrosoftDNS,cn=System,DC=research,DC=lan
domain name: research.lan
forest name: research.lan
log file path: (none)
server addresses: fe80:0000:0000:0000:4cbe:0281:82dd:76ed, 172.16.50.107
listen addresses: (none)
forwarders: 8.8.8.8, 1.1.1.1

IDL परिभाषाओं को पुनः संकलित करने के लिए, आप निम्नलिखित कमांड का उपयोग कर सकते हैं:

root@kitploit:~
midl /W1 /char signed /env x64 /target NT100 /Oicf dnsrpc.idl

विकास के दौरान _DEBUG फ्लैग के परिणामस्वरूप अंतिम बाइनरी में wmain जोड़ा जाएगा, और _VERBOSE फ्लैग का उपयोग अतिरिक्त डीबग लॉगिंग शामिल करने के लिए किया जाता है। अधिक जानकारी के लिए, build.bat और Makefile देखें।

लाइसेंस

यह प्रोजेक्ट MIT लाइसेंस के तहत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें। इस टूल के उपयोग से होने वाले किसी भी दुरुपयोग या क्षति के लिए मैं कोई जिम्मेदारी नहीं लेता। इसका उपयोग केवल उन वातावरणों में करें जहां आपके पास ऐसा करने की स्पष्ट अनुमति हो।

Footnotes

  1. https://raw.githubusercontent.com/paradoxis/dnsrpc-bof/HEAD/%3Chttps:/learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dnsp/9500a7e8-165d-4b13-be86-0ddc43100eef%3E ↩

  2. https://raw.githubusercontent.com/paradoxis/dnsrpc-bof/HEAD/%3Chttps:/medium.com/@esnesenon/feature-not-bug-dnsadmin-to-dc-compromise-in-one-line-a0f779b8dc83%3E ↩

  3. https://raw.githubusercontent.com/paradoxis/dnsrpc-bof/HEAD/%3Chttps:/www.semperis.com/blog/dnsadmins-revisited/%3E ↩

  4. https://raw.githubusercontent.com/paradoxis/dnsrpc-bof/HEAD/%3Chttps:/www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/from-dnsadmins-to-system-to-domain-compromise%3E ↩

टूल डाउनलोड करें