[RESOLU] Les entrées utilisateur à sécuriser quand on affiche le contenu

Avatar du membre
Mammouth du PHP | 1564 Messages

19 avr. 2022, 08:31

Je souhaite sécuriser les entrées de l'utilisateur en gardant la possibilité d'utiliser les balises HTML.

Quelles sont les balises à sécuriser ?

J'ai déjà mis ceci dans les balises interdites :

Code : Tout sélectionner

<?, <script, <%
Ya peut être un moyen de le faire via une fonction PHP déjà faite ? Un genre de strip_tags()

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

19 avr. 2022, 10:29

Effectivement strip_tags() et en utilisant le 2ème paramètre qui est très peu connu et qui permet d'indiquer les balises HTML autorisées (strong, em, i, b)
https://www.php.net/strip_tags

Toutefois, il est très loin de faire correctement le nettoyage (notamment un utilisateur malveillant pourrait lancer du javascript avec un paramètre onclick/onload/onhover sur une balise autorisée)
Du coup il vaut mieux utiliser une librairie reconnue comme HTMLpurifier :
http://htmlpurifier.org/
Quand tout le reste a échoué, lisez le mode d'emploi...

Avatar du membre
Mammouth du PHP | 1564 Messages

19 avr. 2022, 11:38

Bien vue les événements sur les balises HTML !! Merci pour le lien, je vais aller jeter un œil !

Avatar du membre
Mammouth du PHP | 1564 Messages

19 avr. 2022, 11:54

C'est une usine à GAZ le bordel, je vais essayer de trouver une autre solution ou l'utiliser en dernier recours, merci ;)