CVE-2026-8441
Full vulnerability record from the local CVENow database.
Description
The WP Review Slider Pro plugin for WordPress is vulnerable to SQL Injection via the 'notinstring' parameter of the wprp_load_more_revs AJAX action in versions up to, and including, 12.7.2. The parameter is read via $_POST['notinstring'] and passed through sanitize_text_field() — which strips HTML and whitespace but does not provide SQL safety. The value is then concatenated directly into a numeric/unquoted `AND id NOT IN (...)` clause and executed via $wpdb->get_results() without $wpdb->prepare() or intval() casting. Because the value sits in an unquoted numeric context, WordPress's wp_magic_quotes protection (which only escapes embedded quotes) is ineffective. The AJAX hook is registered via wp_ajax_nopriv_wprp_load_more_revs, and the required check_ajax_referer nonce is publicly available via wp_localize_script on any frontend page that renders the plugin shortcode, so an unauthenticated attacker who can reach a public page hosting the plugin can extract arbitrary data from the database via blind/time-based injection.
View original CVE JSON
{
"id": "CVE-2026-8441",
"sourceIdentifier": "[email protected]",
"published": "2026-07-02T10:16:28.617",
"lastModified": "2026-10-25T21:10:00.770",
"vulnStatus": "Deferred",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "The WP Review Slider Pro plugin for WordPress is vulnerable to SQL Injection via the 'notinstring' parameter of the wprp_load_more_revs AJAX action in versions up to, and including, 12.7.2. The parameter is read via $_POST['notinstring'] and passed through sanitize_text_field() — which strips HTML and whitespace but does not provide SQL safety. The value is then concatenated directly into a numeric/unquoted `AND id NOT IN (...)` clause and executed via $wpdb->get_results() without $wpdb->prepare() or intval() casting. Because the value sits in an unquoted numeric context, WordPress's wp_magic_quotes protection (which only escapes embedded quotes) is ineffective. The AJAX hook is registered via wp_ajax_nopriv_wprp_load_more_revs, and the required check_ajax_referer nonce is publicly available via wp_localize_script on any frontend page that renders the plugin shortcode, so an unauthenticated attacker who can reach a public page hosting the plugin can extract arbitrary data from the database via blind/time-based injection."
},
{
"lang": "es",
"value": "El plugin WP Review Slider Pro para WordPress es vulnerable a inyección SQL a través del parámetro ’notinstring’ de la acción AJAX wprp_load_more_revs en versiones hasta la 12.7.2, inclusive. El parámetro se lee a través de parámetro y se pasa por sanitize_text_field() - que elimina HTML y espacios en blanco pero no proporciona seguridad SQL. El valor se concatena directamente en una cláusula numérica/sin comillas ’AND id NOT IN (...)’ y se ejecuta a través de $wpdb -> get_results() sin $wpdb -> prepare() ni la conversión intval(). Debido a que el valor se encuentra en un contexto numérico sin comillas, la protección wp_magic_quotes de WordPress (que solo escapa comillas incrustadas) es ineficaz. El hook AJAX se registra a través de wp_ajax_nopriv_wprp_load_more_revs, y el nonce check_ajax_referer requerido está disponible públicamente a través de wp_localize_script en cualquier página de frontend que renderice el shortcode del plugin, por lo que un atacante no autenticado que pueda acceder a una página pública que aloje el plugin puede extraer datos arbitrarios de la base de datos a través de inyección ciega/basada en tiempo."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "https://wpreviewslider.com/",
"product": "WP Review Slider Pro",
"defaultStatus": "unaffected",
"versions": [
{
"version": "0",
"lessThanOrEqual": "12.7.2",
"versionType": "semver",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "HIGH",
"integrityImpact": "NONE",
"availabilityImpact": "NONE"
},
"exploitabilityScore": 3.9,
"impactScore": 3.6
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-07-02T12:36:37.994665Z",
"id": "CVE-2026-8441",
"options": [
{
"exploitation": "none"
},
{
"automatable": "yes"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-89"
}
]
}
],
"references": [
{
"url": "https://wpreviewslider.userecho.com/knowledge-bases/2/articles/88-change-log",
"source": "[email protected]"
},
{
"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/396ba24f-e0f7-4374-a9ce-d9abddb87b39?source=cve",
"source": "[email protected]"
}
]
}