File tree Expand file tree Collapse file tree 1 file changed +38
-0
lines changed
documentation/modules/exploit/linux/http Expand file tree Collapse file tree 1 file changed +38
-0
lines changed Original file line number Diff line number Diff line change
1
+ ## Vulnerable Application
2
+ This module exploits multiple vulnerabilities in order to obtain pre-auth command injection the multiple Zyxel device models.
3
+ The exploit chain uses CVE-2023 -33012 which is a command injection vulnerability which can be exploited when uploading a
4
+ new configuration to /ztp/cgi-bin/parse_config.py by appending a command to the ` option ipaddr ` field.
5
+
6
+ The command injection is length limited to 0x14 bytes and is why this exploit chains a .qsr file write vulnerability as
7
+ well in order to write the payload to a file which has no length limit and then call the payload with the command
8
+ injection.
9
+
10
+ Two caveats of this exploit chain were described by Jacob Baines in the following
11
+ [ blog post] ( https://vulncheck.com/blog/zyxel-cve-2023-33012#you-get-one-shot ) .
12
+ 1 . In order for the target to be vulnerable Cloud Management Mode (SD-WAN mode) must be enable (it is not by default).
13
+ 2 . The target can only be exploited once due to the order of operations in which the exploit functions.
14
+
15
+ | Product | Affected Versions |
16
+ | -----------------------------------| ----------------------------------|
17
+ | ATP | V5.10 through V5.36 Patch 2 |
18
+ | USG FLEX | V5.00 through V5.36 Patch 2 |
19
+ | USG FLEX 50(W) / USG20(W)-VPN | V5.10 through V5.36 Patch 2 |
20
+ | VPN | V5.00 through V5.36 Patch 2 |
21
+
22
+ ### Setup
23
+
24
+ This module was tested against USG Flex Version (???). To test this module you will need to acquire a hardware device
25
+ running one of the vulnerable firmware versions listed above.
26
+
27
+
28
+ ## Verification Steps
29
+
30
+ 1 . Start msfconsole
31
+ 1 . Do: ` use zyxel_parse_config_rce `
32
+ 1 . Set the ` RHOST ` and ` LHOST `
33
+ 1 . Run the module
34
+ 1 . Receive a Meterpreter session as the ` root ` user.
35
+
36
+ ## Scenarios
37
+ ### USG Flex Version (???)
38
+
You can’t perform that action at this time.
0 commit comments