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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
tgt-monitor-bof — एक लक्ष्य प्रणाली पर Kerberos TGTs को स्वचालित रूप से निकालने या नवीनीकरण करने के लिए Async BOF। | Kitploit
उपकरण/GitHubGitHub/jakobfriedl/tgt-monitor-bof
पार्श्व आंदोलनपोस्ट-शोषणपेनिट्रेशन टेस्टिंगप्रमाणीकरणरेड टीमिंगपेलोड डेवलपमेंट
GitHubjakobfriedl/tgt-monitor-bof

tgt-monitor-bof

एक लक्ष्य प्रणाली पर Kerberos TGTs को स्वचालित रूप से निकालने या नवीनीकरण करने के लिए Async BOF।

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

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

सभी देखें →

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

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

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

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

Kerberos TGT निगरानी और स्वचालित नवीनीकरण

इस रिपॉजिटरी में दो Async Beacon Object Files (BOF) शामिल हैं। पहला, tgt-monitor, सिस्टम पर Kerberos लॉगऑन ईवेंट की निगरानी करता है और जब भी कोई नया Kerberos TGT कैप्चर होता है तो एजेंट को जगाता है। Rubeus के monitor कमांड के समान, यह BOF अनिश्चित काल तक चलता है और समय-समय पर सिस्टम पर LSA टिकट कैश की जांच करता है। जब कोई नया TGT पाया जाता है, तो यह टिकट मेटाडेटा प्रिंट करता है और base64-एन्कोडेड kirbi ब्लॉब आउटपुट करता है, जिसका उपयोग पास-द-टिकट हमलों के माध्यम से पार्श्व आंदोलन के लिए किया जा सकता है। दूसरा, tgt-renew, सिस्टम पर TGT को स्वचालित रूप से नवीनीकृत करता है यदि उनकी शेष आयु निर्दिष्ट सीमा (जैसे 15 मिनट) से कम है।

