Contribuez à SecuObs en envoyant des bitcoins ou des dogecoins.
Nouveaux articles (fr): 1pwnthhW21zdnQ5WucjmnF3pk9puT5fDF
Amélioration du site: 1hckU85orcGCm8A9hk67391LCy4ECGJca

Contribute to SecuObs by sending bitcoins or dogecoins.



[Protection PHP Suhosin - Partie 2] Test d'attaque et configuration

Par Rédaction, secuobs.com
Le 19/03/2007


Résumé : Retrouvez ici le test de reconnaissance d'un risque via le monitoring des logs de syslog afin de remonter des alertes Suhosin ainsi que les détails du système de configuration du patch et de l'extension de Suhosin.



Un test s'impose avec le fichier « hack.php » suivant où $URL sera l'url externe:

<?php include "$URL"; ?>

On surveille l'activité des traces dans syslog en même temps que l'on visualise la page « hack.php » :

root@tuktuk:/home/suhosin/suhosin-0.9.18 # tail -f /var/log/syslog
Mar 18 19:30:21 tuktuk suhosin[7151]: ALERT - Include filename ('$URL ') is an URL that is not allowed (attacker '192.168.1.14', file '/home/inetdata/secuobs.com/suhosin/hack.php', line 2)


L'include d'une URL externe a bien été détecté dans l'exécution du script « /home/inetdata/secuobs.com/suhosin/hack.php ». Pour la plupart des utilisateurs, et cela selon le site officiel de Suhosin, cette solution se montrera parfaitement adaptée dans sa configuration par défaut cependant de nombreux paramètres peuvent être manipulés afin de construire des protections sur mesure en fonction des applications.

Parmi la liste des paramètres de configuration disponibles ( lien ), on retrouve les catégories liées aux logs ( lien ), à l'exécution des scripts ( lien ), au chiffrement des sessions, des cookies et des données ( lien ) ainsi qu'aux options de filtrages ( lien ).

Ces dernières s'appliquent sur les cookies, les uploads, les données de formulaire en GET et en POST ainsi que les requêtes et les sessions. Les valeurs par défaut des paramètres sont « hardcodées » via Suhosin, aucun paramètre n'est donc présent initialement dans le fichier php.ini ; il est alors nécessaire de les rajouter dans ce fichier si vous voulez en modifier ces valeurs.

root@tuktuk:/home/suhosin/suhosin-0.9.18 # vi /usr/local/lib/php.ini

Vous pouvez récupérer également cette liste de la manière suivante :

root@tuktuk:/home/suhosin/suhosin-0.9.18 # vi suhosin.ini

Les utilisateurs n'ayant installé que le patch n'auront accès qu'aux paramètres pour les logs alors que ceux qui n'installent que l'extension n'auront pas accès à la configuration aux constantes pré-définies pour la configuration ; celles-ci étant implémentées dans PHP.

Vous pouvez vérifier le changement de ces valeurs sur le phpinfo() avec le fichier « test.php ».

A noter le paramètre « suhosin.simulation » dans la catégorie « MISC » ( lien ) sur l'option « On » afin d'enregistrer dans les fichiers de logs sans pour autant bloquer l'exécution des scripts ; idéal pour modifier vos applications déjà existantes.

A savoir que l'utilisation de l'extension Suhosin combinée au patch sur les scripts php augmente leur durée d'exécution de 8,84 pourcents ( lien ) avec le script de test ( lien ) spécialement prévu à cet effet.


Autre ressource disponible dans ce dossier :

[Protection PHP Suhosin - Partie 1] Présentation et installation - lien