Os invasores comprometeram os pacotes Ultralytics YOLO publicados no PyPI, o índice oficial de pacotes Python, comprometendo o ambiente de construção da biblioteca popular para a criação de modelos personalizados de aprendizado de máquina. O código malicioso implantou malware de mineração de criptomoedas em sistemas que instalaram o pacote, mas os invasores poderiam ter entregado qualquer tipo de malware.
De acordo com pesquisadores do ReversingLabs, os invasores aproveitaram uma exploração conhecida por meio do GitHub Actions para introduzir código malicioso durante o processo de construção automatizado, ignorando assim o processo usual de revisão de código. Como resultado, o código estava presente apenas no pacote enviado ao PyPI e não no repositório de código no GitHub.
A versão trojanizada do Ultralytics no PyPI (8.3.41) foi publicada em 4 de dezembro. Os desenvolvedores do Ultralytics foram alertados em 5 de dezembro e tentaram enviar uma nova versão (8.3.42) para resolver o problema, mas porque não o fizeram inicialmente entendi a origem do comprometimento, esta versão acabou incluindo o código nocivo também. Uma versão limpa e segura (8.3.43) foi publicada no mesmo dia.