CVE-2026-55598 in PinePodsinformación

Resumen

por VulDB • 2026-10-30

PinePods es un sistema completo de gestión de podcasts autoalojado escrito en Rust. Antes de la versión 0.9.0, un usuario autenticado puede suscribirse a un feed RSS controlado por el atacante mediante `POST /api/data/add_podcast` en `rust-api/src/handlers/podcasts.rs`. Las funciones `get_podcast_values` y `add_episodes` en `rust-api/src/database.rs` analizan el feed con `feed-rs` y almacenan la etiqueta `<enclosure url>` literalmente en `Episodes.episodeurl` sin validar el host/IP de destino. La llamada a `POST /api/data/download_podcast` invoca `spawn_download_podcast_episode` y `download_episode_and_wait()` en `rust-api/src/services/tasks.rs`, que envía una petición GET con `reqwest` a la URL almacenada y guarda y registra la respuesta en `DownloadedEpisodes` para su recuperación posterior. La ruta `estimate_duration_from_audio_url_async()` en `rust-api/src/database.rs` también realiza una petición HEAD no validada durante la adición o actualización del feed. El seguimiento de redirecciones predeterminado permite que una URL de enclosure inicialmente externa se redirija a un destino interno. Un usuario con privilegios bajos puede realizar peticiones GET/HEAD desde el lado del servidor hacia servicios de metadatos accesibles en loopback, redes privadas y la nube, y leer las respuestas internas descargadas, lo que permite la enumeración de servicios internos, la divulgación de datos confidenciales y posible robo de credenciales mediante metadata. La descarga de episodios requiere que estén habilitados los descargas desde el servidor, configuración predeterminada; también se admite el registro auto-gestionado (self-service signup). Este problema está corregido en la versión 0.9.0.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Responsable

GitHub M

Reservar

2026-06-17

Divulgación

2026-10-30

Moderación

aceptado

Artículo

VDB-429352

EPSS

0.00000

KEV

no

Actividades

muy bajo

Fuentes

Do you want to use VulDB in your project?

Use the official API to access entries easily!