Peut-être utilisez-vous encore le script Timthumb après les vulnérabilités découvertes l’an dernier, cet article est alors pour vous.
0-day
En effet, une nouvelle faille (aussi appelée 0-day) a été divulguée sur le paramètre webshot
. Une des fonctions de TimThumb permet maintenant d’exécuter des commandes sur un site vulnérable à distance (sans aucun d’authentification requise).
Avec cette simple commande, un attaquant peut créer, supprimer et modifier des fichiers sur votre serveur, comme sur le (s)FTP.
Exemple
http://example.com/wp-content/themes/theme_vulnerable/timthumb.php?webshot=1&src=http://example.com/$(rm$IFS/www/wp-config.php)
Avec cette commande je peux supprimer le fichier wp-config.php
du site ciblé s’il contient le script vulnérable.
Les commandes ne sont limitées que par votre imagination. Je ne donne pas plus de détails pour éviter des abus.
Êtes-vous touché par cette faille ?
Les bonnes nouvelles sont que Timthumb est livré avec l’option webshot
désactivée par défaut, donc seules les installations de Timthumb modifiées sont vulnérables.
Qui modifie le script si ce n’est pas vous ? Et bien beaucoup de thème et de plugins l’utilisent, et certains ont peut-être eu besoin d’activer ça.
Comment régler le problème ?
Vous devez alors vérifier si votre fichier Timthumb (qui peut avoir un tout autre nom comme tt.php, tim.php thumb.php) n’a pas cette option activée pour éviter une utilisation abusive.
Ouvrez votre fichier timthumb (dans votre thème ou plugin) et là, recherchez WEBSHOT_ENABLED
et assurez-vous qu’il est réglé à FALSE
, comme ceci :
[pastacode provider=”manual” lang=”php” manual=”define(%20’WEBSHOT_ENABLED’%2C%20false%20)%3B”/]
Si elle est activée à TRUE
, vous devez le désactiver de suite, passez sur FALSE
.
Vous pouvez aussi ajouter une règle dans le .htaccess
[pastacode provider=”manual” lang=”php” manual=”RewriteCond%20%25%7BQUERY_STRING%7D%20webshot%3D%20%5BNC%5D%0ARewriteRule%20%5E%20-%20%5BF%5D”/]
Comment trouver ces fichiers ?
Il peut être très fastidieux de chercher ces fichiers partout dans votre installation, voici quelques astuces pour être certains que c’est bien fait :
- Si vous avez un thème de chez themify.me alors le fichier /themify/img.php est à patcher.
- Il existe un plugin nommé Timthumb Vulnerability Scanner qui trouvera pour vous les fichiers, malheureusement il est inutile de l’utiliser pour patcher cette faille, l’auteur n’a pas encore réagit à cette faille.
- Vous pouvez aussi simplement lancer une recherche dans vos fichiers php à la recherche du mot
WEBSHOT_ENABLED
. - Si vous êtes sur un VPS vous pouvez utiliser la commande pour le faire
[pastacode provider=”manual” lang=”php”]find / -name ‘*.php’ -exec grep WEBSHOT_ENABLED {} ;[/pastacode]
Vous pouvez aussi arrêter d’utiliser ce script si vous en avez la possibilité …