{"id":"CVE-2026-10141","kind":"vulnerability","aliases":["CVE-2026-10141"],"related":[],"title":"TOTOLINK X2000R router: unsigned firmware accepted, enabling malicious firmware install","description":"A Unsigned Firmware vulnerability exists in the boa Firmware Update functionality of X2000R (version(s): TOTOLINK-X2000R-Gh-V1.0.0-B20250421.1327). A specially crafted firmware binary can lead to arbitrary firmware update. An attacker can make an authenticated HTTP request to trigger this vulnerability.","summary":"The boa web server on the TOTOLINK X2000R (build TOTOLINK-X2000R-Gh-V1.0.0-B20250421.1327) accepts firmware images that pass only a model-string and additive checksum test. It never verifies a cryptographic signature. An attacker with admin login can flash arbitrary firmware through /boafrm/formUpload or /boafrm/formUploadFile and persist on the router. The CVSS 9.1 score assumes high privileges, so it is mainly a persistence step after the same build's many auth-required RCE bugs or stolen credentials.","severity":"critical","cvss":9.1,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"TOTOLINK X2000R","fixed":[],"affected":"TOTOLINK-X2000R-Gh-V1.0.0-B20250421.1327","ecosystem":"firmware"}],"ecosystems":[],"tags":["boa","firmware","infrastructure","routers","self-hosted","totolink","x2000r"],"not_affected_if":["admin-interface-not-reachable","no-web-admin-exposure","other-firmware-versions","other-totolink-models"],"how_to_check":"In the router admin UI, check the firmware version (Status page). Build TOTOLINK-X2000R-Gh-V1.0.0-B20250421.1327 is affected. Also check whether the admin interface is reachable from WAN (remote management setting) or from untrusted LAN/guest segments.","fix":"No fixed firmware published as of 2026-10-23 (vendor acknowledged 2026-06-25, no patch listed by Talos). Mitigate: disable remote/WAN management, change the default admin password, restrict admin access to a trusted LAN host, and watch totolink.net for a new X2000R firmware. Replace the device if none ships.","status":"open","published_at":"2026-10-20T21:17:16+00:00","first_seen_at":"2026-10-23T21:57:21+00:00","triaged_at":"2026-10-23T22:39:15+00:00","updated_at":"2026-10-23T23:16:56+00:00","category":"infrastructure","confidence":0.8,"triage":{"at":"2026-10-23T22:39:15Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"network","title":"TOTOLINK X2000R router: unsigned firmware accepted, enabling malicious firmware install","impact":"high","summary":"The boa web interface of the TOTOLINK X2000R router accepts firmware images without verifying a signature, affecting version TOTOLINK-X2000R-Gh-V1.0.0-B20250421.1327. An attacker holding a login can upload a crafted firmware binary and replace the router's software.","category":"infrastructure","who_cares":["totolink","x2000r","routers","self-hosted"],"confidence":0.6,"needs_auth":"yes","worst_case":"attacker replaces router firmware and controls the device and traffic","analyst_note":"Check the NVD entry and vendor advisory for the fixed firmware version and whether the admin web interface is reachable from the internet.","how_to_check":"unknown","needs_analyst":true,"not_affected_if":["other-firmware-versions","no-web-admin-exposure"],"user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"critical"},"cost_usd":0.000487,"input_tokens":2958,"output_tokens":382,"severity_before":"critical"},"analyst_status":"done","analyst_note":"Check the NVD entry and vendor advisory for the fixed firmware version and whether the admin web interface is reachable from the internet.","search":"'-10141':13A,16A '-2026':12A,15A '/boafrm/formupload':74B '/boafrm/formuploadfile':76B '0.0':42B,130C '9.1':84B 'accept':6A,44B 'addit':55B 'admin':67B 'arbitrari':71B,140C 'assum':86B 'attack':65B,144C 'auth':103B 'auth-requir':102B 'authent':148C 'b20250421.1327':43B,131C 'binari':136C 'boa':19B,29B,117C 'bug':106B 'build':36B,99B 'checksum':56B 'craft':134C 'credenti':109B 'cryptograph':62B 'cve':11A,14A 'cvss':83B 'enabl':7A 'exist':114C 'firmwar':5A,9A,20B,45B,72B,112C,118C,135C,141C 'flash':70B 'function':120C 'gh':40B,128C 'high':87B 'host':25B 'http':149C 'imag':46B 'infrastructur':21B 'instal':10A 'lead':138C 'login':68B 'main':92B 'make':146C 'malici':8A 'mani':101B 'model':52B 'model-str':51B 'never':59B 'pass':48B 'persist':78B,94B 'privileg':88B 'rce':105B 'request':150C 'requir':104B 'router':3A,22B,81B 'score':85B 'self':24B 'self-host':23B 'server':31B 'signatur':63B 'special':133C 'step':95B 'stolen':108B 'string':53B 'test':57B 'totolink':1A,17A,26B,34B,38B,126C 'totolink-x2000r-gh-v1':37B,125C 'trigger':152C 'unsign':4A,111C 'updat':119C,142C 'v1':41B,129C 'verifi':60B 'version':123C 'vulner':113C,154C 'web':30B 'x2000r':2A,18A,27B,35B,39B,122C,127C","nicknames":[],"mitigations":[],"who_affected":null,"tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-20T21:17:16+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H","cvss_by":"talos-cna@cisco.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-10141","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-10141","severity":null,"published_at":"2026-10-20T21:17:16+00:00","modified_at":"2026-10-22T15:31:24+00:00","first_seen_at":"2026-10-23T21:57:21+00:00","fetched_at":"2026-10-23T22:28:58+00:00","note":null},{"source":"analyst","external_id":"CVE-2026-10141:405","url":null,"severity":null,"published_at":"2026-10-23T23:16:56+00:00","modified_at":"2026-10-23T23:16:56+00:00","first_seen_at":"2026-10-23T23:16:56+00:00","fetched_at":"2026-10-23T23:16:56+00:00","note":"Read Talos TALOS-2026-2440 and NVD: boa formUpload/formUploadFile checks only magic, model string and additive checksum, no signature. No vendor fix: Totolink (Zioncom) acknowledged 2026-06-25, no patch by 2026-09-15 follow-up. No exploitation or PoC found; no X posts. Part of a batch of ~30 Talos CVEs on the same build."}],"documents":[{"id":1869,"url":"https://talosintelligence.com/vulnerability_reports/TALOS-2026-2440","title":"TALOS-2026-2440 Totolink X2000R boa Firmware Update Unsigned Firmware","kind":"advisory","source":"analyst","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":null},{"id":1870,"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-10141","title":"NVD CVE-2026-10141","kind":"advisory","source":"analyst","text":null,"published_at":null,"relation":"describes","confidence":null,"note":null}],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}