Ne pas échapper le js inséré par un modèle dans l'admin de SPIP

Bonjour,

En 3.2 (ou 3.3), est-ce qu'un plugin peut déclarer son JS sûr pour que le js de ses modèles ne soit pas échappé dans l'admin de SPIP (cf https://contrib.spip.net/Nivo-Slider-3747#comment508245-508242) ?

Merci d'avance

Le js n’est par défaut pas échappé dans les modèles, cf le modèle gis qui en contient plein
https://git.spip.net/spip-contrib-extensions/gis/src/branch/master/modeles/carte_gis.html

MAIS

les images ou lien avec des urls un peu louches ou des attributs onxxx sont en effet échappées car ce sont des moyens possibles pour faire du XSS et pour un rédacteur invité sur un site de voler la session de l’admin qui relie son article.

La detection produit certainement des faux positifs, mais on ne sait pas faire mieux.

A charge pour les plugins de faire des modèles avec du html propre sans ambiguité et d’éviter ce genre de situation.

Cerdic a écrit le 26/04/2021 à 13:58 :

Le js n’est par défaut pas échappé dans les modèles, cf le modèle gis qui en contient plein
modeles/carte_gis.html · master · spip-contrib-extensions / gis · GitLab

MAIS

les images ou lien avec des urls un peu louches ou des attributs onxxx sont en effet échappées car ce sont des moyens possibles pour

faire du

XSS et pour un rédacteur invité sur un site de voler la session de l’admin qui relie son article.

En l’occurrence, c'est des data-src qui provoquent le problème.

La detection produit certainement des faux positifs, mais on ne sait pas faire mieux.

Oui, c'est en rapport avec

A charge pour les plugins de faire des modèles avec du html propre

sans

ambiguité et d’éviter ce genre de situation.

data-src sur une image, c'est devenu un standard, non ?

data-src ou bien le fait que le src contient une image en base64 ?

Cerdic a écrit le 28/04/2021 à 09:27 :

data-src ou bien le fait que le src contient une image en base64 ?

Bonne pioche !

Je vais corriger le plugin pour réparer la prévisue dans l'admin.

RealET a écrit le 28/04/2021 à 10:02 :

Cerdic a écrit le 28/04/2021 à 09:27 :

data-src ou bien le fait que le src contient une image en base64 ?

Bonne pioche !

Je vais corriger le plugin pour réparer la prévisue dans l'admin.

Résolu, merci pour la piste