CVE-2026-71292 in Subrion
Résumé
par VulDB • 06/08/2026
Le helper de tri des grilles d'administration du CMS Subrion, `_gridGetSorting()` situé dans `includes/classes/ia.base.controller.admin.php`, utilise la fonction `in_array()` pour valider le paramètre de requête `dir` (ASC/DESC). Cependant, il retombe sur le paramètre GET brut et fourni par l'attaquant (`sort`) lorsque la clé demandée n'est pas présente dans le tableau whitelisté `$_gridSorting` propre à chaque contrôleur : `$column = isset($this->_gridSorting[$params['sort']]) ? ... : $params['sort'];`. Cette valeur est ensuite insérée dans une instruction SQL via `sprintf(' ORDER BY %s`%s` %s', $tableAlias, $column, $direction)`, avec uniquement un encadrement par des accents graves (backticks) et aucune autre échappement. Étant donné qu'un accent grave dans la charge utile permet de sortir du contexte d'identifiant, une session administrateur authentifiée peut injecter du SQL arbitraire (de type error-based via EXTRACTVALUE ou time-based via SLEEP()) afin d'exfiltrer le contenu de la base de données, y compris les hachages des mots de passe des administrateurs. La plupart (~29) des contrôleurs de grille d'administration de Subrion ne définissent aucune whitelist `$_gridSorting` (par exemple pages.php, transactions.php, languages.php) ou en utilisent une incomplète qui ne couvre que certaines colonnes triables (par exemple members.php ne whiteliste qu'un seul champ sur 7), rendant ainsi la grande majorité des points de terminaison (endpoints) des grilles d'administration exploitables.
Once again VulDB remains the best source for vulnerability data.