«Trafikken vi fanget var ikke en generisk SQLmap-spray, slik vi vanligvis ser ved SQL-injeksjoner, men en bevisst og sannsynligvis tilpasset enumerering av produksjonsschemaet til LiteLLM» — Sysdig Threat Research Team
Sysdig publiserte 1. mai funn fra et reelt angrep mot LiteLLM-proxyer, en open-source KI-gateway som sitter mellom applikasjonen din og over 100 LLM-leverandører. CVE-2026-42208 er en pre-auth SQL-injeksjon med CVSS-score 9.3, og den ble aktivt utnyttet 26. april — omtrent 36 timer etter at GitHub-advarselen gikk live 24. april. Det er tredje LiteLLM-hendelse på tre måneder.
Sårbarheten ligger i autentiseringspath-en. Proxyen sjekker innkommende Authorization: Bearer-token mot databasen, men i versjonene 1.81.16 til 1.83.6 ble verdien konkatenert direkte inn i SQL-strengen i stedet for sendt som bound parameter. En enkelt POST mot /chat/completions med en konstruert bearer-streng kunne pakke ut hele credential-tabellen før noen autentisering hadde skjedd. PyPI-pakken litellm har rundt 97 millioner nedlastninger i måneden og GitHub-repoet har 45 000 stjerner, så angrepsoverflaten er stor.
Det interessante er hva angriperen visste på forhånd. Sysdig observerte at angriperen kjente til at LiteLLM bruker Prisma ORM med PascalCase-tabellnavn, og når lowercase-spørringer feilet i PostgreSQL, byttet angriperen til quotede identifikatorer og fortsatte. Det peker mot forhåndsstudie av det offentlige Prisma-schemaet. Tre tabeller ble truffet: LiteLLM_VerificationToken (virtuelle og master-nøkler), litellm_credentials (upstream OpenAI-, Anthropic-, Bedrock-keys) og litellm_config (PostgreSQL-DSN, master-keys, webhook-URL-er).
Fix-en kom i v1.83.7-stable den 19. april og bruker parameterized queries. Hvis du ikke kan oppgradere umiddelbart, anbefaler Centre for Cybersecurity Belgium å sette disable_error_logs: true i general settings som midlertidig blokade. Sysdig fant ingen autentiserte oppfølgingskall med stjålne nøkler, men som forskerne påpeker er fravær av observert utnyttelse ikke det samme som bevis på at ingenting ble tatt.
For norske utviklere som driver egen LiteLLM-proxy er problemet konkret: én sårbar deploy konsentrerer credentials for alle LLM-leverandører du bruker, fungerer som autentiseringslag for alle interne kall, og er ofte eksponert mot internett. I mars ble LiteLLMs CI/CD kompromittert via Trivy, og en credential-stealer ble injisert i PyPI-versjonene 1.82.7 og 1.82.8 før bakdøren ble fanget. Mønsteret gjentar seg.
Hva bør du gjøre?
- Kjør
pip show litellm | grep Versioni alle miljøer. Hvis versjonen er mellom 1.81.16 og 1.83.6, anta at upstream-nøklene er ute. - Roter alle upstream provider-keys uavhengig av om du så anomal trafikk. Det gjelder OpenAI, Anthropic, AWS Bedrock, Azure OpenAI, Cohere og hva enn du har konfigurert.
- Oppgrader til v1.83.7-stable så fort patch-vinduet tillater. Hvis det blokkeres, sett
disable_error_logs: truesom midlertidig stopgap. - Sjekk om proxyen din er nådd fra internett. En LiteLLM-proxy bak VPN eller mesh er fortsatt sårbar for interne angripere, men eksponering mot internett gjør deg til lavterskel-mål.