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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
PrintSpoofer-ReflectiveDLL — विंडोज़ प्रिंट स्पूलर विशेषाधिकार वृद्धि भेद्यता (CVE-2019-1040/CVE-2019-1019) को पैठ परीक्षण के लिए Reflective DLL के रूप में लागू किया गया है। | Kitploit
उपकरण/GitHubGitHub/jonyfilc/printspoofer-reflectivedll
विशेषाधिकार वृद्धिशोषणपार्श्व आंदोलनपोस्ट-शोषणपेनिट्रेशन टेस्टिंगरेड टीमिंगपेलोड डेवलपमेंट
GitHubjonyfilc/printspoofer-reflectivedll

PrintSpoofer-ReflectiveDLL

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

सभी देखें →

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

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

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

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

विंडोज़ प्रिंट स्पूलर विशेषाधिकार वृद्धि भेद्यता (CVE-2019-1040/CVE-2019-1019) को पैठ परीक्षण के लिए Reflective DLL के रूप में लागू किया गया है।

रिपॉजिटरी देखें
235 दिन पहलेअभी तक समीक्षित नहीं

PrintSpoofer विवरण

License Platform C++

PrintSpoofer एक उपकरण है जो Windows Print Spooler सेवा (CVE-2019-1040 / CVE-2019-1019) में एक भेद्यता का फायदा उठाकर स्थानीय विशेषाधिकार वृद्धि (local privilege escalation) करता है। यह परियोजना PrintSpoofer एक्सप्लॉइट को Reflective DLL प्रारूप में लागू करती है, जिससे यह Cobalt Strike जैसे पैठ परीक्षण (penetration testing) ढाँचों के साथ उपयोग के लिए उपयुक्त हो जाता है।

विषय-सूची

  • अवलोकन
  • यह कैसे काम करता है
  • तकनीकी विवरण
  • आवश्यकताएँ
  • निर्माण
  • उपयोग
  • परियोजना संरचना
  • सुरक्षा अस्वीकरण
  • संदर्भ

अवलोकन

PrintSpoofer Windows Print Spooler सेवा में एक भेद्यता का फायदा उठाता है जो कम-विशेषाधिकार वाले उपयोगकर्ता को SYSTEM-स्तरीय विशेषाधिकार प्राप्त करने की अनुमति देता है। यह एक्सप्लॉइट Print Spooler सेवा द्वारा नामित पाइप (named pipes) को संभालने के तरीके का दुरुपयोग करता है।

विशेषताएँ

  • Reflective DLL प्रारूप — पूरी तरह से मेमोरी में लोड किया जा सकता है बिना डिस्क को छुए
  • SE_IMPERSONATE_NAME विशेषाधिकार के साथ काम करता है
  • RPC प्रोटोकॉल का उपयोग करके Print Spooler सेवा के साथ संचार करता है
  • टोकन प्रतिरूपण (token impersonation) करने के लिए Named Pipe तंत्र का उपयोग करता है

यह कैसे काम करता है

PrintSpoofer निम्नलिखित चरणों को निष्पादित करके कार्य करता है:

1. विशेषाधिकार जाँच

एक्सप्लॉइट पहले जाँचता है कि वर्तमान टोकन में SE_IMPERSONATE_NAME विशेषाधिकार है या नहीं। किसी अन्य उपयोगकर्ता के टोकन का प्रतिरूपण करने के लिए यह आवश्यक है।

2. Named Pipe निर्माण

एक यादृच्छिक UUID का उपयोग करके एक named pipe बनाया जाता है। पाइप पथ है:

root@kitploit:~
\\.\pipe\<UUID>\pipe\spoolss

3. पाइप कनेक्शन की प्रतीक्षा

बनाए गए named pipe पर एक अतुल्यकालिक (asynchronous) कनेक्शन की प्रतीक्षा की जाती है। एक event बनाया जाता है, और पाइप को आने वाले कनेक्शन स्वीकार करने के लिए तैयार किया जाता है।

4. Print Spooler कनेक्शन ट्रिगर करें

एक अलग थ्रेड में, Print Spooler सेवा के लिए एक RPC कॉल की जाती है। RpcRemoteFindFirstPrinterChangeNotificationEx को आमंत्रित करके, सेवा हमारे द्वारा बनाए गए पाइप से कनेक्ट करने का प्रयास करती है।

5. टोकन प्रतिरूपण

जब Print Spooler सेवा (SYSTEM के रूप में चल रही) named pipe से कनेक्ट होती है, तो एक्सप्लॉइट सेवा के टोकन का प्रतिरूपण करने के लिए ImpersonateNamedPipeClient का उपयोग करता है। इसके परिणामस्वरूप SYSTEM विशेषाधिकार प्राप्त होते हैं।

6. विशेषाधिकार प्राप्त संचालन

SYSTEM टोकन के साथ, अब उच्च-विशेषाधिकार वाली क्रियाएँ निष्पादित की जा सकती हैं।

तकनीकी विवरण

Print Spooler भेद्यता

Windows Print Spooler सेवा नामित पाइप के माध्यम से प्रिंटर अधिसूचनाओं को संसाधित करती है। चूँकि सेवा पाइप कनेक्शन को ठीक से सत्यापित नहीं करती है, एक हमलावर इसे एक दुर्भावनापूर्ण पाइप से कनेक्ट करने के लिए मजबूर कर सकता है और फिर SYSTEM टोकन का प्रतिरूपण कर सकता है।

RPC संचार

