Je veux utiliser un package récent d’un PPA. Comment puis-je m’assurer que le responsable de l’APP n’a ajouté aucun code malveillant dans la version fournie?
devscripts
. .dsc
. dget url_of_dsc_file
. Cela téléchargera et décompactera le code source utilisé pour construire le paquet dans un répertoire. Renommez ce répertoire en ppa
. .dsc
partir de https://launchpad.net/ubuntu/+source/ source_package_name
). Téléchargez et décompressez cela, puis renommez ce répertoire en upstream
, en utilisant dget
pour télécharger à partir d’un .dsc
si nécessaire. upstream
et ppa
pour voir si des modifications malveillantes non présentes dans ppa
ont été introduites dans le upstream
. Vous pouvez utiliser meld pour cela, qui est un visualiseur de différences graphiques. apt-get install meld
, puis lancez meld upstream ppa
. Il vous indiquera quels fichiers sont nouveaux, modifiés ou supprimés, et vous pouvez double-cliquer sur un fichier pour voir les modifications détaillées dans un format facile à consulter. Étant donné que les PPA sont générés à partir du source sur l’infrastructure de Canonical, vous pouvez être sûr que le fichier binary que vous avez installé à partir du PPA correspond à la source que vous avez examinée ci-dessus, à condition que vous fassiez confiance à Canonical. Cela devrait être acceptable étant donné que vous faites confiance à Canonical pour construire Ubuntu en premier lieu.
Vous ne pouvez vraiment pas être sûr qu’il n’y a pas de malware dans le paquet fourni par PPA, mais vous pouvez au moins vérifier que le code source n’a pas été falsifié:
orig.tar.*
package et décompressez-le. diff -r orig-dir/ ppa-dir/
Les deux arbres source doivent être identiques. Si ce n’est pas le cas, vous pouvez détailler les différences et vous assurer qu’elles ne sont pas malveillantes.
Vous devez également vérifier l’emballage lui-même. Les paquets Debian peuvent contenir des correctifs dans l’arborescence source, et ils peuvent append du code supplémentaire.
Les paquets Debian (.deb) peuvent être décompressés comme ceci:
ar p mypackage.deb data.tar.gz | tar zx