User database was also hacked in the recent hack of PHP ‘s Git Server

Pierluigi Paganini April 08, 2021

The maintainers of the PHP programming language confirmed that threat actors may have compromised a user database containing their passwords.

The maintainers of the PHP programming language have provided an update regarding the security breach that took place on March 28.

Unknown attackers hacked the official Git server of the PHP programming language and pushed unauthorized updates to insert a backdoor into the source code. On March 28, the attackers pushed two commits to the “php-src” repository hosted on the server, they used the accounts of Rasmus Lerdorf, the PHP’s author, and Jetbrains developer Nikita Popov.

Below a summary provided by Nikita Popov on what has emerged during the investigation:

  • We no longer believe the server has been compromised. However, it is possible that the user database leaked.
  • has been migrated to a new system
  • All passwords have been reset. Go to to set a new password.
  • and are both read-only now, but will remain available for the time being.

Popov explained that further investigation into the incident revealed that the commits were also pushed via HTTPS and password-based authentication.

“Something I was not aware of at the time is that (intentionally) supported pushing changes not only via SSH (using the gitolite infrastructure and public key cryptography), but also via HTTPS. The latter did not use gitolite, and instead used git-http-backend behind Apache2 Digest authentication against the user database.” continues Popov. “I’m not sure why password-based authentication was supported in the first place, as it is much less secure than pubkey authentication. Based on access logs, we can determine that the commits were indeed pushed using HTTPS and password-based authentication. An excerpt of relevant log entries is shown below”

PHP DB hacked

Popov pointed out that the attackers only made only a few attempts to guess usernames, and one attempt was successful. At the time of this writing, it is not clear if the credentials of this specific user in the database of has been leaked because apparently, the attackers had no reason to guess usernames once compromised the database.

The PHP maintainers also noticed that system, which is used for authentication and various management tasks, was running very old code and was based on a very old operating system / PHP version.

Below a list of improvements implemented to secure this system:

  • was migrated to a new system (running PHP 8) and renamed to at the same time. Among other things, the new system supports TLS 1.2, which means you should no longer see TLS version warnings when accessing this site.
  • The implementation has been moved towards using parameterized queries, to be more confident that SQL injections cannot occur.
  • Passwords are now stored using bcrypt.
  • Existing passwords were reset (use to generate a new one).

The maintainers have already migrated to a new system which provides support for TLS 1.2, they have also forced password reset and replaced the MD5 hashing function with the bcrypt a password-hashing function.

If you want to receive the weekly Security Affairs Newsletter for free subscribe here.

Follow me on Twitter: @securityaffairs and Facebook

[adrotate banner=”9″][adrotate banner=”12″]

Pierluigi Paganini

(SecurityAffairs – hacking, data breach)

[adrotate banner=”5″]

[adrotate banner=”13″]

you might also like

leave a comment