|
[Sécurité et PHP - Partie 5] Astuces
Par Rédaction,
secuobs.com
Le 10/05/2008
Résumé : Dans cette quatrième et dernière partie du dossier sur la sécurité (et l'insécurité) des scripts PHP, on retrouve quelques principes qui vont permettre d'ajouter une couche de sécurisation supplémentaires aux scripts développés dans ce langage. - Lire l'article
NDLR : ce document a été rédigé en 2006, certaines versions ainsi que certaines configurations des logiciels utilisés selon ces versions peuvent être différentes de celles qui sont mentionnées ; merci de vous reporter vers les sites officiels des projets en question en cas de problème.
Pour sécuriser de manière optimale une application Web, on peut appliquer des règles de sécurité qui permettent de vérifier qu’aucune entrée n’a été modifiée par le visiteur.
Pour chaque lien il suffit de rajouter une variable qui va servir de signature de validité pour la requête.
Pour générer les liens sécurisé, le code suivant :
< ?
$secretkey = "highly secret key " ;
Echo " code html …. ";
Echo "<a href=\"/page.php ?var=course&signature=".md5($secretkey."course") ;
…
?>
Le fichier page.php :
< ?
$secretkey = "highly secret key " ;
$realsign = md5($secretkey.$_REQUEST["var"]) ;
If($realsign != $_REQUEST["signature"])
{
Echo "mauvaise valeur d’entrée" ;
Exit() ;
}
… suite du fichier
?>
Ceci permet de s'assurer que les requêtes ont pour origine les pages de notre site.
Il faut aussi désactiver l’affichage des messages d’erreur dans la configuration de PHP ou bien a l’aide de :
ini_set("error_display",off);
Cela doit être placé au début du script, car chaque message d’erreur donne des informations précieuses à un attaquant potentiel.
Il existe également une technique permettant de sécuriser un formulaire, elle consiste à placer un numéro de session que l’on va stocker dans une table.
Lors de la validation du formulaire on vérifie alors que ce numéro est bien dans la table.
Un outil essentiel à la sécurité de vos script est le patch hardened-PHP que l'on peut trouver sur le site officiel du projet ( lien ).
Le projet Suhosin ( lien ) est également à étudier.
Des compléments d'informations sont disponibles dans les articles suivants ( failles XSRF lien ) et ( mois des failles PHP - lien ).
Autres ressources dans ce dossier :
[Sécurité et PHP - Partie 1] Les injections SQL – lien
[Sécurité et PHP - Partie 2] La gestion des sessions – lien
[Sécurité et PHP - Partie 3] Les failles PHP – lien
[Sécurité et PHP - Partie 4] RPVS – lien
- Article suivant : [IDS Snort Windows – Partie 1] Introduction aux IDS et à SNORT
- Article précédent : [Sécurité et PHP - Partie 4] Remote PHP Vulnerabilty Scanner
- Article suivant dans la catégorie Tutoriels : [IDS Snort Windows – Partie 1] Introduction aux IDS et à SNORT
- Article précédent dans la catégorie Tutoriels : [Sécurité et PHP - Partie 4] Remote PHP Vulnerabilty Scanner
Mini-Tagwall des articles publiés sur SecuObs : | | | | sécurité, exploit, windows, attaque, outil, microsoft, réseau, audit, metasploit, vulnérabilité, système, virus, internet, usbsploit, données, source, linux, protocol, présentation, scanne, réseaux, scanner, bluetooth, conférence, reverse, shell, meterpreter, vista, rootkit, détection, mobile, security, malicieux, engineering, téléphone, paquet, trames, https, noyau, utilisant, intel, wishmaster, google, sysun, libre |
Mini-Tagwall de l'annuaire video : | | | | curit, security, biomet, metasploit, biometric, cking, password, windows, botnet, defcon, tutorial, crypt, xploit, exploit, lockpicking, linux, attack, wireshark, vmware, rootkit, conference, network, shmoocon, backtrack, virus, conficker, elcom, etter, elcomsoft, server, meterpreter, openvpn, ettercap, openbs, iphone, shell, openbsd, iptables, securitytube, deepsec, source, office, systm, openssh, radio |
Mini-Tagwall des articles de la revue de presse : | | | | security, microsoft, windows, hacker, attack, network, vulnerability, google, exploit, malware, internet, remote, iphone, server, inject, patch, apple, twitter, mobile, virus, ebook, facebook, vulnérabilité, crypt, source, linux, password, intel, research, virtual, phish, access, tutorial, trojan, social, privacy, firefox, adobe, overflow, office, cisco, conficker, botnet, pirate, sécurité |
Mini-Tagwall des Tweets de la revue Twitter : | | | | security, linux, botnet, attack, metasploit, cisco, defcon, phish, exploit, google, inject, server, firewall, network, twitter, vmware, windows, microsoft, compliance, vulnerability, python, engineering, source, kernel, crypt, social, overflow, nessus, crack, hacker, virus, iphone, patch, virtual, javascript, malware, conficker, pentest, research, email, password, adobe, apache, proxy, backtrack |
|
|
|
|
|