[ecrire ↪ fix_summer_security_5x] 12 commits

spip/ecrire | 12 commits

Par Cerdic, le 10 août 2026 à 09h23min :

fix: recuperer_url supporte une option callback_valider_url

Cela permet de valider chaque URL de redirection intermédiaire

Refs: spip-security/securite#4897

Modifié
inc/distant.php

Détails : fix: recuperer_url supporte une option callback_valider_url (84300e00) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 10 août 2026 à 09h23min :

build: up spip_version_code pour recalculer les caches

Modifié
src/SpipVersion.php

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

==============================
Par Cerdic, le 10 août 2026 à 09h23min :

fix: verifier les autorisation de modifier login et pass dans auteur_instituer() car ce sont bien des informations sensibles

Refs: spip-security/securite#4894

Modifié
action/editer_auteur.php

Détails : fix: verifier les autorisation de modifier login et pass dans... (0133707d) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 10 août 2026 à 09h23min :

fix: l’appel en POST sur editer_objet, editer_auteur, editer_article, editer_rubrique est interdit.

Il était déprécié en SPIP 4.4.17

Modifié
action/editer_article.php
action/editer_auteur.php
action/editer_objet.php
action/editer_rubrique.php

Détails : fix: l'appel en POST sur editer_objet, editer_auteur, editer_article, editer_rubrique est interdit. (2220b7ab) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 10 août 2026 à 09h23min :

fix: |chercher_rubrique{} appelé avec actionable=1 est supprimé

Déprécié depuis SPIP 4.4.17

Modifié
inc/filtres.php
inc/filtres_ecrire.php

Détails : fix: `|chercher_rubrique{}` appelé avec actionable=1 est supprimé (d3747da7) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 10 août 2026 à 09h23min :

fix: si champs_editable n’est pas défini, ce n’est pas un objet editorial proprement déclaré,

On ignore les valeurs éventuellement POSTées et on ne considère que la variable $set

Refs: spip-security/securite#4893

Modifié
action/editer_objet.php

Détails : fix: si champs_editable n'est pas défini, ce n'est pas un objet editorial proprement déclaré, (32f1f5a3) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 10 août 2026 à 09h23min :

docs: correction du PHPDoc

Modifié
inc/modifier.php

Détails : docs: correction du PHPDoc (2a208399) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 10 août 2026 à 09h23min :

feat: Signature sur les jobs

Chaque job est maintenant signé : pour être valide, il faut passer par un appel à queue_add_job().

Refs: spip-security/securite#4895

Ajouté
maj/2026.php
Modifié
base/upgrade.php
bootstrap/base/objets.php
inc/queue.php
paquet.xml
src/SpipVersion.php

Détails : feat: Signature sur les jobs (841efcf9) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 10 août 2026 à 09h23min :

fix: L’échappement SQL appliqué sur un champ date ignore uniquement la fonction NOW()

Refs: spip-security/securite#4892

Modifié
req/mysql.php
req/sqlite_generique.php

Détails : fix: L’échappement SQL appliqué sur un champ date ignore uniquement la fonction NOW() (4f2be135) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 10 août 2026 à 09h23min :

feat: ajout de SpipCles::secret_des_actions()

La clé retournée mixe la meta secret_des_actions (bdd) avec une clé secret_des_actions (fichier).
Il devient plus difficile de trouver la clé de hachage d’action à partir d’une simple injection SQL.

Refs: spip-security/securite#4891

Modifié
inc/securiser_action.php
src/Chiffrer/SpipCles.php

Détails : feat: ajout de SpipCles::secret_des_actions() (33bb7e1a) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 10 août 2026 à 09h23min :

fix: Réparer le filtre ajax des modèles

Un modèle peut avoir une option ajax, peu connue.
Celle-ci ne fonctionnait plus comme attendue, rechargeant toute la page.

L’ajax dans inclure_modele() ne passe pas par l’option ajax de recuperer_fond() comme il devrait logiquement,
pour analyser ensuite simplement le retour du modele qui fournirait une classe CSS ‹ spip_lien_ok ›,
indiquant que le modèle a bien traité le lien fourni (les cas [<modele|xxx>->https://www.spip.net])
pour éviter que SPIP ajoute un lien englobant.

Cependant, il manquait alors la transmission de certains contextes nécessaires.

Refs: spip-security/securite#4889

Modifié
public/assembler.php

Détails : fix: Réparer le filtre ajax des modèles (33cb4e13) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 10 août 2026 à 09h23min :

fix: Le serveur SQL d’une boucle DATA lui est spécifique

Il ne doit pas utiliser le serveur SQL par défaut,
ce qui pouvait altérer certains échappements de code ultérieurement.

Refs: spip-security/securite#4888

Modifié
public/phraser_html.php

Détails : fix: Le serveur SQL d’une boucle DATA lui est spécifique (6e308dcc) · Validations · spip / ecrire · GitLab