- Um arquivo
.pth, executado automaticamente na inicialização do interpretador Python, foi incluído no pacote e coleta informações sensíveis como chaves de API, chaves SSH e tokens de nuvem, além de enviá-las para fora
- O script malicioso está oculto com codificação base64 dupla e envia os dados coletados para
litellm.cloud após criptografá-los com AES-256 e proteger a chave com uma chave pública RSA
- Em caso de infecção, as credenciais do ambiente local, CI/CD e servidores de produção podem ser expostas
- Foi relatado que a versão 1.82.7 também contém código malicioso, então ambas as versões são perigosas
- A comunidade de segurança recomenda com urgência remover o pacote, rotacionar credenciais e reforçar a segurança da cadeia de suprimentos
Incidente de segurança do arquivo malicioso litellm_init.pth no pacote PyPI do litellm 1.82.8
- O pacote wheel do PyPI da versão litellm 1.82.8 incluía um arquivo
.pth malicioso (litellm_init.pth), causando o problema de executar automaticamente um script de roubo de credenciais sempre que o interpretador Python é iniciado
- Esse arquivo é executado mesmo sem o comando
import litellm, e foi identificado como uma forma de ataque à cadeia de suprimentos (Supply Chain)
- O arquivo malicioso está listado no arquivo
RECORD do pacote
-
Análise do comportamento malicioso
- O arquivo
.pth explora a característica de execução automática na inicialização do interpretador Python
- O script malicioso está oculto com codificação base64 dupla e, após a decodificação, executa as etapas a seguir
-
Etapa 1: coleta de informações
- Informações do sistema:
hostname, whoami, uname -a, ip addr, ip route
- Variáveis de ambiente: coleta de chaves de API, segredos e tokens por meio de
printenv
- Chaves SSH: principais arquivos de chave e arquivos de configuração em
~/.ssh/
- Credenciais do Git:
~/.gitconfig, ~/.git-credentials
- Credenciais de nuvem: arquivos de configuração e tokens relacionados a AWS, GCP e Azure
- Configuração do Kubernetes:
/etc/kubernetes/, ~/.kube/config etc.
- Configuração do Docker:
~/.docker/config.json etc.
- Configurações de gerenciadores de pacotes:
.npmrc, .netrc, .vault-token etc.
- Histórico do shell:
.bash_history, .zsh_history etc.
- Carteiras de criptomoedas:
~/.bitcoin/, ~/.ethereum/keystore/ etc.
- Chaves privadas SSL/TLS:
/etc/ssl/private/, arquivos .pem e .key
- Segredos de CI/CD:
terraform.tfvars, .gitlab-ci.yml, Jenkinsfile etc.
- Credenciais de banco de dados: arquivos de configuração de PostgreSQL, MySQL, Redis etc.
- URLs de webhook: busca por URLs de Slack, Discord etc.
-
Etapa 2: criptografia e envio externo
- Os dados coletados são salvos em um arquivo temporário
- Uma chave de sessão AES-256 de 32 bytes é gerada com
openssl rand
- Os dados são criptografados com
openssl enc -aes-256-cbc -pbkdf2
- A chave de sessão é criptografada com uma chave pública RSA de 4096 bits codificada diretamente no código
- Os dois arquivos são agrupados em
tpcp.tar.gz e enviados
- Destino do envio:
https://models.litellm.cloud/ (diferente do domínio oficial litellm.ai)
-
Detalhes técnicos
- O arquivo
.pth fica em site-packages/ do Python e é executado automaticamente na inicialização do interpretador
- O payload usa codificação base64 dupla para evitar detecção
- O atacante operava um servidor de exfiltração de dados usando o domínio
litellm.cloud
- Início da chave pública RSA:
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvahaZDo8mucujrT15ry+...
-
Escopo do impacto
- Ao instalar
litellm==1.82.8, todas as informações secretas, como variáveis de ambiente, chaves SSH e credenciais de nuvem, podem ser vazadas
- Alvos afetados:
- Ambientes locais de desenvolvimento
- Pipelines de CI/CD
- Contêineres Docker
- Servidores de produção
- Além disso, foi relatado que a versão 1.82.7 também inclui código malicioso em
proxy/proxy_server.py
-
Medidas recomendadas
-
- PyPI: remover imediatamente ou aplicar yank em
litellm 1.82.8
-
- Usuários:
- verificar se
litellm_init.pth existe em site-packages/
- rotacionar todas as credenciais em sistemas onde essa versão foi instalada
-
- BerriAI: é necessário realizar uma auditoria de segurança das credenciais de publicação no PyPI e do pipeline de CI/CD
-
Ambiente de descoberta
- OS: Ubuntu 24.04 (contêiner Docker)
- Python: 3.13
- Caminho de instalação: PyPI
- Data da descoberta: 24 de março de 2026
-
Reação da comunidade e discussões adicionais
- Muitos desenvolvedores mencionaram que há possibilidade de milhares de pessoas já terem sido infectadas
- Alguns usuários confirmaram que a versão 1.82.7 também foi comprometida
- Especialistas em segurança enfatizaram a necessidade de fixação de dependências (pinning) e de reforço da segurança da cadeia de suprimentos
agnosticlines e outros apontaram a vulnerabilidade do GitHub Actions e a repetição de ataques à cadeia de suprimentos
MountainGod2 alertou: as dependências devem ser fixadas por hash de commit, e novas releases só devem ser usadas após verificação
- Vários projetos (
mlflow, home-assistant, morphik-core etc.) tomaram medidas para fixar a versão do litellm ou removê-lo
Ainda não há comentários.