[ecrire ↪ autosave_no_stripslashes] 20 commits

spip/ecrire | 20 commits

Par placido, le 1er septembre 2026 à 17h26min :

fix(autosave_clean_value): ne pas supprimer abusiment les antislash \

Modifié
inc/cvt_autosave.php

Détails : fix(autosave_clean_value): ne pas supprimer abusiment les antislash `\` (52db8467) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 1er septembre 2026 à 12h03min :

build: Version 4.4.22

Modifié
CHANGELOG.md
inc_version.php
paquet.xml

Détails : build: Version 4.4.22 (f6100f22) · Validations · spip / ecrire · GitLab

==============================
Par Maïeul Rouquette, le 1er septembre 2026 à 11h10min :

build: up spip_version_code pour recalculer les caches

Modifié
inc_version.php

Détails : build: up spip_version_code pour recalculer les caches (511ecd97) · Validations · spip / ecrire · GitLab

==============================
Par Maïeul, le 1er septembre 2026 à 10h35min :

Merge branch ‹ fix_security_4906 › into ‹ 4.4 ›

Restriction sur autosave et champs techniques de formulaires

See merge request spip/ecrire!337

Modifié
action/session.php
balise/formulaire_.php
inc/cvt_autosave.php

Détails : Merge branch 'fix_security_4906' into '4.4' (e78cf739) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 1er septembre 2026 à 10h32min :

fix: dans les formulaires les champs _xxx permettent d’injecter du html ou du js mais pas plus

Refs: Connexion · GitLab

Modifié
balise/formulaire_.php

Détails : fix: dans les formulaires les champs _xxx permettent d'injecter du html ou du js mais pas plus (b619dd20) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 1er septembre 2026 à 10h32min :

refactor: les autosave des formulaires sont stockés en JSON dans la session et les variables commençant par un _ sont ignorées

refs: Connexion · GitLab

Modifié
action/session.php
inc/cvt_autosave.php

Détails : refactor: les autosave des formulaires sont stockés en JSON dans la session et... (9e84d225) · Validations · spip / ecrire · GitLab

==============================
Par Maïeul, le 1er septembre 2026 à 10h25min :

Merge branch ‹ security-4901 › into ‹ 4.4 ›

[4.4] Vérifier HTTP_X_FORWARDED_HOST

See merge request spip/ecrire!335

Modifié
inc/utils.php
inc_version.php

Détails : Merge branch 'security-4901' into '4.4' (d1f843a1) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 1er septembre 2026 à 10h23min :

fix: si on a un HTTP_X_FORWARDED_HOST différent de HTTP_HOST on l’utilise mais on ne lui fait confiance que si il est connu

A défaut, les URLs absolues générées par le site, y compris dans les emails, reposeront sur la meta adresse_site

Refs: Connexion · GitLab

Modifié
inc/utils.php
inc_version.php

Détails : fix: si on a un HTTP_X_FORWARDED_HOST différent de HTTP_HOST on l'utilise mais... (9f6a3df8) · Validations · spip / ecrire · GitLab

==============================
Par marcimat, le 1er septembre 2026 à 10h13min :

Merge branch ‹ security-4902 › into ‹ 4.4 ›

[4.4] Vérifications de modèles et d’urls

See merge request spip/ecrire!333

Modifié
inc/modeles.php
inc/urls.php
paquet.xml

Détails : Merge branch 'security-4902' into '4.4' (a52c88a7) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 1er septembre 2026 à 10h09min :

feat: une option remplacer sur la fonction neutraliser_modeles_publics()

Modifié
inc/modeles.php

Détails : feat: une option remplacer sur la fonction neutraliser_modeles_publics() (d1185298) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 1er septembre 2026 à 10h09min :

feat: fonction urls_type_objet_valide() pour vérifier si un type correspond à un objet URL-able

  • Rejet automatique des types hors liste d’objets URL-able

Refs: spip-security/securite#4902

Modifié
inc/urls.php

Détails : feat: fonction `urls_type_objet_valide()` pour vérifier si un type correspond à un objet URL-able (f6b4e081) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 1er septembre 2026 à 10h09min :

feat: Liste d’autorisation et d’interdiction des modèles SPIP pour les contributions publiques

Ajout de

  • neutraliser_modeles_publics() : neutralise les modèles non autorisés dans un texte public
  • modeles_publics_interdits() : liste des modèles toujours neutralisés dans un texte public, même s’ils figurent dans l’allowlist
  • modeles_publics_autorises() : liste des modèles autorisés dans un texte soumis ou prévisualisé (contributions publiques, formulaires CVT)

Le point d’entrée est neutraliser_modeles_publics().

Les listes sont indexées par contexte (forum, …) et peuvent être complétées par un allowlist explicite.

  • Une constante _MODELES_PUBLICS_AUTORISES permet de définir les modèles autorisés par défaut pour chaque contexte ou pour tous les contextes.
  • Un pipeline modeles_publics_autorises permet de compléter les listes autorisées pour chaque contexte.

Refs: spip-security/securite#4902

Modifié
inc/modeles.php
paquet.xml

Détails : feat: Liste d’autorisation et d’interdiction des modèles SPIP pour les contributions publiques (39cb4dd7) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 1er septembre 2026 à 09h54min :

fix: eviter de générer du cache avec des contextes empoisonnés par du PHP

On ne bloque aucune attaque ici, mais on évite simplement que le cache ne contiennent du code PHP envoyé par une tentative, ce qui est ensuite detecté comme faux positif malware par certains hébergeurs à trois lettres

Refs: Connexion · GitLab

(cherry picked from commit 24b7eb1553bac17c55be8f663cec0d4caa672610)

Modifié
public/cacher.php

Détails : fix: eviter de générer du cache avec des contextes empoisonnés par du PHP (11aa3dd8) · Validations · spip / ecrire · GitLab

==============================
Par marcimat, le 31 août 2026 à 12h27min :

Merge branch ‹ fix_4900_complement › into ‹ 4.4 ›

fix: urlencode() plus facilement les chaines dans safe_export_env()

See merge request spip/ecrire!327

Modifié
public/compiler.php
public/fonctions.php

Détails : Merge branch 'fix_4900_complement' into '4.4' (46d09f41) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 31 août 2026 à 12h24min :

fix: urlencode() plus facilement les chaines dans safe_export_env()

Refs: Connexion · GitLab

Modifié
public/compiler.php
public/fonctions.php

Détails : fix: urlencode() plus facilement les chaines dans safe_export_env() (2902c59c) · Validations · spip / ecrire · GitLab

==============================
Par marcimat, le 31 août 2026 à 12h23min :

Merge branch ‹ fix_capture_header › into ‹ 4.4 ›

fix: ne pas se fier qu’a la regexp pour capturer les header()

See merge request spip/ecrire!328

Modifié
public/composer.php

Détails : Merge branch 'fix_capture_header' into '4.4' (44160486) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 31 août 2026 à 12h20min :

fix: ne pas se fier qu’a la regexp et s’assurer que la directive header() est la seule chose de ce bloc PHP

Refs: Connexion · GitLab

Modifié
public/composer.php

Détails : fix: ne pas se fier qu'a la regexp et s'assurer que la directive header() est... (a792c4ea) · Validations · spip / ecrire · GitLab

==============================
Par marcimat, le 31 août 2026 à 12h19min :

Merge branch ‹ fix_signature_filtres › into ‹ 4.4 ›

fix: signer les filtres insérés via la balise #FILTRE

See merge request spip/ecrire!325

Modifié
public/balises.php
public/composer.php
public/fonctions.php

Détails : Merge branch 'fix_signature_filtres' into '4.4' (03a086be) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 31 août 2026 à 12h02min :

fix: signer les filtres insérés via la balise #FILTRE

Modifié
public/balises.php
public/composer.php
public/fonctions.php

Détails : fix: signer les filtres insérés via la balise #FILTRE (524aad62) · Validations · spip / ecrire · GitLab

==============================
Par marcimat, le 31 août 2026 à 12h00min :

Merge branch ‹ fix_deprecated_reflection › into ‹ 4.4 ›

fix: Dépréciation PHP 8.4 sur ReflectionMethod

See merge request spip/ecrire!323

Modifié
public/sandbox.php

Détails : Merge branch 'fix_deprecated_reflection' into '4.4' (5009131a) · Validations · spip / ecrire · GitLab