Des pirates ont attaqué le code source de PHP !
mar, 30/03/2021 - 16:15
Un billet de Nikita Popov sur la liste de diffusion de PHP fait état d'une tentative de corruption du code source du langage. Dimanche 28 mars 2021, deux contributions (commits) malveillantes ont été poussées dans le dépôt de code, sous prétexte de corriger une faute de frappe.
Ces deux commits ont été poussés aux noms de Rasmus Lerdorf et de Nikita Popov, les deux noms les plus connus du projet PHP. Pour mémoire Rasmus Lerdorf est le créateur du langage.
A moment où nous écrivons ces lignes, Nikita Popov ne sait pas exactement ce qui s'est passé. Il estime que le serveur de git.php.net a été compromis. Mais que ni son compte individuel ni celui de Rasmus Lerdorf ne sont compromis.
Toutefois, au vu de cet incident, l'équipe a décidé que le maintien de sa propre infrastructure git est un risque de sécurité inutile. Le serveur de git.php.net sera donc arrêté. Les référentiels sur GitHub, qui n'étaient auparavant que des miroirs, deviendront canoniques et les modifications de code devront être transmises directement sur GitHub.
Le code malveillant injecté est donné dans deux billets sur GitHub. Ici et ici.
Il s'agit d'une porte dérobée (backdoor) qui exécute du code à partir de l'en-tête HTTP de l'user agent s'il s'y trouve une chaîne qui commence par zerodium. Pour mémoire Zerodium est une société de sécurité informatique fondée en 2015 par Chaoui Bekrar, qui a également fondé la société française Vupen. L'activité principale officielle de Zerodium consiste à développer ainsi qu'à acquérir des exploits zero-day auprès de chercheurs en sécurité, et à rendre compte de la recherche, ainsi que des mesures de protection et des recommandations de sécurité, à ses clients gouvernementaux, 'démocratiques ou de confiance'. Dans la réalité, Zerodium est une société très controversée. Notamment, Zerodium est soupçonnée de vendre des exploits à des régimes totalitaires, afin que ceux-ci puissent espionner leurs dissidents politiques.
Le fait que le nom zerodium apparaisse dans ce code malveillant ne constitute toutefois pas une preuve que Zerodium est derrière cette attaque.