[!महत्वपूर्ण] इस रिपॉजिटरी में BOF को अतुल्यकालिक ऑब्जेक्ट फ़ाइल लोडिंग क्षमताओं की आवश्यकता होती है। ऐसी कार्यक्षमता Conquest फ्रेमवर्क द्वारा प्रदान की जाती है।

  • Kerberos TGT निगरानी और स्वचालित नवीनीकरण
    • यह कैसे काम करता है
      • टिकट निगरानी
      • टिकट नवीनीकरण
  • उपयोग
    • tgt-monitor
    • tgt-renew
  • स्थापना
  • स्वीकृतियाँ
  • यह कैसे काम करता है

    दोनों BOF को NT AUTHORITY\SYSTEM संदर्भ से चलाने की आवश्यकता है। विशेषाधिकारों की जाँच उसी तर्क के अनुसार की जाती है।

    1. BOF वर्तमान प्रक्रिया टोकन को SYSTEM एक्सेस के लिए जाँचता है।
    2. यदि प्रक्रिया टोकन SYSTEM नहीं है, तो BOF वर्तमान प्रक्रिया में सभी थ्रेड्स को SYSTEM विशेषाधिकारों वाले प्रतिरूपण टोकन के लिए स्कैन करता है और उसे डुप्लिकेट करता है। यह कम-अखंडता वाली एजेंट प्रक्रिया से उपयोग की अनुमति देता है जिसने SYSTEM टोकन चुराया है (जैसे SeImpersonatePrivilege के माध्यम से)। यदि इससे भी SYSTEM स्तर की पहुंच नहीं मिलती है तो BOF समाप्त हो जाता है।
    3. LSA और Kerberos प्रमाणीकरण पैकेज हैंडल प्राप्त किए जाते हैं।

    नीचे दिए गए चरणों को एक लूप में तब तक दोहराया जाता है जब तक BOF को स्टॉप ईवेंट के माध्यम से रद्द नहीं किया जाता। उपयोगकर्ता-परिभाषित अंतराल पोल के बीच देरी निर्धारित करता है।

    टिकट निगरानी

    1. सभी सक्रिय लॉगऑन सत्रों की गणना की जाती है। प्रत्येक सत्र के लिए, Kerberos टिकट कैश क्वेरी किया जाता है और TGT के लिए फ़िल्टर किया जाता है। यदि कोई --user तर्क प्रदान किया गया था, तो केवल उस उपयोगकर्ता नाम से मेल खाने वाले सत्रों पर विचार किया जाता है।
    2. वर्तमान टिकट कैश की तुलना पिछले स्नैपशॉट से की जाती है। नए TGT मेटाडेटा प्रिंटिंग और base64-एन्कोडेड kirbi आउटपुट को ट्रिगर करते हैं, इसके बाद एजेंट को चेक इन करने और आउटपुट वापस करने के लिए बाध्य करने के लिए BeaconWakeup() कॉल किया जाता है।

    कार्यप्रवाह TGT मॉनिटर

    टिकट नवीनीकरण

    1. सभी सक्रिय लॉगऑन सत्रों की गणना की जाती है। प्रत्येक सत्र के लिए, Kerberos टिकट कैश क्वेरी किया जाता है और TGT के लिए फ़िल्टर किया जाता है। यदि कोई --user तर्क प्रदान किया गया था, तो केवल उस उपयोगकर्ता नाम से मेल खाने वाले सत्रों पर विचार किया जाता है।
    2. प्रत्येक TGT की दो स्थितियों के विरुद्ध जाँच की जाती है:
      • यदि टिकट अपने RenewUntil समय से आगे है, तो इसे समाप्त के रूप में चिह्नित किया जाता है और पुनः प्रमाणीकरण आवश्यक है।
      • यदि टिकट की शेष आयु उपयोगकर्ता-परिभाषित सीमा के भीतर है, तो TGT को नवीनीकृत और आयात किया जाता है। सफलता पर, अद्यतन टिकट मेटाडेटा और base64-एन्कोडेड kirbi आउटपुट प्रिंट किए जाते हैं, इसके बाद BeaconWakeup() कॉल किया जाता है।

    कार्यप्रवाह TGT नवीनीकरण

    टिकट नवीनीकरण प्रक्रिया में निम्नलिखित चरण शामिल हैं:

    1. PTICKET_ENTRY संरचना से LUID और SPN का उपयोग करके ExtractTicket() के माध्यम से ASN.1-एन्कोडेड Kerberos TGT निकालें।
    2. ASN.1-डीकोड करें टिकट और Kerberos क्रेडेंशियल प्राप्त करें।
    3. समाप्त होने वाले टिकट का उपयोग करके प्री-ऑथेंटिकेशन के लिए टिकट नवीनीकरण का अनुरोध करने के लिए TGS-REQ पैकेट बनाएं।
    4. TGS-REQ बाइट्स को पोर्ट 88 पर डोमेन कंट्रोलर को भेजें।
    5. TGS-REP प्रतिक्रिया प्राप्त करें, ASN.1-डीकोड करें और पार्स करें।
    6. नवीनीकृत टिकट बनाएं, कैश से पुराने टिकट को शुद्ध करें, और Pass-the-Ticket का उपयोग करके नवीनीकृत टिकट आयात करें।
    7. PTICKET_ENTRY संरचना पर startTime, endTime, renewUntil, ticketFlags, और encryptionType अपडेट करें, टिकट जानकारी और base64 प्रिंट करें।

    उपयोग

    इस रिपॉजिटरी में एक Conquest मॉड्यूल है जो निम्नलिखित दो कमांड लागू करता है।

    tgt-monitor

    tgt-monitor BOF नए TGT कैप्चर होने पर सचेत करता है और उन्हें Base64-एन्कोडेड ब्लॉब के रूप में लौटाता है। ऑब्जेक्ट फ़ाइल में निम्नलिखित तर्क पारित किए जाने चाहिए:

    नामप्रकारविवरण
    intervalintजाँचों के बीच सेकंड में टाइमआउट।
    targetUsersstringलक्ष्य उपयोगकर्ता नामों की केस-असंवेदनशील अल्पविराम-पृथक सूची। जब यह फ़ील्ड सेट होता है, तो केवल निर्दिष्ट उपयोगकर्ताओं के लिए TGT प्राप्त किए जाते हैं। अन्यथा, सभी उपयोगकर्ताओं के लिए TGT एकत्र किए जाते हैं। ध्यान दें कि कंप्यूटर खातों को $ के साथ समाप्त होना चाहिए।
    root@kitploit:~
    उपयोग: tgt-monitor [--interval interval] [--user user]
    उदाहरण: tgt-monitor --interval 5 --user DC01$
    
    वैकल्पिक तर्क:
      --interval interval       INT        सेकंड में पोलिंग अंतराल (डिफ़ॉल्ट: 60)।
      --user user               STRING     लक्ष्य उपयोगकर्ता नामों की अल्पविराम-पृथक सूची (डिफ़ॉल्ट: सभी उपयोगकर्ता)।
    

    TGT मॉनिटर

    एन्कोडेड टिकट का उपयोग सीधे Rubeus.exe ptt /ticket:<base64> या impacket-ticketConverter के साथ आगे पार्श्व आंदोलन के लिए किया जा सकता है, जैसा कि नीचे स्क्रीनशॉट में दिखाया गया है। Conquest में, ptt कमांड का उपयोग करके टिकट को सीधे वर्तमान लॉगऑन सत्र में इंजेक्ट करना और लक्ष्य उपयोगकर्ता का प्रतिरूपण करना संभव है।

    TGT मॉनिटर के साथ टिकट चुराना

    tgt-renew

    tgt-renew BOF स्वचालित रूप से उन टिकटों को नवीनीकृत करता है जो जल्द ही समाप्त होने वाले हैं, जब तक कि उन्हें और नवीनीकृत नहीं किया जा सकता। ऑब्जेक्ट फ़ाइल में निम्नलिखित तर्क पारित किए जाने चाहिए:

    नामप्रकारविवरण
    intervalintजाँचों के बीच सेकंड में टाइमआउट।
    thresholdintमिनटों में नवीनीकरण सीमा। टिकट को तब नवीनीकृत किया जाता है जब EndTime का समय इस सीमा से कम होता है।
    targetUsersstringलक्ष्य उपयोगकर्ता नामों की केस-असंवेदनशील अल्पविराम-पृथक सूची। जब यह फ़ील्ड सेट होता है, तो केवल निर्दिष्ट उपयोगकर्ताओं के लिए TGT नवीनीकृत किए जाते हैं। अन्यथा, सभी उपयोगकर्ताओं के लिए TGT नवीनीकृत किए जाते हैं। ध्यान दें कि कंप्यूटर खातों को $ के साथ समाप्त होना चाहिए।
    targetLuidsstringलक्ष्य LUID की केस-असंवेदनशील अल्पविराम-पृथक सूची। जब यह फ़ील्ड सेट होता है, तो केवल निर्दिष्ट LUID के लिए TGT नवीनीकृत किए जाते हैं।
    root@kitploit:~
    उपयोग: tgt-renew [--interval seconds] [--threshold minutes] [--user user] [--luid luid]
    उदाहरण: tgt-renew --luid 0x3e4 --interval 300 --threshold 30
    
    वैकल्पिक तर्क:
      --interval seconds        INT        सेकंड में पोलिंग अंतराल (डिफ़ॉल्ट: 60)।
      --threshold minutes       INT        मिनटों में टिकट नवीनीकरण सीमा (डिफ़ॉल्ट: 15)।
      --user user               STRING     लक्ष्य उपयोगकर्ता नामों की अल्पविराम-पृथक सूची (डिफ़ॉल्ट: सभी उपयोगकर्ता)।
      --luid luid               STRING     लक्ष्य LUID की अल्पविराम-पृथक सूची (डिफ़ॉल्ट: सभी LUID)।
    

    --user और --luid फ्लैग परस्पर अनन्य हैं।

    TGT नवीनीकरण

    स्थापना

    root@kitploit:~
    git clone https://github.com/jakobfriedl/tgt-monitor-bof
    cd tgt-monitor-bof
    make
    

    वहां से, Conquest के स्क्रिप्ट मैनेजर का उपयोग करके dist/tgt-monitor.py मॉड्यूल लोड करें।

    स्वीकृतियाँ

    इस Beacon Object File का कार्यान्वयन निम्नलिखित परियोजनाओं पर आधारित है:

    • https://github.com/Ghostpack/Rubeus
    • https://github.com/RalfHacker/Kerbeus-BOF
      • ASN.1 एन्कोडिंग/डिकोडिंग कार्यान्वयन
    • https://github.com/wavvs/nanorobeus
    टूल डाउनलोड करें