Page 1 sur 1

securiser les pages

Posté : 02 avr. 2008, 11:23
par je me demandai
Salut a tous, quel est le moyen en gros pour sécuriser les pages php d'un site au cas ou certains malins voudraient faire les malins , (include peut etre?) ou bien je me demande que ca depend du serveur ou il es hébergé donc de l'hebergeur donc pas gros de souci a se faire... Merci d'avance

Posté : 02 avr. 2008, 11:24
par Berzemus
ça dépends de la façon dont des données transitent (à travers les variables POST et GET) entre le client et le serveur, et de la vérification qui en est faite du côté serveur.

Tu as un exemple concret à présenter ?

Re: securiser les pages

Posté : 02 avr. 2008, 11:26
par Calimero
Salut a tous, quel est le moyen en gros pour sécuriser les pages php d'un site au cas ou certains malins voudraient faire les malins , (include peut etre?) ou bien je me demande que ca depend du serveur ou il es hébergé donc de l'hebergeur donc pas gros de souci a se faire... Merci d'avance
Les failles de sécurité des sites web PHP proviennent en majeure partie des scripts qui sont mal codés. La configuration du serveur et de PHP (donc la partie hébergement) joue également (notamment les magic_quotes, le safe_mode, etc) mais il n'y a pas de solution miracle pour transformer une passoire en site sécurisé, il faut coder proprement et valider systématiquement tout paramètre d'entrée des scripts.

Posté : 02 avr. 2008, 12:18
par je me demandai
Merci pour vos reponses, ben moi quand je bosse mes pages c'est la methode normale simple quoi enfin je pense , en fait je ne fais pas de truc tres compliqué, j'utilise pas mal de sessions et mes requetes select from insert delete ou update directement sur la page (des include peut etre ?) un exemple en gros
<?php session_start(); ?>
<?php require_once('../../Connections/Connect.php'); ?>
<?php 
$wtype = $_SESSION['swtype'];
$wprix = $_SESSION['swprix'];
 mysql_select_db($database_Connect, $Connect);
   $requete = "INSERT INTO mytable (type,prix) VALUES ('".wtype."', '".wprix."')"; 
   $result = mysql_query($requete);
?>
 
et je me dis aussi par rapport a ce que ta dis calimero les failles de securite proviennent souvent des script mal codé mais un site ne fonctionne pas du tout si le script est mal codé, en fait la question c'est quoi un script bien codé et c'est quoi valider tout parametre d'entree des scripts (si c'est pas trop demander SVP) Merci

Posté : 02 avr. 2008, 17:43
par je me demandai
Une petite reponse please

Posté : 02 avr. 2008, 19:27
par Berzemus
un truc pas très sécure serait quelque chôse comme ceci:

mysql_query("select * from table where ID=".$_GET["id"]");
ou encore
include($_GET["page"]);
tu vois environ ou ça mène ?

Posté : 02 avr. 2008, 19:47
par hakazizi
personnelement j'utilise la fonction ereg();
pour proteger une entrée par url
if(ereg("[A-Za-Z0-9_-]{1,100}",$_GET['id']))
{
$id=$_GET['id'];
}
et remplacer le $_GET par $_POST pour protege les formulaires.
pour les include étant donne que tu connais deja l'url a mettre tu peut peux faire ceci.
if($page=='page1') { include("page1.php"); }
if($page=='page2') { include("page2.php"); }
il en existe plein d'autre des façons de securisé un site

Posté : 03 avr. 2008, 10:41
par je me demandai
ah ok merci je vois un peu le truc

Posté : 03 avr. 2008, 16:48
par nicolas
et remplacer le $_GET par $_POST pour protege les formulaires.
Cela ne protège rien. On peut tout aussi facilement modifier les données d'un formulaire. Il ne faire confiance, d'une manière générale, à aucune donnée provenant du client (GET, POST, COOKIE, $_SERVER,...)

Posté : 04 avr. 2008, 10:43
par BaLiSTiK
Tu peux jeter un coup d'œil ici : Manuel PHP : securite :D
tu devrais avoir des réponses =)