Snailsploit

#2068de 56,329
120.4CVSS total
Vulnerabilidades · 18
Média
11
Alta
5
Crítica
2
PT-2026-50491
5.3
2026-06-17
Vllm · Vllm · CVE-2026-54236
**Nome do Software Vulnerável e Versões Afetadas** vLLM versões anteriores a 0.23.1rc0 **Descrição** Uma correção incompleta para um problema anterior de vazamento de memória permite que atacantes não autenticados vazem endereços de memória do heap. O sistema falha ao sanitizar adequadamente as mensagens de erro em vários caminhos de resposta, ecoando a representação de string de exceções diretamente para os clientes. Isso ocorre porque certas rotas capturam exceções internamente e constroem as respostas por conta própria, ignorando o manipulador global de exceções de sanitização, enquanto os frames de WebSocket ignoram completamente a cadeia de manipuladores. Detalhes técnicos incluem: - **Endpoints de API**: 'POST /v1/messages' e 'POST /v1/messages/count tokens' no roteador de API da Anthropic. - **Componentes Vulneráveis**: O conversor de streaming de Eventos Enviados pelo Servidor (SSE) em `vllm/entrypoints/anthropic/serving.py` e o WebSocket de fala-para-texto em tempo real em `vllm/entrypoints/speech to text/realtime/connection.py`. Um atacante pode explorar isso enviando bytes de imagem malformados através das partes de conteúdo de imagem da API de Mensagens da Anthropic. Isso faz com que a função `PIL.Image.open()` gere um `UnidentifiedImageError`, que inclui uma representação de objeto `BytesIO` contendo um endereço de memória do heap literal no campo `error.message` do corpo da resposta. **Recomendações** Atualize para a versão 0.23.1rc0 ou posterior. Como medida paliativa temporária, restrinja o acesso aos endpoints 'POST /v1/messages' e 'POST /v1/messages/count tokens' e ao WebSocket de fala-para-texto em tempo real para minimizar o risco de exploração.
PT-2026-50129
6.8
2026-06-16
Git · Pydantic-Ai · CVE-2026-48782
## Summary When an application using Pydantic AI opts a URL into `force download='allow-local'` (which disables the default block on private/internal IPs) **and runs on a network that routes the affected IPv6 transition forms (NAT64- or ISATAP-configured networks)**, the cloud-metadata blocklist could be bypassed by encoding the metadata IP in an IPv6 transition form that the previous fix did not decode — IPv4-compatible IPv6 (`::a.b.c.d`), the NAT64 RFC 8215 local-use prefix (`64:ff9b:1::/48`), operator-chosen NAT64 prefixes, or ISATAP. The IPv6 wrapper is then delivered to the underlying IPv4 metadata endpoint, exposing cloud IAM short-term credentials. **The bypass is exploitable only in environments whose network actually routes these forms** — NAT64-configured networks (IPv6-only or dual-stack-with-NAT64 deployments, including some Kubernetes setups) for the NAT64 variants, or networks with an ISATAP tunnel for ISATAP. A standard dual-stack cloud VM or container does not route them and is not affected in practice. The IPv4-compatible and Teredo variants are deprecated and addressed as defense-in-depth. This is an incomplete fix of [GHSA-cqp8-fcvh-x7r3](https://github.com/pydantic/pydantic-ai/security/advisories/GHSA-cqp8-fcvh-x7r3) / [CVE-2026-46678](https://nvd.nist.gov/vuln/detail/CVE-2026-46678) (itself a follow-up to [CVE-2026-25580](https://nvd.nist.gov/vuln/detail/CVE-2026-25580)). The prior remediation decoded only IPv4-mapped IPv6, 6to4, and the NAT64 well-known prefix; the metadata guarantee did not hold for the remaining transition forms. ## Severity **MEDIUM** — `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N` = **6.8** Same impact metrics and narrow attack surface as the parent advisory (AC:H): exploitation requires the application to have opted into `allow-local` on a URL influenced by untrusted input, and the NAT64/ISATAP variants additionally require the deployment network to route those forms. **CWE-918**: Server-Side Request Forgery (SSRF) ## Affected Versions | Package | Vulnerable | Patched | |---|---|---| | `pydantic-ai` | `>= 1.56.0, < 1.102.0`; `>= 2.0.0b1, < 2.0.0b3` | `1.102.0`; `2.0.0b3` | | `pydantic-ai-slim` | `>= 1.56.0, < 1.102.0`; `>= 2.0.0b1, < 2.0.0b3` | `1.102.0`; `2.0.0b3` | These transition forms have not been decoded since SSRF protection was introduced in `1.56.0`. ## Who Is Affected Users are affected **only if** their application explicitly opts a `FileUrl` (`ImageUrl`, `AudioUrl`, `VideoUrl`, `DocumentUrl`) into `force download='allow-local'` on a URL that is, or could be, influenced by untrusted input. Beyond that precondition, the affected encodings only reach a metadata endpoint in environments whose network actually routes them. The broadly-routable IPv4-mapped form was addressed in `1.99.0` (CVE-2026-46678); the additional forms addressed here require a **NAT64-configured network** (IPv6-only or dual-stack-with-NAT64 deployments, including some Kubernetes setups) for the NAT64 variants, or an **ISATAP tunnel** for the ISATAP variant. The IPv4-compatible and Teredo forms are deprecated and not routed by modern stacks; they are addressed as defense-in-depth. Most deployments on a standard dual-stack cloud VM or container are therefore not exploitable in practice, but the fix restores the "always blocked" guarantee for the environments that are. Users are **not** affected if they use any of the bundled integrations to ingest user input, because they do not propagate `force download` from external data: - `Agent.to web` / `clai web` - `VercelAIAdapter` - `AGUIAdapter` / `Agent.to ag ui` Applications that only download from developer-controlled URLs are not affected. ## Remediation Upgrade to `1.102.0` or later (or `2.0.0b3` or later on the 2.0 pre-release line). The cloud-metadata and private-IP blocklists now decode the embedded IPv4 of every standardized IPv6 transition form before evaluating it — IPv4-mapped, IPv4-compatible, 6to4, NAT64 across all prefix lengths (including the RFC 8215 local-use prefix and operator-chosen prefixes), ISATAP, and Teredo. The set of always-blocked cloud metadata/credential endpoints has also been expanded across providers. ## Workaround for Unpatched Versions Avoid passing `force download='allow-local'` on any URL that could be influenced by untrusted input. If developers must, resolve the hostname themselves and validate the result against their own metadata blocklist — including IPv6 transition forms — before constructing the `FileUrl`. ## Credits Reported by [@SnailSploit](https://snailsploit.com).
PT-2026-37300
7.7
2026-05-05
Avideo · Avideo · CVE-2026-43884
**Nome do Software Vulnerável e Versões Afetadas** AVideo versões anteriores a 29.0 **Descrição** Dois endpoints, 'plugin/AI/receiveAsync.json.php' e 'objects/EpgParser.php', utilizam a função `isSSRFSafeURL()` para validar URLs fornecidas pelo usuário, mas as buscam utilizando `file get contents()` sem desativar o seguimento automático de redirecionamentos. Isso permite que um invasor forneça uma URL que redirecione para um endereço interno ou de metadados de nuvem (como 'http://169.254.169.254/latest/meta-data/'), ignorando as proteções de SSRF, pois apenas a URL inicial é validada. Isso pode levar à exfiltração de credenciais IAM, identidade da instância ou acesso a serviços internos e varredura de portas. Além disso, vários chamadores de `isSSRFSafeURL()` descartam o parâmetro `$resolvedIP` destinado ao DNS pinning, tornando-os suscetíveis a ataques de DNS rebinding TOCTOU (Time-of-Check to Time-of-Use). Isso ocorre quando o registro DNS de um domínio muda entre o momento da validação e o momento da requisição real. Os chamadores afetados incluem: - 'objects/aVideoEncoderReceiveImage.json.php' - 'objects/aVideoEncoder.json.php' - 'plugin/BulkEmbed/save.json.php' - 'plugin/AI/receiveAsync.json.php' - 'objects/EpgParser.php' - 'plugin/Scheduler/Scheduler.php' **Recomendações** Atualize o AVideo para uma versão posterior a 29.0. Como medida paliativa temporária, restrinja o acesso aos endpoints 'plugin/AI/receiveAsync.json.php' e 'objects/EpgParser.php' para minimizar o risco de SSRF baseado em redirecionamento.