-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
a new list with a ` in the password will result in a crashing cronjob every minute #1
Comments
|
@fser je viens de tester la solution que tu propose et ça fonctionne bien pour les "backticks" mais ça a le facheux résultat de transformer tout le reste en ajoutant un backslash devant. par exemple un mot de passe "allo toi" doit être écrit "allo\ toi" dans mailman pour pouvoir entrer. donc le mot de passe final ne correspond pas à ce que les utilisateurs ont spécifié. donc je crois que la seule solution c'est de refuser les backticks dans les formulaires de création de liste et changement de mot de passe de liste. malheureusement ça ne nous protège pas contre le SQL injection. par ailleurs j'ai testé mon hypothèse par rapport à la sécurité et on a bel et bien un problème d'injection de commandes!
la cronjob va ouvrir le port 65432 et tout ce qui y sera reçu sera donné à bash pour exécution (donc via le champs de mot de passe des mailing lists on peut facilement ouvrir une backdoor) |
fser m'a proposé une nouvelle version de patch (je copie du lien qui m'avait été donné parce qu'il est vraiment lent et je ne sais pas si le contenu sera disponible dans le futur):
la patch finale devra inclure la même modification sur l'action de changement de mot de passe. je vais tester ce changement maintenant |
la modification n'a pas fonctionné: j'obtenais l'erreur suivante dans le retour email de la cronjob:
pour tenter de faire fonctionner le script j'ai retiré les " à l'intérieur du printf, mais alors la commande de création de liste a réussie mais la commande insérée dans le mot de passe a tout de même été interprétée. donc retour à la case départ.. |
The password field is either too permissive with its contents or the way the password is being set is problematic. in any case, when a new mailing list is created and a backtick is present in the password, the update_mailman.sh cronjob will crash on every run.
this is caused by the way "newlist" is called here:
alternc-mailman/src/update_mailman.sh
Line 44 in 088df95
the backtick gets interpreted and sh complains about a syntax error.
I don't know yet if that might have security implications too: I haven't tested whether shell injection is possible through the password, but I surmise it probably is.
my suggestion would be to make alternc reject passwords that contain a backtick.
note: this might be applicable to double quotes too
The text was updated successfully, but these errors were encountered: