Lasse Collin, ancien mainteneur du projet xz, a cédé ses droits en 2022 à son successeur Jia Tan, dont l'activité a entraîné l'introduction d'une porte dérobée. Il a publié des versions correctives des paquets XZ Utils 5.2.13, 5.4.7 et 5.6.2, dans lesquels les composants de la porte dérobée et d'autres modifications suspectes ont été supprimés, conséquences des actions malveillantes de l'ancien mainteneur.
De plus, un rapport sur l'examen du dépôt Git et des modifications apportées depuis décembre 2022, pendant la période de Jia Tan en tant que mainteneur, a été publié. Les modifications ont été détaillées au niveau de chaque commit. Les commits dans le dépôt n'ont pas été signés numériquement, mais aucune trace de falsification de la part des contributeurs n'a été trouvée. Un total de 8 commits malveillants a été supprimé du dépôt.
Le code CRC CLMUL n'a pas encore été retiré de la base de code car il entraîne de faux positifs lors de la vérification avec MSAN (Memory sanitizer) et cause des problèmes avec OSS Fuzz. Ce code doit être retravaillé ultérieurement, mais il a été décidé de ne pas y toucher pour éviter des régressions dans les anciennes branches. Aucune modification suspecte dans les anciens commits, ajoutés avant les changements liés à la progression de la porte dérobée, n'a été détectée. Les fichiers po de localisation, les métadonnées dans les fichiers tar et les archives de version ont été vérifiés séparément.
Parmi les changements, on note l'inclusion des corrections de bugs accumulées et la suppression du support du mécanisme IFUNC fourni par Glibc pour un appel indirect de fonctions, qui avait été utilisé pour intercepter des fonctions dans la porte dérobée. Il a été observé que l'utilisation d'IFUNC complique simplement le code, sans gains de performance significatifs. Par mesure de précaution, le package avec les sources a également vu la suppression du logo XZ, des versions PDF des pages man, et de deux tests pour les architectures x86 et SPARC qui traitaient des fichiers objets comme données d'entrée.
Dans les nouveautés, le décodeur xzdec a ajouté le support de la version 4 de l'ABI du mécanisme d'isolation d'applications Landlock. Les scripts de construction Autotools incluent l'option « --enable-doxygen », et le script Cmake a le paramètre ENABLE_DOXYGEN pour générer et installer la documentation de l'API liblzma en utilisant Doxygen. La documentation déjà générée a été supprimée du package.
Source : opennet.ru
