{"schemaVersion":3,"id":"CVE-2018-25115","aliases":[],"status":"published","duplicateOf":null,"title":null,"description":"Multiple D-Link DIR-series routers, including DIR-110, DIR-412, DIR-600, DIR-610, DIR-615, DIR-645, and DIR-815 firmware version 1.03, contain a vulnerability in the service.cgi endpoint that allows remote attackers to execute arbitrary system commands without authentication. The flaw stems from improper input handling in the EVENT=CHECKFW parameter, which is passed directly to the system shell without sanitization. A crafted HTTP POST request can inject commands that are executed with root privileges, resulting in full device compromise. These router models are no longer supported at the time of assignment and affected version ranges may vary. Exploitation evidence was first observed by the Shadowserver Foundation on 2025-08-21 UTC.","dates":{"published":"2025-08-27T21:24:23.427Z","modified":"2026-05-25T23:40:59.072Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":10,"severity":"critical","version":"4.0","versionLabel":"v4.0","source":"CVE.org","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"4.0","versionLabel":"v4.0","source":"CVE.org","score":10,"severity":"critical","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H","exploitability":null,"impact":null,"computed":false},{"version":"4.0","versionLabel":"v4.0","source":"NVD","score":10,"severity":"critical","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","exploitability":null,"impact":null,"computed":false},{"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}]},"epss":{"probability":0.10133,"percentile":0.95614,"severity":"medium","asOf":"2026-10-19T00:00:00.000Z","change":{"pp":-0.2930000000000002,"baselineDate":"2026-09-19T00:00:00.000Z","baselineScore":0.10426},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.09942,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.09942,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.10133,"percentile":0.95614}],"last30":[{"date":"2026-09-19T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.10426,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.10133,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.10133,"percentile":0.95614}]},"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":"43496","name":"D-Link Routers 110/412/615/815 < 1.03 - 'service.cgi' Arbitrary Code Execution","source":"exploit-database","url":"https://www.exploit-db.com/exploits/43496","maturity":"poc","reliabilityScore":0.5,"verified":false,"type":null,"platforms":["hardware"],"requiresAuth":null,"exploitdb":{"verified":false,"type":"webapps","platform":"hardware","file":"exploits/hardware/webapps/43496.py","codes":[]},"metasploit":null},{"id":"GITHUB_CR0N1C_DLINK_SHELL_POC","name":"Dlink Shell Poc","source":"github","url":"https://github.com/Cr0n1c/dlink_shell_poc/blob/master/dlink_auth_rce","maturity":"poc","reliabilityScore":0.3,"verified":false,"type":null,"platforms":[],"requiresAuth":null,"exploitdb":null,"metasploit":null}],"exploitCount":2,"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":"d-link","product":"dir-110","name":"DIR-110","label":"dir-110","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":"/vendor/d-link/dir-110"},{"vendor":"d-link","product":"dir-412","name":"DIR-412","label":"dir-412","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":"/vendor/d-link/dir-412"},{"vendor":"d-link","product":"dir-600","name":"DIR-600","label":"dir-600","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":"/vendor/d-link/dir-600"},{"vendor":"d-link","product":"dir-615_firmware","name":"dir-615 firmware","label":"dir-615_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":"/vendor/d-link/dir-615"},{"vendor":"d-link","product":"dir-645","name":"DIR-645","label":"dir-645","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":"/vendor/d-link/dir-645"},{"vendor":"d-link","product":"dir-815","name":"DIR-815","label":"dir-815","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"1.03","noFixRecorded":false,"fixedIn":null}],"versionsText":"1.03","eol":null,"hubHref":"/vendor/d-link/dir-815"},{"vendor":"dlink","product":"dir-110_firmware","name":"dir-110 firmware","label":"dir-110_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"na","noFixRecorded":false,"fixedIn":null}],"versionsText":"na","eol":null,"hubHref":"/vendor/dlink/dir-110"},{"vendor":"dlink","product":"dir-412_firmware","name":"dir-412 firmware","label":"dir-412_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"na","noFixRecorded":false,"fixedIn":null}],"versionsText":"na","eol":null,"hubHref":"/vendor/dlink/dir-412"},{"vendor":"dlink","product":"dir-600_firmware","name":"dir-600 firmware","label":"dir-600_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"na","noFixRecorded":false,"fixedIn":null}],"versionsText":"na","eol":null,"hubHref":"/vendor/dlink/dir-600"},{"vendor":"dlink","product":"dir-610_firmware","name":"dir-610 firmware","label":"dir-610_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"na","noFixRecorded":false,"fixedIn":null}],"versionsText":"na","eol":null,"hubHref":"/vendor/dlink/dir-610"},{"vendor":"dlink","product":"dir-615_firmware","name":"dir-615 firmware","label":"dir-615_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"na","noFixRecorded":false,"fixedIn":null}],"versionsText":"na","eol":null,"hubHref":"/vendor/dlink/dir-615"},{"vendor":"dlink","product":"dir-645_firmware","name":"dir-645 firmware","label":"dir-645_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"na","noFixRecorded":false,"fixedIn":null}],"versionsText":"na","eol":null,"hubHref":"/vendor/dlink/dir-645"},{"vendor":"dlink","product":"dir-815_firmware","name":"dir-815 firmware","label":"dir-815_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"1.03","noFixRecorded":false,"fixedIn":null}],"versionsText":"1.03","eol":null,"hubHref":"/vendor/dlink/dir-815"}],"affectedCount":13,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/Cr0n1c/dlink_shell_poc/blob/master/dlink_auth_rce","label":"github.com/Cr0n1c/dlink_shell_poc/blob/master/dlink_auth_rce","hostname":"github.com","tags":["Technical Description","Exploit"]},{"url":"https://www.exploit-db.com/exploits/43496","label":"www.exploit-db.com/exploits/43496","hostname":"www.exploit-db.com","tags":["Exploit"]},{"url":"https://legacy.us.dlink.com/","label":"legacy.us.dlink.com","hostname":"legacy.us.dlink.com","tags":["Product"]},{"url":"https://support.dlink.com/EndOfLifePolicy.aspx","label":"support.dlink.com/EndOfLifePolicy.aspx","hostname":"support.dlink.com","tags":["Product"]},{"url":"https://www.vulncheck.com/advisories/dlink-dir-rce-service-cgi","label":"www.vulncheck.com/advisories/dlink-dir-rce-service-cgi","hostname":"www.vulncheck.com","tags":["Third Party Advisory"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2025-08-27T21:24:23.427Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-05-25T23:40:59.072Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":90,"level":"critical","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-20T05:29:53.628Z","stale":false,"partial":false}}