{"schemaVersion":3,"id":"CVE-2019-18370","aliases":[],"status":"published","duplicateOf":null,"title":null,"description":"An issue was discovered on Xiaomi Mi WiFi R3G devices before 2.28.23-stable. The backup file is in tar.gz format. After uploading, the application uses the tar zxf command to decompress, so one can control the contents of the files in the decompressed directory. In addition, the application's sh script for testing upload and download speeds reads a URL list from /tmp/speedtest_urls.xml, and there is a command injection vulnerability, as demonstrated by api/xqnetdetect/netspeed.","dates":{"published":"2019-10-23T20:01:55.000Z","modified":"2024-08-05T01:54:14.142Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":9.8,"severity":"critical","version":"3.1","versionLabel":"v3.1","source":"NVD","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":9.8,"severity":"critical","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","exploitability":null,"impact":null,"computed":false},{"version":"2.0","versionLabel":"v2.0","source":"NVD","score":7.5,"severity":"high","vector":"AV:N/AC:L/Au:N/C:P/I:P/A:P","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.40295,"percentile":0.98632,"severity":"high","asOf":"2026-10-20T00:00:00.000Z","change":{"pp":0,"baselineDate":"2026-09-20T00:00:00.000Z","baselineScore":0.40295},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.40295,"percentile":0.98632}],"last30":[{"date":"2026-09-20T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.40295,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.40295,"percentile":0.98632}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[{"id":"GITHUB_ULTRAMANGAIA_XIAOMI_MI_WIFI_R3G_VULNERABILITY_POC","name":"Xiaomi Mi Wifi R3G Vulnerability Poc","source":"github","url":"https://github.com/UltramanGaia/Xiaomi_Mi_WiFi_R3G_Vulnerability_POC/blob/master/remote_command_execution_vulnerability.py","maturity":"poc","reliabilityScore":0.3,"verified":false,"type":null,"platforms":[],"requiresAuth":null,"exploitdb":null,"metasploit":null}],"exploitCount":1,"weaknesses":[{"id":"CWE-78","name":"Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')","description":"The product constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/78.html"}],"affected":[{"vendor":"mi","product":"millet_router_3g_firmware","name":"millet router 3g firmware","label":"millet_router_3g_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"< 2.28.23","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 2.28.23","eol":null,"hubHref":"/vendor/mi/millet_router_3g"}],"affectedCount":1,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/UltramanGaia/Xiaomi_Mi_WiFi_R3G_Vulnerability_POC/blob/master/remote_command_execution_vulnerability.py","label":"github.com/UltramanGaia/…","hostname":"github.com","tags":["X Refsource MISC","Exploit","Third Party Advisory"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2019-10-23T20:01:55.000Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2024-08-05T01:54:14.142Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":70,"level":"high","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-20T21:20:31.648Z","stale":false,"partial":false}}