Open source package with 1 million monthly downloads stole user credentials

Ars Technica / 4/28/2026

📰 NewsDeveloper Stack & InfrastructureIndustry & Market Moves

Key Points

  • An open-source package with over 1M monthly downloads was compromised after attackers exploited a weakness in the developers’ account workflow to obtain signing keys and other sensitive data.
  • The threat actor pushed a malicious element-data update (version 0.23.3) to both the developers’ Python Package Index and Docker image accounts, and it searched affected systems for credentials such as user profiles, warehouse access details, cloud keys, API tokens, and SSH keys.
  • The malicious release was removed roughly 12 hours later, and the team says related products (like Elementary Cloud and the Elementary dbt package) and other CLI versions were not affected.
  • The developers advise anyone who ran the tainted package or Docker image to assume exposed credentials, and they report rotating all potentially accessed credentials, fixing the vulnerability, and auditing other GitHub Actions to prevent similar issues.
  • The attackers obtained access by abusing a GitHub action the team created, where malicious code submitted via a pull request could execute a bash script to extract sensitive information and then publish a near-identical malicious release.

Open source software with more than 1 million monthly downloads was compromised after a threat actor exploited a vulnerability in the developers’ account workflow that gave access to its signing keys and other sensitive information.

On Friday, unknown attackers exploited the vulnerability to push a new version of element-data, a command-line interface that helps users monitor performance and anomalies in machine-learning systems. When run, the malicious package scoured systems for sensitive data, including user profiles, warehouse credentials, cloud provider keys, API tokens, and SSH keys, developers said. The malicious version was tagged as 0.23.3 and was published to the developers’ Python Package Index and Docker image accounts. It was removed about 12 hours later, on Saturday. Elementary Cloud, the Elementary dbt package, and all other CLI versions weren’t affected.

Assume compromise

“Users who installed 0.23.3, or who pulled and ran the affected Docker image, should assume that any credentials accessible to the environment where it ran may have been exposed,” the developers wrote.

The threat actor gained access to the developers’ account by exploiting a vulnerability in a GitHub action they created. By posting malicious code to a pull request, the attackers were able to run a bash script that ran inside the developer’s account. The bash script retrieved the sensitive data. With the account tokens and signing keys, the attacker went on to publish a malicious element-data package that was nearly indistinguishable from a legitimate one.

The developers learned of the compromise from a third-party issue report. Within three hours, the package was removed. Element developers said they also rotated all credentials that the malicious code had access to. They have further fixed the vulnerability and audited all their other GitHub actions to ensure none contain the same flaw.