Ultralytics PyPI Releases Shipped a Crypto Miner
The four bad versions were pulled from PyPI within hours to about half a day in December 2024 and carried a coin miner, not a credential stealer; unless something still pins one of them, there is nothing to do but learn the CI lessons.
Must act: Anyone with a lockfile, image, cache or mirror that still contains ultralytics 8.3.41, 8.3.42, 8.3.45 or 8.3.46, or who ran one of them in December 2024 and never rebuilt that host.
Can relax: Users on 8.3.40 or earlier, 8.3.43, or any other release installed from PyPI after the bad versions were removed.
- Check every environment and lockfile: pip show ultralytics and grep -rn 'ultralytics==8.3.4[1256]' .
- Purge the bad versions from internal mirrors (Artifactory, Nexus, devpi) and from Docker image layers and pip caches.
- Rebuild any host or container that ran an affected version instead of trying to clean it.