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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
nopowershell — Red Teaming उद्देश्यों के लिए C# में पुनर्निर्मित PowerShell | Kitploit
उपकरण/GitHubGitHub/bitsadmin/nopowershell
टोहीजानकारी एकत्र करनापोस्ट-शोषणकमांड एंड कंट्रोलरेड टीमिंग
GitHubbitsadmin/nopowershell

nopowershell

Red Teaming उद्देश्यों के लिए C# में पुनर्निर्मित PowerShell

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

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

सभी देखें →

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

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

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

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

NoPowerShell

NoPowerShell एक ऐसा उपकरण है जिसे C# में कार्यान्वित किया गया है, जो किसी भी PowerShell लॉगिंग तंत्र के लिए अदृश्य रहते हुए PowerShell-जैसे कमांड निष्पादित करने का समर्थन करता है। यह .NET Framework 2 संगत बाइनरी Cobalt Strike में लोड की जा सकती है ताकि कमांड को मेमोरी में निष्पादित किया जा सके। कोई System.Management.Automation.dll उपयोग नहीं किया जाता; केवल देशी .NET लाइब्रेरीज़। NoPowerShell का एक वैकल्पिक उपयोग-मामला इसे प्रतिबंधित वातावरण में rundll32.exe के माध्यम से DLL के रूप में लॉन्च करना है: rundll32 NoPowerShell.dll,main।

यह परियोजना सभी के लिए C# कोड की केवल कुछ पंक्तियों का उपयोग करके इसकी कार्यक्षमता का विस्तार करना आसान बनाती है। अधिक जानकारी के लिए, CONTRIBUTING.md देखें।

नवीनतम बाइनरी Releases पृष्ठ पर उपलब्ध हैं। MASTER शाखा बहुत नियमित रूप से अद्यतन नहीं की जाती; नवीनतम कोड और cmdlets DEV शाखा में उपलब्ध हैं। अपने NoPowerShell कौशल की शुरुआत करने के लिए, cmdlet Cheatsheet को भी अवश्य देखें।

स्क्रीनशॉट

Cobalt Strike में चलाना

NoPowerShell समर्थित कमांड

कमांड का नमूना निष्पादन

NoPowerShell नमूना कमांड

Rundll32 संस्करण

rundll32 के माध्यम से NoPowerShellDll

NoPowerShell क्यों

NoPowerShell को Cobalt Strike के execute-assembly कमांड के साथ या rundll32.exe का उपयोग करके प्रतिबंधित वातावरण में उपयोग के लिए विकसित किया गया है। NoPowerShell का उपयोग करने के कारण:

  • काफी गुप्त रूप से निष्पादित होता है
  • शक्तिशाली कार्यक्षमता
  • PowerShell में पहले से परिचित cmdlets प्रदान करता है, इसलिए कोई और नया उपकरण सीखने की आवश्यकता नहीं है
  • यदि आप अभी तक PowerShell से बहुत परिचित नहीं हैं, तो cmd.exe उपनाम भी उपलब्ध हैं (जैसे Test-NetConnection के बजाय ping)
  • यदि powerpick या powershell के माध्यम से cmdlets उपलब्ध नहीं हैं, तो वे nps में उपलब्ध हैं (जैसे ActiveDirectory मॉड्यूल के cmdlets)
  • केवल C# की कुछ पंक्तियों के साथ आसानी से विस्तार योग्य

उपयोग

उदाहरण

CHEATSHEET.md देखें।

execute-assembly के माध्यम से Cobalt Strike में उपयोग

Cobalt Strike के execute-assembly कमांड का उपयोग करके NoPowerShell.exe लॉन्च करें। उदाहरण के लिए execute-assembly /path/to/NoPowerShell.exe Get-Command। वैकल्पिक रूप से, Cobalt Strike में nps उपनाम जोड़ने के लिए NoPowerShell.cna का उपयोग किया जा सकता है।

