Dans le paquet , fournissant des moyens pour gérer un serveur à distance, découvert (), détecté dans les versions officielles du projet, via Sourceforge et sur le site principal. Le backdoor était présent dans les versions allant de 1.882 à 1.921 incluses (le code avec le backdoor était absent dans le dépÎt git) et permettait d'exécuter à distance des commandes shell arbitraires dans le systÚme avec des droits root, sans passer par l'authentification.
Pour l'attaque, il suffit d'avoir un port réseau ouvert avec Webmin et que la fonction de changement de mot de passe obsolÚte soit active dans l'interface web (activée par défaut dans les versions 1.890, mais désactivée dans les autres versions). Le problÚme dans 1.930. Comme solution temporaire pour bloquer le backdoor, il suffit de supprimer le paramÚtre « passwd_mode= » du fichier de configuration /etc/webmin/miniserv.conf. Pour les tests, une préparation a été faite. .
Le problĂšme a Ă©tĂ© dans le script password_change.cgi, oĂč pour vĂ©rifier le mot de passe prĂ©cĂ©dent saisi dans le formulaire web, la fonction unix_crypt reçoit le mot de passe fourni par l'utilisateur sans Ă©chapper les caractĂšres spĂ©ciaux. Dans le dĂ©pĂŽt git, cette fonction est une enveloppe autour du module Crypt::UnixCrypt et ne reprĂ©sente pas de danger, mais dans l'archive de code fournie sur Sourceforge, du code est appelĂ©, qui accĂšde directement Ă /etc/shadow, mais le fait via une construction shell. Pour l'attaque, il suffit de mettre le caractĂšre « | » dans le champ du vieux mot de passe et le code qui suit sera exĂ©cutĂ© avec les droits root sur le serveur.
Selon des développeurs de Webmin, le code malveillant a été inséré à la suite d'une compromission de l'infrastructure du projet. Les détails ne sont pas encore divulgués, donc il n'est pas clair si le piratage s'est limité à la prise de contrÎle du compte Sourceforge ou si d'autres éléments de l'infrastructure de développement et de construction de Webmin ont également été touchés. Le code malveillant était présent dans les archives depuis mars 2018. Le problÚme a également affecté . Actuellement, tous les archives de démarrage ont été reconstruites à partir de Git.
Source : opennet.ru
