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
CVE-2026-33693 — CVE-2026-33693: SSRF mediante evasión de 0.0.0.0 en activitypub-federation-rust v4_is_invalid() (CVSS 6.5 Moderada) | Kitploit
Herramientas/GitHubGitHub/snailsploit/cve-2026-33693
ReconocimientoAnálisis de VulnerabilidadesExplotaciónSeguridad WebPapers e InvestigaciónAprendizaje y Educación
GitHubsnailsploit/cve-2026-33693

CVE-2026-33693

CVE-2026-33693: SSRF mediante evasión de 0.0.0.0 en activitypub-federation-rust v4_is_invalid() (CVSS 6.5 Moderada)

Ver Repositorio
hace 3 mesesAú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

CVE-2026-33693: SSRF mediante bypass de 0.0.0.0 en v4_is_invalid() de activitypub-federation-rust (CVSS 6.5 Moderado)

GHSA CVE CVSS Platform CWE

Palabras clave: SSRF, 0.0.0.0, bypass de validación de IP, activitypub-federation, Lemmy, Rust, ActivityPub


Tabla de contenidos

  • Descripción general
  • Detalles de la vulnerabilidad
  • Análisis técnico
  • Cadena de ataque
  • Impacto
  • Mitigación
  • Métricas CVSS v3.1
  • Cronología
  • Referencias
  • Contacto
  • Descargo de responsabilidad

Descripción general

Existe una vulnerabilidad de Server-Side Request Forgery (SSRF) en la librería activitypub-federation-rust (utilizada por Lemmy y más de 6 proyectos derivados) debido a una comprobación incompleta de validación de direcciones IP en la función v4_is_invalid(). La función no llama a is_unspecified(), lo que permite a un atacante eludir las protecciones SSRF apuntando a 0.0.0.0, que se resuelve a localhost en la mayoría de los sistemas.

  • Paquete: activitypub_federation (Rust/cargo)
  • Versiones afectadas: <= 0.7.1
  • Corregido en: PR #162

Detalles de la vulnerabilidad

La función v4_is_invalid() en src/utils.rs valida direcciones IPv4 para bloquear el acceso a la red interna. Comprueba loopback (127.0.0.0/8), rangos privados (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), link-local (169.254.0.0/16) y broadcast (255.255.255.255), pero no comprueba la dirección no especificada 0.0.0.0.

En la mayoría de los sistemas, 0.0.0.0 se resuelve a la interfaz loopback, otorgando el mismo acceso que 127.0.0.1.

Hallazgo secundario: También existe una vulnerabilidad de DNS Rebinding / TOCTOU donde lookup_host() resuelve un nombre de host y valida la IP, pero una llamada separada de reqwest realiza una segunda resolución DNS, lo que permite a un atacante servir primero una IP segura y luego volver a vincular (rebind) a una IP interna en la segunda resolución.


Análisis técnico

Código vulnerable (src/utils.rs)

root@kitploit:~
fn v4_is_invalid(ip: &Ipv4Addr) -> bool {
    ip.is_loopback()
        || ip.is_private()
        || ip.is_link_local()
        || ip.is_broadcast()
        // MISSING: || ip.is_unspecified()  <- 0.0.0.0 not blocked
}

Código corregido

root@kitploit:~
fn v4_is_invalid(ip: &Ipv4Addr) -> bool {
    ip.is_loopback()
        || ip.is_private()
        || ip.is_link_local()
        || ip.is_broadcast()
        || ip.is_unspecified()  // <- Now blocks 0.0.0.0
}

Cadena de ataque

root@kitploit:~
+---------------------------------------------------+
|           SSRF via 0.0.0.0 Bypass                 |
+---------------------------------------------------+
|                                                   |
|  1. Attacker hosts ActivityPub object with        |
|     URL pointing to http://0.0.0.0:<port>/path    |
|                                                   |
|  2. Lemmy instance fetches the object via         |
|     activitypub-federation-rust                   |
|                                                   |
|  3. v4_is_invalid() checks IP address:            |
|     x is_loopback()     -> false (not 127.x)     |
|     x is_private()      -> false (not RFC1918)    |
|     x is_link_local()   -> false (not 169.254.x) |
|     x is_broadcast()    -> false (not 255.x)     |
|     x is_unspecified()  -> NOT CHECKED            |
|     Result: 0.0.0.0 PASSES validation            |
|                                                   |
|  4. Request sent to 0.0.0.0 -> resolves to       |
|     localhost -> accesses internal services       |
|                                                   |
|  5. Internal service data returned to attacker    |
|     via ActivityPub federation response           |
|                                                   |
+---------------------------------------------------+

Impacto

Exposición en proyectos derivados: La crate activitypub-federation-rust es utilizada por más de 6 proyectos del ecosistema del Fediverso:

Un atacante puede:

  • Acceder a servicios internos (bases de datos, paneles de administración, endpoints de metadatos en la nube)
  • Escanear puertos internos en el servidor de Lemmy/federación
  • Exfiltrar credenciales de la nube a través de APIs de metadatos

Mitigación

  • Actualiza activitypub-federation a una versión que contenga la corrección del PR #162
  • Usuarios de Lemmy: Aplica el backport de lemmy#6411

Métricas CVSS v3.1


Cronología


Referencias

  • GHSA-q537-8fr5-cw35
  • CVE-2026-33693
  • PR de corrección #162
  • PR de backport #6411 de Lemmy
  • CWE-918: Server-Side Request Forgery

Contacto

  • Sitio web: snailsploit.com
  • GitHub: @SnailSploit
  • LinkedIn: /in/kaiaizen

Descargo de responsabilidad

Este repositorio se publica con fines educativos y defensivos como parte de una divulgación responsable de vulnerabilidades. La vulnerabilidad fue reportada a través del proceso de Informe Privado de Vulnerabilidades (PVRT) de GitHub. No se realizó ninguna explotación contra sistemas en producción. Todas las pruebas se llevaron a cabo en entornos aislados.


📚 Documentación y autor

El informe completo de este proyecto, la metodología y la investigación relacionada se encuentran en:

https://snailsploit.com/security-research/cves/cve-2026-33693/

Creado por Kai Aizen — investigador independiente de seguridad ofensiva.

snailsploit.com · Investigación · Frameworks · GitHub · LinkedIn · ResearchGate · X/Twitter

Mismo ataque. Diferente sustrato.

Descargar herramienta
ProyectoEstrellasDescripción
Lemmy13.7K+Agregador de enlaces para el Fediverso
hatsu--Puente de ActivityPub
gill--Alojamiento Git con federación
ties--Red social
fediscus--Discusiones federadas
fediverse-axum--Framework de ActivityPub
MétricaValor
Vector de ataqueRed
Complejidad de ataqueBaja
Privilegios requeridosNinguno
Interacción del usuarioNinguna
AlcanceSin cambios
ConfidencialidadBaja
IntegridadBaja
DisponibilidadNinguna
Vector CVSSCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Puntuación6.5 (Moderado)
FechaEvento
2026-03-11Vulnerabilidad reportada a través del PVRT de GitHub
2026-03-13El mantenedor confirmó el hallazgo
2026-03-13PR de corrección #162 enviado
2026-03-13Aviso cerrado accidentalmente
2026-03-16Aviso reabierto
2026-03-23CVE-2026-33693 asignado y aviso publicado