Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

FeedsContactPrivacy© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
WmiExec — Execute Windows commands remotely and capture output using only WMI and PowerShell (not remoting). | Kitploit
Tools/GitHubGitHub/onescripter/wmiexec
Lateral MovementScripting & AutomationPost-ExploitationPenetration TestingCommand and ControlUtilities & FrameworksRed TeamingRemote Access Tool
GitHubonescripter/wmiexec

WmiExec

Execute Windows commands remotely and capture output using only WMI and PowerShell (not remoting).

View Repository
661112 years agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

WmiExec.ps1

Remote execution tools for Windows that rely only on WMI and PowerShell.

Execute console commands remotely and capture stdout/stderr streams without relying on PowerShell Remoting, WinRM or PsExec.

Examples

Blog post and video about this technique.

The example below shows you how WmiExec can accept the command string as a value from the pipeline.

PS C:\ "Get-ChildItem C:\" | .\WmiExec.ps1 -ComputerName "server1"
Running the following command on: server1...
Get-ChildItem C:\
PID: 5580 - Waiting for remote command to finish...
PID: 5580 - Waiting for remote command to finish...
Result...


    Directory: C:\


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       28.06.2018     15:16                PerfLogs
d-r---       09.09.2019     15:19                Program Files
d-r---       07.10.2019     08:36                Program Files (x86)
d-r---       10.10.2019     10:51                Users
d-----       10.10.2019     16:00                Windows

The example below shows you the object type that is returned.

PS C:\ $result = .\WmiExec.ps1 -ComputerName "server1" -Command "Get-ChildItem C:\"
Running the following command on: server1...
Get-ChildItem C:\
PID: 5580 - Waiting for remote command to finish...
PID: 5580 - Waiting for remote command to finish...
Result...
PS C:\ $result.GetType()

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     String                                   System.Object

Twitter https://twitter.com/OneScripter

Do even more cool stuff like create web GUIs for your PowerShell scripts that leverage RBAC, using System Frontier. https://systemfrontier.com/powershell

Download Tool