BOF.NET के माध्यम से Cobalt Strike में उपयोग

  1. https://github.com/CCob/BOF.NET से BOF.NET BOF स्थापित करें
  2. BOF.NET रनटाइम लोड करें: bofnet_init
  3. NoPowerShell मॉड्यूल लोड करें: bofnet_load /path/to/NoPowerShell.dll
  4. NoPowerShell cmdlets निष्पादित करें: bofnet_execute NoPowerShell.Program Get-Command

BOF.NET के @williamknows फोर्क का उपयोग करके Cobalt Strike में उपयोग

यह फोर्क नियमित .NET एक्ज़िक्यूटेबल चलाने की अनुमति देता है

  1. https://github.com/williamknows/BOF.NET से BOF.NET का @williamknows फोर्क प्राप्त करें और संकलित करें
  2. BOF.NET रनटाइम लोड करें: bofnet_init
  3. NoPowerShell मॉड्यूल लोड करें: bofnet_load /path/to/NoPowerShell.exe
  4. NoPowerShell cmdlets निष्पादित करें: bofnet_executeassembly NoPowerShell Get-Command

rundll32 के माध्यम से लॉन्च करना

  1. NoPowerShell.dll फ़ाइल का एक नया शॉर्टकट बनाएं (राइट क्लिक का उपयोग करके खींचें -> यहां शॉर्टकट बनाएं)
  2. फ़ाइल नाम के आगे rundll32 जोड़कर और अंत में ,main जोड़कर शॉर्टकट अपडेट करें
  3. शॉर्टकट अब rundll32 C:\Path\to\NoPowerShell.dll,main जैसा दिखेगा
  4. शॉर्टकट पर डबल क्लिक करें

नोट

