Logs colorées : ne pas afficher les tags HTML

Hello,

sur certains de mes plugins, je log des messages qui contiennent du HTML.
avec la 4.2, si jamais on décoche l’option log brut tout est joliment formaté avec des couleurs, mais du coup les codes HTML sont eux aussi interprétés … et ca rend l’affichage bcp moins beau :frowning:

je viens de pousser une PR sur le core pour que les tags html contenus dans les msg ne soient pas interprétés à l’affichage

Salut,

Pour info, on en parlait déjà ici: Log des scénarios influencés par le contenu du log - #3 par Salvialf

Au passage, je trouve cela assez dangereux d’interpréter l’html dans les logs, cela pourrait être la source d’une attaque par reflected XSS, c’est une faille de sécurité.

Pour sécuriser une app, tout contenu qui n’a pas été généré par l’application doit être nettoyé avant l’écriture vers le navigateur.
D’après moi le core devrait utiliser htmlspecialchars() server side, sur chaque ligne renvoyée au frontend et pas seulement faire le replace d’un seul caractère (<) coté frontend.

Je pense aussi que ce nettoyage ne devrait pas être fait dans une fonction qui se nomme stringColorReplace, chaque fonction doit faire ce qu’elle « dit » et pas plus :wink:
D’ailleurs la fonction scenarioColorReplace elle n’est pas protégée, c’est pourtant l’une ou l’autre qui est appelée suivant la situation.

2 « J'aime »