admin/file.do in ObjectPlanet Opinio before 7.15 allows Unrestricted File Upload of executable JSP files, resulting in remote code execution, because filePath can have directory traversal and fileContent can be valid JSP code.
{"id": "CVE-2020-26806", "vendorId": null, "type": "cve", "bulletinFamily": "NVD", "title": "CVE-2020-26806", "description": "admin/file.do in ObjectPlanet Opinio before 7.15 allows Unrestricted File Upload of executable JSP files, resulting in remote code execution, because filePath can have directory traversal and fileContent can be valid JSP code.", "published": "2021-07-31T17:15:00", "modified": "2021-08-09T19:00:00", "cvss": {"score": 6.5, "vector": "AV:N/AC:L/Au:S/C:P/I:P/A:P"}, "cvss2": {"cvssV2": {"version": "2.0", "vectorString": "AV:N/AC:L/Au:S/C:P/I:P/A:P", "accessVector": "NETWORK", "accessComplexity": "LOW", "authentication": "SINGLE", "confidentialityImpact": "PARTIAL", "integrityImpact": "PARTIAL", "availabilityImpact": "PARTIAL", "baseScore": 6.5}, "severity": "MEDIUM", "exploitabilityScore": 8.0, "impactScore": 6.4, "acInsufInfo": false, "obtainAllPrivilege": false, "obtainUserPrivilege": false, "obtainOtherPrivilege": false, "userInteractionRequired": false}, "cvss3": {"cvssV3": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH", "baseScore": 8.8, "baseSeverity": "HIGH"}, "exploitabilityScore": 2.8, "impactScore": 5.9}, "href": "https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2020-26806", "reporter": "cve@mitre.org", "references": ["https://packetstormsecurity.com/files/163709/ObjectPlanet-Opinio-7.13-Shell-Upload.html", "https://www.objectplanet.com/opinio/changelog.html"], "cvelist": ["CVE-2020-26806"], "immutableFields": [], "lastseen": "2022-03-23T16:13:23", "viewCount": 72, "enchantments": {"dependencies": {"references": [{"type": "packetstorm", "idList": ["PACKETSTORM:163709"]}, {"type": "zdt", "idList": ["1337DAY-ID-36611"]}], "rev": 4}, "score": {"value": 4.6, "vector": "NONE"}, "twitter": {"counter": 4, "modified": "2021-08-01T08:55:54", "tweets": [{"link": "https://twitter.com/threatmeter/status/1421729725060366337", "text": "CVE-2020-26806 admin/file.do in ObjectPlanet Opinio before 7.15 allows Unrestricted File Upload of executable JSP files, resulting in remote code execution, because filePath can have directory traversal and fileContent can be valid JSP code. (CVSS:0.0) (\u2026 https://t.co/exd5lgjHne?amp=1"}, {"link": "https://twitter.com/threatmeter/status/1421729725060366337", "text": "CVE-2020-26806 admin/file.do in ObjectPlanet Opinio before 7.15 allows Unrestricted File Upload of executable JSP files, resulting in remote code execution, because filePath can have directory traversal and fileContent can be valid JSP code. (CVSS:0.0) (\u2026 https://t.co/exd5lgjHne?amp=1"}, {"link": "https://twitter.com/SecRiskRptSME/status/1421731330942017536", "text": "New/Modified vulnerability published July 31, 2021 at 10:15AM on the NVD: CVE-2020-26806 https://t.co/XAWxYxFZNv?amp=1 admin/file.do in ObjectPlanet Opinio before 7.15 allows Unrestricted File Upload of executable JSP files, resulting in remote code execution, because filePath can ha\u2026"}, {"link": "https://twitter.com/SecRiskRptSME/status/1421731330942017536", "text": "New/Modified vulnerability published July 31, 2021 at 10:15AM on the NVD: CVE-2020-26806 https://t.co/XAWxYxFZNv?amp=1 admin/file.do in ObjectPlanet Opinio before 7.15 allows Unrestricted File Upload of executable JSP files, resulting in remote code execution, because filePath can ha\u2026"}]}, "backreferences": {"references": [{"type": "packetstorm", "idList": ["PACKETSTORM:163709"]}, {"type": "zdt", "idList": ["1337DAY-ID-36611"]}]}, "exploitation": null, "vulnersScore": 4.6}, "_state": {"dependencies": 0}, "_internal": {}, "cna_cvss": {"cna": null, "cvss": {}}, "cpe": [], "cpe23": [], "cwe": ["CWE-434"], "affectedSoftware": [{"cpeName": "objectplanet:opinio", "version": "7.15", "operator": "lt", "name": "objectplanet opinio"}], "affectedConfiguration": [], "cpeConfiguration": {"CVE_data_version": "4.0", "nodes": [{"operator": "OR", "children": [], "cpe_match": [{"vulnerable": true, "cpe23Uri": "cpe:2.3:a:objectplanet:opinio:7.15:*:*:*:*:*:*:*", "versionEndExcluding": "7.15", "cpe_name": []}]}]}, "extraReferences": [{"url": "https://packetstormsecurity.com/files/163709/ObjectPlanet-Opinio-7.13-Shell-Upload.html", "name": "https://packetstormsecurity.com/files/163709/ObjectPlanet-Opinio-7.13-Shell-Upload.html", "refsource": "MISC", "tags": ["Exploit", "Third Party Advisory", "VDB Entry"]}, {"url": "https://www.objectplanet.com/opinio/changelog.html", "name": "https://www.objectplanet.com/opinio/changelog.html", "refsource": "CONFIRM", "tags": ["Release Notes", "Vendor Advisory"]}]}
{"zdt": [{"lastseen": "2021-12-03T01:55:46", "description": "", "cvss3": {"exploitabilityScore": 2.8, "cvssV3": {"baseSeverity": "HIGH", "confidentialityImpact": "HIGH", "attackComplexity": "LOW", "scope": "UNCHANGED", "attackVector": "NETWORK", "availabilityImpact": "HIGH", "integrityImpact": "HIGH", "baseScore": 8.8, "privilegesRequired": "LOW", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "userInteraction": "NONE", "version": "3.1"}, "impactScore": 5.9}, "published": "2021-07-30T00:00:00", "type": "zdt", "title": "ObjectPlanet Opinio 7.13 Shell Upload Vulnerability", "bulletinFamily": "exploit", "cvss2": {"severity": "MEDIUM", "exploitabilityScore": 8.0, "obtainAllPrivilege": false, "userInteractionRequired": false, "obtainOtherPrivilege": false, "cvssV2": {"accessComplexity": "LOW", "confidentialityImpact": "PARTIAL", "availabilityImpact": "PARTIAL", "integrityImpact": "PARTIAL", "baseScore": 6.5, "vectorString": "AV:N/AC:L/Au:S/C:P/I:P/A:P", "version": "2.0", "accessVector": "NETWORK", "authentication": "SINGLE"}, "acInsufInfo": false, "impactScore": 6.4, "obtainUserPrivilege": false}, "cvelist": ["CVE-2020-26806", "CVE-2020-26564"], "modified": "2021-07-30T00:00:00", "id": "1337DAY-ID-36611", "href": "https://0day.today/exploit/description/36611", "sourceData": "# Exploit Authors: Timothy Tan , Daniel Tan, Yu EnHui, Khor Yong Heng\n# CVE: CVE-2020-26806\n\n# Exploit Title: ObjectPlanet Opinio version 7.13 allows unrestricted file upload\n# Vendor Homepage: https://www.objectplanet.com/opinio/\n# Software Link: https://www.objectplanet.com/opinio/\n# Exploit Authors: Timothy Tan , Daniel Tan, Yu EnHui, Khor Yong Heng\n# CVE: CVE-2020-26806\n\n# Timeline\n- September 2020: Initial discovery\n- October 2020: Reported to ObjectPlanet\n- November 2020: Fix/patch provided by ObjectPlanet\n- July 2021: CVE-2020-26806\n\n# 1. Introduction\nOpinio is a survey management solution by ObjectPlanet that allows surveys to be designed, published and managed.\n\n# 2. Vulnerability Details\nObjectPlanet Opinio before version 7.13 is vulnerable to unrestricted file uploads\n\n# 3. Proof of Concept\n\n### Unrestricted File Upload leading to RCE ###\n\nStep 1: \n\nURL: /opinio/admin/file.do\n\nOpinio allows an administrative user to edit local CSS files. This file editing function however does not validate if the HTTP POST parameters are tampered with.\n\nPost parameters to tamper with:\n- filePath\n- fileContent\n\nThe base directory can be guessed via the information under Setup >> Edit System Settings , this page on Opinio shows the local directory of where Opinio was installed to. \n\nThe file path can be tampered with for e.g. : /upload/css/common/../../../admin/shell.jsp\nThe fileContent value was tampered with a JSP webshell for this PoC and a webshell was acheieved \nFor our PoC, we could view the web.xml file using an XXE vulnerability CVE-2020-26564 and identify which JSP files were allowed be loaded and replaced the contents of that JSP file with the webshell code\n\nThis vulnerability was confirmed by ObjectPlanet Opinio in their patch notes which can be found at : https://www.objectplanet.com/opinio/changelog.html\n\n-------------------------------------------------------\n\n# 4. Remediation\nApply the latest fix/patch from objectplanet.\n\n# 5. Credits\nTimothy Tan (https://sg.linkedin.com/in/timtjh)\nKhor Yong Heng (https://www.linkedin.com/in/khor-yong-heng-66108a120/)\nYu EnHui (https://www.linkedin.com/in/enhui-yu-88691b15b/)\nDaniel Tan (https://www.linkedin.com/in/dantanjk/)\n", "sourceHref": "https://0day.today/exploit/36611", "cvss": {"score": 6.5, "vector": "AV:N/AC:L/Au:S/C:P/I:P/A:P"}}], "packetstorm": [{"lastseen": "2021-07-30T17:28:37", "description": "", "cvss3": {}, "published": "2021-07-30T00:00:00", "type": "packetstorm", "title": "ObjectPlanet Opinio 7.13 Shell Upload", "bulletinFamily": "exploit", "cvss2": {}, "cvelist": ["CVE-2020-26564", "CVE-2020-26806"], "modified": "2021-07-30T00:00:00", "id": "PACKETSTORM:163709", "href": "https://packetstormsecurity.com/files/163709/ObjectPlanet-Opinio-7.13-Shell-Upload.html", "sourceData": "`# Exploit Authors: Timothy Tan , Daniel Tan, Yu EnHui, Khor Yong Heng \n# CVE: CVE-2020-26806 \n \n# Exploit Title: ObjectPlanet Opinio version 7.13 allows unrestricted file upload \n# Vendor Homepage: https://www.objectplanet.com/opinio/ \n# Software Link: https://www.objectplanet.com/opinio/ \n# Exploit Authors: Timothy Tan , Daniel Tan, Yu EnHui, Khor Yong Heng \n# CVE: CVE-2020-26806 \n \n# Timeline \n- September 2020: Initial discovery \n- October 2020: Reported to ObjectPlanet \n- November 2020: Fix/patch provided by ObjectPlanet \n- July 2021: CVE-2020-26806 \n \n# 1. Introduction \nOpinio is a survey management solution by ObjectPlanet that allows surveys to be designed, published and managed. \n \n# 2. Vulnerability Details \nObjectPlanet Opinio before version 7.13 is vulnerable to unrestricted file uploads \n \n# 3. Proof of Concept \n \n### Unrestricted File Upload leading to RCE ### \n \nStep 1: \n \nURL: /opinio/admin/file.do \n \nOpinio allows an administrative user to edit local CSS files. This file editing function however does not validate if the HTTP POST parameters are tampered with. \n \nPost parameters to tamper with: \n- filePath \n- fileContent \n \nThe base directory can be guessed via the information under Setup >> Edit System Settings , this page on Opinio shows the local directory of where Opinio was installed to. \n \nThe file path can be tampered with for e.g. : /upload/css/common/../../../admin/shell.jsp \nThe fileContent value was tampered with a JSP webshell for this PoC and a webshell was acheieved \nFor our PoC, we could view the web.xml file using an XXE vulnerability CVE-2020-26564 and identify which JSP files were allowed be loaded and replaced the contents of that JSP file with the webshell code \n \nThis vulnerability was confirmed by ObjectPlanet Opinio in their patch notes which can be found at : https://www.objectplanet.com/opinio/changelog.html \n \n------------------------------------------------------- \n \n# 4. Remediation \nApply the latest fix/patch from objectplanet. \n \n# 5. Credits \nTimothy Tan (https://sg.linkedin.com/in/timtjh) \nKhor Yong Heng (https://www.linkedin.com/in/khor-yong-heng-66108a120/) \nYu EnHui (https://www.linkedin.com/in/enhui-yu-88691b15b/) \nDaniel Tan (https://www.linkedin.com/in/dantanjk/) \n`\n", "sourceHref": "https://packetstormsecurity.com/files/download/163709/opinion713-shell.txt", "cvss": {"score": 0.0, "vector": "NONE"}}]}