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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ShadowSpray — एक उपकरण जो पूरे डोमेन में Shadow Credentials को spray करने के लिए है, ताकि डोमेन में अन्य ऑब्जेक्ट्स पर लंबे समय से भूली हुई GenericWrite/GenericAll DACLs का दुरुपयोग किया जा सके। | Kitploit
उपकरण/GitHubGitHub/dec0ne/shadowspray
विशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणपेनिट्रेशन टेस्टिंगप्रमाणीकरणरेड टीमिंग
GitHubdec0ne/shadowspray

ShadowSpray

एक उपकरण जो पूरे डोमेन में Shadow Credentials को spray करने के लिए है, ताकि डोमेन में अन्य ऑब्जेक्ट्स पर लंबे समय से भूली हुई GenericWrite/GenericAll DACLs का दुरुपयोग किया जा सके।

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

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

सभी देखें →

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

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

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

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

ShadowSpray

Shadow Credentials को पूरे डोमेन में फैलाने (spray) के लिए एक उपकरण, ताकि डोमेन में अन्य वस्तुओं पर लंबे समय से भूले हुए GenericWrite/GenericAll DACL का दुरुपयोग किया जा सके।

यह उपकरण क्यों

कई कार्यों (engagements) में मैं BloodHound में देखता हूँ कि समूह "Everyone" / "Authenticated Users" / "Domain Users" या कोई अन्य व्यापक समूह, जिसमें डोमेन के लगभग सभी उपयोगकर्ता शामिल हैं, के पास डोमेन में अन्य वस्तुओं पर कुछ GenericWrite/GenericAll DACL हैं।

example

इन अधिकारों का दुरुपयोग लक्ष्य वस्तु पर Shadow Credentials जोड़ने और उसका TGT और NT हैश प्राप्त करने के लिए किया जा सकता है।

मुझे ख्याल आया कि हम पूरे डोमेन पर Shadow Credentials फैलाने (spray) का प्रयास कर सकते हैं और देख सकते हैं कि क्या काम करता है (स्पष्ट रूप से यह दृष्टिकोण गैर-गुप्त (non-stealth) कार्यों के लिए बेहतर है, इसे रेड टीम में उपयोग न करें जहाँ गुप्तता आवश्यक है)। जब Shadow Credentials सफलतापूर्वक जोड़ा जाता है, तो हम बस पूरा PKINIT + UnPACTheHash नृत्य करते हैं और वोइला - हमें NT हैश मिल जाते हैं।

चूंकि प्रक्रिया अत्यंत तेज़ है, इसका उपयोग कार्य की शुरुआत में ही किया जा सकता है, और उम्मीद है कि आपके पास शुरू करने से पहले ही कुछ उपयोगकर्ता और कंप्यूटर स्वामित्व में होंगे।

नोट: मैंने अपने पिछले उपकरण से बहुत सारा कोड पुनर्चक्रित (recycle) किया है, इसलिए AV/EDR इसे KrbRelayUp के रूप में चिह्नित कर सकते हैं...

यह उपकरण कैसे काम करता है

यह कुछ इस प्रकार है:

  1. प्रदान की गई साख (credentials) के साथ डोमेन में लॉगिन करें (या वर्तमान सत्र का उपयोग करें)।
  2. जाँच करें कि डोमेन कार्यात्मक स्तर (functional level) 2016 है (अन्यथा रुकें क्योंकि Shadow Credentials हमला काम नहीं करेगा)।
  3. LDAP से डोमेन में सभी वस्तुओं (उपयोगकर्ताओं और कंप्यूटरों) की एक सूची एकत्र करें।
  4. सूची में प्रत्येक वस्तु के लिए निम्नलिखित करें:
    1. वस्तु के "msDS-KeyCredentialLink" विशेषता में KeyCredential जोड़ने का प्रयास करें।
    2. यदि उपरोक्त सफल है, तो जोड़े गए KeyCredential का उपयोग करके TGT का अनुरोध करने के लिए PKINIT का उपयोग करें।
    3. यदि उपरोक्त सफल है, तो उपयोगकर्ता/कंप्यूटर NT हैश प्रकट करने के लिए UnPACTheHash हमला करें।
    4. यदि --RestoreShadowCred निर्दिष्ट किया गया था: जोड़े गए KeyCredential को हटाएँ (अपने पीछे सफाई करें...)।
  5. यदि --Recursive निर्दिष्ट किया गया था: हमारे द्वारा सफलतापूर्वक स्वामित्व प्राप्त प्रत्येक उपयोगकर्ता/कंप्यूटर खाते का उपयोग करके वही प्रक्रिया करें।

ShadowSpray CTRL+C का समर्थन करता है, इसलिए यदि किसी भी बिंदु पर आप निष्पादन रोकना चाहते हैं तो बस CTRL+C दबाएँ और ShadowSpray बाहर निकलने से पहले अब तक प्राप्त NT हैश प्रदर्शित करेगा (जैसा कि नीचे डेमो में दिखाया गया है)।

डेमो

https://user-images.githubusercontent.com/54464773/194827503-b1eead1a-e09a-41ca-9d9b-0a7a6f0ad6a0.mp4

उपयोग

root@kitploit:~
 __             __   __        __   __   __
/__` |__|  /\  |  \ /  \ |  | /__` |__) |__)  /\  \ /
.__/ |  | /~~\ |__/ \__/ |/\| .__/ |    |  \ /~~\  |


