Tentative de piratage du code source du langage PHP

Des hackers anonymes tentent d’implanter une porte dérobée dans le code source du langage de script PHP.

Des hackers anonymes ont récemment essayé de mener une attaque à grande échelle contre la chaîne logistique en insérant un code malveillant dans le serveur Git officiel de PHP. Si les développeurs n’avaient pas vu à temps la porte dérobée, le code aurait pu finir sur plusieurs serveurs Web et ce serait devenu la plus grande attaque contre la chaîne logistique de l’histoire.

Ce qui s’est passé avec PHP

Les programmateurs qui développent le langage PHP font des changements dans le code en utilisant un référentiel commun présent dans le système de contrôle de version Git. Après ces ajouts, le code est soumis à une autre révision. Lors d’une vérification de routine, un développeur a remarqué un ajout suspect placé dans les commentaires en tant que correction d’une faute de frappe et ajouté sous le nom de Nikita Popov, un développeur PHP actif. Une analyse plus approfondie a révélé qu’il s’agissait d’une porte dérobée et que Popov n’était pas l’auteur de ce changement.

D’autres vérifications ont révélé qu’un autre ajout similaire a été téléchargé dans le référentiel mais cette fois sous le nom de Rasmus Lerdorf. Les programmateurs vigilants l’ont remarqué en quelques heures et par conséquent, la prochaine mise à jour PHP 8.1 (légèrement avancée à la fin de l’année) n’inclura pas la porte dérobée.

Pourquoi ce changement de code est dangereux

Une porte dérobée dans le référentiel peut permettre aux hackers d’exécuter un code malveillant à distance sur un serveur Web en utilisant la version compromise de PHP. Même si PHP n’est plus aussi populaire qu’avant, ce dernier reste le langage de script le plus utilisé pour les contenus Web : environ 80 % de serveurs Web l’utilisent. Bien que peu d’administrateurs mettent à jour leurs outils rapidement, un grand nombre d’entre eux gardent leurs serveurs à jour afin de se conformer aux normes de sécurité internes ou externes. Si la porte dérobée s’était retrouvée dans la nouvelle version de PHP, elle se serait très certainement répandue sur tous les serveurs Web de nombreuses entreprises.

Comment les hackers ont placé la porte dérobée

Selon les experts, il s’agit d’une attaque due à une vulnérabilité présente dans le serveur Git et non un problème de comptes compromis de développeurs. En effet, le fait d’attribuer un changement à un autre utilisateur est connu depuis très longtemps, et suite à cet incident, l’équipe d’assistance de PHP a arrêté d’utiliser le serveur git.php.net et a migré vers un référentiel de code source GitHub (qui auparavant n’était qu’un miroir).

Comment se protéger

Les environnements de développement sont des cibles attrayantes pour les cybercriminels. Une fois qu’ils ont compromis le code du logiciel auquel les clients font confiance, ils peuvent toucher plusieurs publics en même temps par le biais d’une attaque contre la chaîne logistique. Des millions d’utilisateurs dans le monde utilisent les projets les plus populaires, et donc les protéger des manigances extérieures est primordial.

  • Vérifiez fréquemment et à plusieurs reprises chaque changement de code, même ceux qui sont censés être faits par des programmateurs connus et respectés ;
  • Contrôlez la sécurité des serveurs et des services utilisés pour le développement ;
  • Utilisez des plateformes spécialisées en ligne afin de montrer à vos employés comment détecter les cybermenaces modernes.
Conseils