cmd.exe या PowerShell से NoPowerShell का उपयोग करते समय, आपको पाइप कैरेक्टर (|) को क्रमशः केयरट (^) या बैकटिक (`) के साथ एस्केप करना होगा, उदाहरण के लिए:

  • cmd.exe: ls ^| select Name
  • PowerShell: ls `| select Name

ज्ञात समस्याएं

  • पाइपलाइन कैरेक्टरों को रिक्त स्थानों से घिरा होना चाहिए
  • TLS 1.1+ .NET Framework 2 द्वारा समर्थित नहीं है, इसलिए इसे लागू करने वाली कोई भी साइट कनेक्शन त्रुटि उत्पन्न करेगी

सुधार

  • उपरोक्त समस्याओं को ठीक करें
  • पैरामीटर समूहों के लिए समर्थन
  • कमांडलाइन में .NET कोड के लिए समर्थन जोड़ें, उदा.: [System.Security.Principal.WindowsIdentity]::GetCurrent().Name

अनुरोधित NoPowerShell cmdlets

योगदान किए गए NoPowerShell cmdlets

अतिरिक्त NoPowerShell cmdlets के लेखकों को नीचे दी गई तालिका में जोड़ा गया है। इसके अलावा, तालिका उन कमांडों को सूचीबद्ध करती है जिन्हें समुदाय द्वारा जोड़ने का अनुरोध किया गया है। साथ मिलकर हम एक शक्तिशाली NoPowerShell टूलकिट विकसित कर सकते हैं!

Cmdletयोगदानकर्ताGitHubTwitterविवरण

शामिल NoPowerShell cmdlets

इन cmdlets का उपयोग करने के उदाहरणों के लिए Cheatsheet को भी अवश्य देखें।

आभार

विभिन्न NoPowerShell cmdlets और NoPowerShell DLL में अन्य डेवलपर्स द्वारा बनाया गया कोड शामिल है।

लेखक: Arris Huijgen (@bitsadmin - https://github.com/bitsadmin/)

टूल डाउनलोड करें
Cmdletविवरण
Invoke-CommandPSRemoting का उपयोग करके दूरस्थ मशीन पर एक कमांड निष्पादित करें (जो उस स्थिति में निश्चित रूप से लॉग की जाएगी)
*अधिक *-Item* कमांड
Search-ADAccount
Get-ADPrincipalGroupMembership
Get-ADOrganizationalUnits
*ActiveDirectory PowerShell मॉड्यूल के अधिक कमांड
*pipelist और sdelete जैसी Sysinternals उपयोगिताएँ
Cmdletमॉड्यूलनोट्स
Get-ADUserActiveDirectory
Get-ADObjectActiveDirectory
Get-ADReplicationSubnetActiveDirectory
Get-ADGroupActiveDirectory
Get-ADGroupMemberActiveDirectory
Get-ADComputerActiveDirectory
Get-ADDomainControllerActiveDirectory
Get-ADTrustActiveDirectory
Copy-AclAdditional
Get-RemoteSmbShareAdditional
Resolve-AdiDnsNameAdditional
Get-WhoamiAdditional
Get-WinStationAdditional
Compress-ArchiveArchive.NET 4.5+ की आवश्यकता है
Expand-ArchiveArchive.NET 4.5+ की आवश्यकता है
Get-HelpCore
Get-CommandCore
Where-ObjectCore
Resolve-DnsNameDnsClient
Get-LocalGroupMemberLocalAccounts
Get-LocalGroupLocalAccounts
Set-ClipboardManagement
Get-PSDriveManagement
Get-HotFixManagement
Stop-ProcessManagement
Get-ChildItemManagement
Copy-ItemManagement
Invoke-WmiMethodManagement
Remove-ItemManagement
Get-ItemPropertyValueManagement
Get-ItemPropertyManagement
Get-ComputerInfoManagement
Get-DnsClientCacheManagement
Get-ProcessManagement
Get-WmiObjectManagement
Get-ClipboardManagement
Get-ContentManagement
Test-NetConnectionNetTCPIP
Get-NetTCPConnectionNetTCPIP
Get-NetNeighborNetTCPIPअभी तक IPv6 के लिए समर्थन नहीं
Get-NetRouteNetTCPIP
Get-NetIPAddressNetTCPIP
Get-ServiceNoPowerShell.Commands
Get-LocalUserNoPowerShell.Commands
Get-WinEventNoPowerShell.Commands
New-ShortcutNoPowerShell.Commands
Get-AclSecurity
Get-SmbMappingSmbShare
Get-SmbShareSmbShare
Invoke-SqlcmdSQLPS
Get-FileHashUtility
ConvertFrom-SddlStringUtility
Sort-ObjectUtility
Measure-ObjectUtility
Invoke-WebRequestUtility
Select-ObjectUtility
Out-FileUtility
Format-TableUtility
Format-ListUtility
Export-CsvUtility
ConvertTo-CsvUtility
Write-OutputUtility
कौनवेबसाइटनोट्स
pinvoke.net के योगदानकर्ताhttps://www.pinvoke.net/विभिन्न cmdlets pinvoke के स्निपेट का उपयोग करते हैं
Michael Conradhttps://github.com/MichaCo/Resolve-Dns cmdlet के कुछ भाग DnsClient.Net परियोजना के कोड पर आधारित हैं
Rex Loganhttps://stackoverflow.com/a/1148861Get-NetNeighbor cmdlet का अधिकांश कोड उनकी StackOverflow पोस्ट से उत्पन्न हुआ है
PowerShell डेवलपर्सhttps://github.com/PowerShell/NoPowerShell DLL का कोड काफी हद तक PowerShell के कंसोल इनपुट को संभालने वाले कोड पर आधारित है
Benjamin Delpyhttps://github.com/gentilkiwi/Get-WinStation का कोड Mimikatz के ts::sessions कमांड के कोड से प्रेरित है
Dan Portshttps://github.com/danports/Get-Winstation का मार्शलिंग कोड आंशिक रूप से Cassia परियोजना से कॉपी किया गया है
Mazdakhttps://www.codeproject.com/Articles/2937/Getting-local-groups-and-member-names-in-CGet-LocalGroupMember cmdlet के लिए नेटिव फ़ंक्शन कॉल
Rex Loganhttps://stackoverflow.com/a/1148861Get-NetNeighbor cmdlet का कोड