j'ai découvert sur l'un de mes sites une faille de sécurité
Ma petite fonction
// Retourne le PHP formaté et coloré
function php_code($code){
// Ici on supprime le retour a la ligne
// Ceux-ci sont déjà remplacé par des <br />
$code = preg_replace("/\n/", "", $code);
// On decode les caracteres spéciaux sans quoi le highlight ne fonctionnerai pas
$code=html_entity_decode($code[1], true);
$code=htmlspecialchars_decode($code);
return '<br /><span class="strong">Script PHP :</span><div class="scroll">'.highlight_string($code, true).'</div><br />';
}
Imaginons que le client (membre, utilisateur) envois en BBcode ceci
// BBCODE
[code=php]
<?php
$var = 'test de la colorisation';
// Envois d'une requete simple XSS
<SCRIPT>alert('Zut alors...')</SCRIPT>
/code
Et la paff la boite de dialogue qui me dit Zut alors...
Quelqu'un a une idée pour sécuriser ?
Merci
