You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| CommandLine | String | powershell.exe | The complete command line to execute. |
65
+
| Hide | Switch | None | If present, the process is not visible. |
66
66
| RedirectKind | Choice | None | If the process input/output needs to be redirected to an external source (as discussed below)… |
67
-
| Address | String | None | Used if the **RedirectKind** is set (as described below). |
68
-
| Port | Int (R: 0-65535) | None | Used if the **RedirectKind** is set (as described below). |
67
+
| Address | String | None | Used if the **RedirectKind** is set (as described below). |
68
+
| Port | Int (R: 0-65535) | None | Used if the **RedirectKind** is set (as described below). |
69
69
70
70
#### Advanced Usage : RedirectKind Flag
71
71
72
72
##### `None` (Default)
73
73
74
74
No specific redirection is used; the process is spawned normally. To interact with the process, you must do so through the desktop.
75
75
76
-
##### `Reverse`
76
+
If RedirectKind Flag is specified, the `stdout`, `stderr`, and `stdin` of the process are redirected to a network socket. This setup enables interaction with the spawned process without requiring access to the desktop, which is particularly useful when the process is initiated from an SSH or WinRM session.
The `stdout`, `stderr`, and `stdin`of the process are redirected to a network socket in reverse mode (client -> server). This setup enables interaction with the spawned process without requiring access to the desktop, which is particularly useful when the process is initiated from an SSH or WinRM session.
86
+
In the context of a bind shell, the address specifies the network interface to bind to. Using `0.0.0.0` means the shell will listen on all available network interfaces, while `127.0.0.1` restricts it to the loopback interface, making it accessible only from the local machine.
79
87
80
-
Example:
88
+
Then, with netcat, connect to listener:
89
+
90
+
`````bash
91
+
nc 127.0.0.1 4444
92
+
`````
93
+
94
+
In the context of a bind shell, it is important to note that the temporary SYSTEM process acting as the **launcher** will remain in a hanging state until a client connects to the listener. Only one client can connect to the listener, only once. Once connected, an interactive SYSTEM process will be established. When the session/process, both the client and listener will be released, marking the termination of the **launcher**.
95
+
96
+
##### `Reverse`
81
97
82
98
Create a new Netcat listener (adapt the command according to your operating system and version of Netcat):
83
99
````bash
@@ -90,6 +106,8 @@ Then, spawn your interactive SYSTEM process:
In the context of a reverse shell, it is important to note that a listener must be started before executing the reverse shell command. If the listener is not active, the attempt to spawn an interactive SYSTEM process will fail.
110
+
93
111
Enjoy your SYSTEM shell 🐚
94
112
95
113

0 commit comments