Usage: ShadowSpray.exe [-d FQDN] [-dc FQDN] [-u USERNAME] [-p PASSWORD] [-r] [-re] [-cp CERT_PASSWORD] [-ssl]

    -r   (--RestoreShadowCred)       हमले के बाद "msDS-KeyCredentialLink" विशेषता को पुनर्स्थापित करें। (वैकल्पिक)
    -re  (--Recursive)               ShadowSpray हमले को पुनरावर्ती (recursively) करें। (वैकल्पिक)
    -cp  (--CertificatePassword)     प्रमाणपत्र पासवर्ड। (डिफ़ॉल्ट = यादृच्छिक पासवर्ड)


सामान्य विकल्प:
    -u  (--Username)                 प्रारंभिक LDAP प्रमाणीकरण के लिए उपयोगकर्ता नाम। (वैकल्पिक)
    -p  (--Password)                 प्रारंभिक LDAP प्रमाणीकरण के लिए पासवर्ड। (वैकल्पिक)
    -d  (--Domain)                   डोमेन का FQDN। (वैकल्पिक)
    -dc (--DomainController)         डोमेन नियंत्रक का FQDN। (वैकल्पिक)
    -ssl                             LDAP over SSL का उपयोग करें। (वैकल्पिक)
    -y  (--AutoY)                    ShadowSpray हमला शुरू करने की पुष्टि न पूछें। (वैकल्पिक)

TODO

  • कोड रीफ़ैक्टरिंग और सफाई!!!
  • वर्बोज़ आउटपुट विकल्प जोड़ें
  • जोड़े गए KeyCredentials / अनुरोधित TGT / एकत्रित NT हैश को डिस्क पर फ़ाइल में सहेजने का विकल्प जोड़ें
  • Python संस्करण ;)
  • अन्य सुझावों का स्वागत है

शमन और पता लगाना

Elad Shamir के Shadow Credentials ब्लॉग पोस्ट से लिया गया:

  • यदि PKINIT प्रमाणीकरण वातावरण में सामान्य नहीं है या लक्ष्य खाते के लिए सामान्य नहीं है, तो "Kerberos authentication ticket (TGT) was requested" घटना (4768) असामान्य व्यवहार का संकेत दे सकती है जब प्रमाणपत्र सूचना विशेषताएँ खाली न हों।

  • यदि लक्ष्य खाते के लिए Active Directory ऑब्जेक्ट संशोधनों का ऑडिट करने के लिए SACL कॉन्फ़िगर किया गया है, तो "Directory service object was modified" घटना (5136) असामान्य व्यवहार का संकेत दे सकती है यदि msDS-KeyCredentialLink को बदलने वाला विषय Azure AD Connect सिंक्रोनाइज़ेशन खाता या ADFS सेवा खाता नहीं है, जो आमतौर पर Key Provisioning Server के रूप में कार्य करता है और उपयोगकर्ताओं के लिए इस विशेषता को वैध रूप से संशोधित करता है।

  • एक अधिक विशिष्ट निवारक नियंत्रण एक Access Control Entry (ACE) जोड़ना है जो प्रिंसिपल EVERYONE को किसी भी खाते के लिए msDS-KeyCredentialLink विशेषता को संशोधित करने से DENY करता है जो Key Trust पासवर्डलेस प्रमाणीकरण में नामांकित होने के लिए नहीं है, और विशेष रूप से विशेषाधिकार प्राप्त खातों के लिए।

  • Detecting UnPACing and shadowed credentials by Henri Hambartsumyan of FalconForce

ShadowSpray विशिष्ट पता लगाना:

  • यह उपकरण बहुत कम समय सीमा में डोमेन में प्रत्येक उपयोगकर्ता/कंप्यूटर ऑब्जेक्ट को संशोधित करने का प्रयास करता है; जब यह विफल होता है (अधिकांश समय), तो यह एक LDAP_INSUFFICIENT_ACCESS त्रुटि उत्पन्न करता है। नियमित पासवर्ड स्प्रे का पता लगाने के समान दृष्टिकोण का उपयोग करके इसके आसपास पता लगाना संभव है।

आभार

  • Elad Shamir – Shadow Credentials पर उनके शोध और उनके शानदार उपकरण Whisker के लिए।
  • Will Schroeder और हर कोई जिसने Rubeus में योगदान दिया, जिसे हम सभी जानते और पसंद करते हैं। मूलतः सभी TGT/TGS/UnPACTheHash कार्यक्षमता वहाँ से ली गई है।
  • Cube0x0 – कुछ कोड (विशेष रूप से WINAPI के माध्यम से LDAP विशेषताओं के संशोधन) उनके अद्भुत उपकरण KrbRelay से लिया गया है।
  • Michael Grafnetter – उनके उपकरण DSInternals के लिए, जिसका उपयोग यहाँ Shadow Credentials कार्यक्षमता में सहायता के लिए किया गया।
  • Orange-Cyberdefense – GOAD पर उनके काम के लिए, Active Directory अनुसंधान प्रयोगशाला जिसका मैं उपयोग कर रहा हूँ और जिसे आप डेमो वीडियो और छवियों में देख सकते हैं।
  • Martijn Laarman – इस उपकरण में उपयोग किए गए अच्छे प्रगति पट्टी के लिए।
टूल डाउनलोड करें