यह परियोजना MS-RPRN (Print System Remote Protocol) का उपयोग करके Print Spooler सेवा के साथ संचार करती है। यह प्रोटोकॉल एक IDL (Interface Definition Language) फ़ाइल के माध्यम से परिभाषित किया गया है और RPC कॉल को सक्षम बनाता है।

Reflective DLL इंजेक्शन

एक reflective DLL मानक DLL से अलग व्यवहार करती है:

  • इसे डिस्क को छुए बिना सीधे मेमोरी में लोड किया जा सकता है
  • LoadLibrary API की आवश्यकता नहीं होती है
  • PE (Portable Executable) प्रारूप को मैन्युअल रूप से पार्स और लोड करता है

आवश्यकताएँ

निर्माण के लिए

  • Visual Studio 2022 (C++ डेस्कटॉप विकास कार्यभार)
  • Windows 10/11

चलाने के लिए

  • Windows 10/11
  • Print Spooler सेवा चालू होनी चाहिए
  • SE_IMPERSONATE_NAME विशेषाधिकार (डिफ़ॉल्ट रूप से अधिकांश मानक उपयोगकर्ताओं के लिए उपलब्ध)
  • Cobalt Strike या समान ढाँचा (वैकल्पिक)

निर्माण

Visual Studio के साथ निर्माण

  1. Visual Studio में PrintSpoofer.sln फ़ाइल खोलें।

  2. अपना Solution Platform और Configuration चुनें:

    • Platform: x64 या Win32 (लक्ष्य आर्किटेक्चर के आधार पर)
    • Configuration: Release (उत्पादन) या Debug (विकास)
  3. Build Solution (Ctrl+Shift+B) के माध्यम से समाधान बनाएँ।

  4. संकलित DLL निम्न स्थान पर होगा:

    root@kitploit:~
    PrintSpoofer\x64\Release\PrintSpoofer.dll   (for x64)
    PrintSpoofer\Win32\Release\PrintSpoofer.dll (for x86)
    

निर्माण विकल्प

परियोजना निम्नलिखित प्रीप्रोसेसर परिभाषाओं का उपयोग करती है:

  • REFLECTIVE_DLL_EXPORTS: Reflective DLL निर्यात सक्षम करता है
  • REFLECTIVEDLLINJECTION_CUSTOM_DLLMAIN: एक कस्टम DllMain का उपयोग करता है
  • REFLECTIVEDLLINJECTION_VIA_LOADREMOTELIBRARYR: LoadRemoteLibraryR सक्षम करता है (Release मोड में)

उपयोग

Cobalt Strike के साथ उपयोग

PrintSpoofer को Cobalt Strike के elevate कमांड के साथ उपयोग किया जा सकता है:

root@kitploit:~
elevate PrintSpoofer LISTENER_NAME

जहाँ:

  • PrintSpoofer: एलिवेटर मॉड्यूल नाम
  • LISTENER_NAME: वह listener जो उन्नत शेल प्राप्त करेगा

मैन्युअल उपयोग

DLL को Reflective DLL इंजेक्शन तकनीकों का उपयोग करके मैन्युअल रूप से लोड किया जा सकता है।

अपेक्षित आउटपुट

एक सफल एक्सप्लॉइट निष्पादन निम्न दिखाएगा:

root@kitploit:~
[+] Found privilege: SeImpersonatePrivilege
[+] Named pipe listening...
[+] ImpersonateNamedPipeClient OK
[+] Exploit successfully, enjoy your shell

फ़ाइल विवरण

dllmain.cpp

  • DLL प्रवेश बिंदु (DllMain)
  • एक्सप्लॉइट तर्क को नियंत्रित करता है
  • Reflective DLL-विशिष्ट कार्यक्षमता को संभालता है

PrintSpoofer.cpp

  • CheckAndEnablePrivilege: टोकन विशेषाधिकारों की जाँच करता है और उन्हें सक्षम करता है
  • GenerateRandomPipeName: यादृच्छिक UUID का उपयोग करके पाइप नाम उत्पन्न करता है
  • CreateSpoolNamedPipe: named pipes बनाता है और सुरक्षा कॉन्फ़िगर करता है
  • ConnectSpoolNamedPipe: अतुल्यकालिक कनेक्शन के लिए पाइप तैयार करता है
  • TriggerNamedPipeConnection: Print Spooler कनेक्शन ट्रिगर करने के लिए एक थ्रेड बनाता है
  • TriggerNamedPipeConnectionThread: RPC कॉल करता है
  • GetSystem: टोकन प्रतिरूपण करता है

ms-rprn.idl

  • Microsoft के MS-RPRN प्रोटोकॉल की IDL परिभाषा
  • RPC स्टब उत्पन्न करने के लिए MIDL कंपाइलर द्वारा संसाधित

ReflectiveLoader.cpp

  • Reflective DLL इंजेक्शन के लिए PE पार्सिंग और मेमोरी लोडिंग लागू करता है

अस्वीकरण

यह उपकरण केवल शैक्षिक उद्देश्यों और अधिकृत पैठ परीक्षण के लिए है।

संदर्भ

  • https://www.itm4n.fr/printspoofer-abusing-impersonate-privileges/
  • https://book.hacktricks.xyz/windows-hardening/windows-local-privilege-escalation

लाइसेंस

यह परियोजना MIT लाइसेंस के अंतर्गत लाइसेंस प्राप्त है। अधिक जानकारी के लिए, LICENSE फ़ाइल देखें।

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