codeur:securite

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
codeur:securite [Dec. 12, 2024 10:51 AM UTC ] jpbcodeur:securite [Dec. 12, 2024 11:11 AM UTC ] (Version actuelle) – [Le bon type de variable] jpb
Ligne 3: Ligne 3:
  
 ===== Initalisez vos variables ===== ===== Initalisez vos variables =====
-Un principe simple est de toujours initialiser vos variables locales.+Un principe simple est de **toujours initialiser** vos variables locales.
 <code php> <code php>
    $tmp = '';    $tmp = '';
Ligne 15: Ligne 15:
 Un autre principe simple est de toujours considérer que le type de variable provenant d'une URL, d'un formulaire, d'un cookie ou d'une session, ... n'est pas fiable. Un autre principe simple est de toujours considérer que le type de variable provenant d'une URL, d'un formulaire, d'un cookie ou d'une session, ... n'est pas fiable.
  
-Une précaution élémentaire : l'utilisation de la fonction settype+Une précaution élémentaire : l'utilisation de la fonction settype()
  
-Par exemple : settype($tmp, "integer"); Si vous attendez un entier, cette fonction php va vous garantir que c'est bien un entier que vous obtiendrez. L'avantage : si il avait autre chose dans la variable $tmp settype tranforme le contenu afin de respecter le type.+Par exemple :  
 +<code php> 
 +settype($tmp, "integer"); 
 +</code> 
 +Si vous attendez un entier, cette fonction php va vous garantir que c'est bien un entier que vous obtiendrez. L'avantage : si il avait autre chose dans la variable $tmp settype transforme le contenu afin de respecter le type.
 <code php> <code php>
   $tmp = 'je suis un code malicieux';   $tmp = 'je suis un code malicieux';
Ligne 23: Ligne 27:
   echo $tmp;   echo $tmp;
 </code> </code>
-Abuser absolument de cette fonction !+**Abuser absolument de cette fonction !**
  
 ===== Le bon type de variable II ===== ===== Le bon type de variable II =====
Ligne 34: Ligne 38:
  
 ===== RemoveHack ===== ===== RemoveHack =====
-Removehack assure elle seule une partie significative de la sécurité de NPDS. +La fonction removehack() assure à elle seule une partie significative de la sécurité de NPDS.
- +
-Son objectif est de filtrer la chaine de caractére que vous lui passer afin d'en modifier tout code malicieux (javascript notament) et donc de permettre à NPDS de supporter le HTML sans trop de risque+
  
-  Syntaxe  I : $tmp=removehack($chaine);+Son objectif est de filtrer la chaîne de caractères que vous lui passez afin d'en modifier tout code malicieux (javascript notammentet donc de permettre à NPDS de supporter le HTML sans trop de risque...
  
-  Syntaxe II : $query = removeHack(stripslashes(htmlspecialchars(urldecode($query),ENT_QUOTES)));+**Syntaxe  I :**  
 +<code php>$tmp=removehack($chaine);</code> 
 +**Syntaxe II :** 
 +<code php> $query = removeHack(stripslashes(htmlspecialchars(urldecode($query),ENT_QUOTES)));</code>
  
-RemoveHack doit être utilisée sur tous les champs de formulaire (au retour du Submit), sur toute les variables passées par les URL +La fonction removehack() doit être utilisée sur tous les champs de formulaire (au retour du Submit), sur toute les variables passées par les URL
  • codeur/securite.1734000662.txt
  • Dernière modification : Dec. 12, 2024 10:51 AM UTC
  • de jpb