codeur:module:securite:securisation-include

Différences

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

Lien vers cette vue comparative

Prochaine révision
Révision précédente
codeur:module:securite:securisation-include [Jun. 09, 2008 09:33 PM UTC ] – créée hotfirenetcodeur:module:securite:securisation-include [Dec. 12, 2024 09:13 AM UTC ] (Version actuelle) jpb
Ligne 1: Ligne 1:
-===== Sécurisation des INCLUDE ===== +====== Sécurisation des INCLUDE ====== 
- +===== Core module ===== 
-**Script lancé par modules.php (dans notre exemple : index.php )** +**Script lancé par modules.php (dans notre exemple : index.php )**Au début de chaque fichier PHP (après le cartouche de commentaires décrivant le module, licence, ...) il est nécessaire de rajouter :
- +
-Au début de chaque fichier PHP (après le cartouche de commentaires décrivant le module, licence, ...) il est nécessaire de rajouter :+
  
 +**Versions actuelles**
 +<code php>
 +// For More security
 +if (!stristr($_SERVER['PHP_SELF'],"modules.php"))
 +   die();
 +if (strstr($ModPath,'..') || strstr($ModStart,'..') || stristr($ModPath, 'script') || stristr($ModPath, 'cookie') || stristr($ModPath, 'iframe') || stristr($ModPath, 'applet') || stristr($ModPath, 'object') || stristr($ModPath, 'meta') || stristr($ModStart, 'script') || stristr($ModStart, 'cookie') || stristr($ModStart, 'iframe') || stristr($ModStart, 'applet') || stristr($ModStart, 'object') || stristr($ModStart, 'meta'))
 +   die();
 +// For More security
 +</code>
 +**Versions anciennes**
 <code php> <code php>
 // For More security // For More security
Ligne 21: Ligne 29:
 } }
 // Retro compatibilité SABLE // Retro compatibilité SABLE
 +</code>
  
- </code> +===== Admin module =====
-** +
-Script lancé par admin.php (dans notre exemple : admin/adm.php )**+
  
-Au début de chaque fichier PHP (après le cartouche de commentaires décrivant le module, licence, ...) il est nécessaire de rajouter :+**Script lancé par admin.php (dans notre exemple : admin/adm.php )**. Au début de chaque fichier PHP (après le cartouche de commentaires décrivant le module, licence, ...) il est nécessaire de rajouter :
  
 +**Versions actuelles**
 +<code php>
 +// For More security
 +if (!function_exists('admindroits'))
 +   include($_SERVER['DOCUMENT_ROOT'].'/admin/die.php');
 +if (strstr($ModPath,'..') || strstr($ModStart,'..') || stristr($ModPath, 'script') || stristr($ModPath, 'cookie') || stristr($ModPath, 'iframe') || stristr($ModPath, 'applet') || stristr($ModPath, 'object') || stristr($ModPath, 'meta') || stristr($ModStart, 'script') || stristr($ModStart, 'cookie') || stristr($ModStart, 'iframe') || stristr($ModStart, 'applet') || stristr($ModStart, 'object') || stristr($ModStart, 'meta'))
 +   die();
 +// For More security
 +</code>
 +**Versions anciennes**
 <code php>// For More security <code php>// For More security
 if (!eregi("admin.php", $PHP_SELF)) { die(); } if (!eregi("admin.php", $PHP_SELF)) { die(); }
Ligne 45: Ligne 62:
 </code> </code>
  
-**Script servant à la réalisation d’un BLOC NPDS** +===== Bloc module ===== 
- +**Script servant à la réalisation d’un BLOC NPDS (dans notre exemple : monbloc.php)**Au début de chaque fichier PHP (après le cartouche de commentaires décrivant le module, licence, ...) il est nécessaire de rajouter :
-Au début de chaque fichier PHP (après le cartouche de commentaires décrivant le module, licence, ...) il est nécessaire de rajouter :+
  
 +**Versions actuelles**
 +<code php>
 +if (stristr($_SERVER['PHP_SELF'],'monbloc.php')) die();
 +</code>
 +**Versions anciennes**
 <code php> <code php>
 // For More security // For More security
Ligne 62: Ligne 83:
 </code> </code>
  
-:!:Plus généralement tous fichier PHP contenu dans un module (à l’exclusion d’un fichier de paramétrage,d’installation) contenant l’utilisation de +<note important>Plus généralement tous fichier PHP contenu dans un module (à l’exclusion d’un fichier de paramétrage, d’installation) contenant l’utilisation de 
-variables global de NPDS (par exemple $ModStart, $ModPath, $language, …) doit être sécurisé !+variables globales de NPDS (par exemple $ModStart, $ModPath, $language, …) doit être sécurisé !</note> 
  • codeur/module/securite/securisation-include.1213047216.txt
  • Dernière modification : Jun. 09, 2008 09:33 PM UTC
  • de hotfirenet