Maison >développement back-end >tutoriel php >Solution à la couverture variable dedecms SESSION menant à une injection SQL common.inc.php

Solution à la couverture variable dedecms SESSION menant à une injection SQL common.inc.php

不言
不言original
2018-04-03 17:21:101766parcourir


La couverture des variables Dedecms SESSION conduit à une solution d'injection SQL common.inc.php :

Fichier de correctif : /include/common.inc php.

Description de la vulnérabilité : Dans /plus/advancedsearch.php de dedecms, la valeur est obtenue directement de SESSION[SESSION[sqlhash] en tant que $query et introduite dans la requête SQL. Le prérequis pour. L'exploitation de cette vulnérabilité est session.auto_start = 1 démarre une session SESSION automatique. L'équipe Cloud Shield a mis en œuvre une défense générale unifiée dans l'entrée d'enregistrement des variables des dedemcs, interdisant l'entrée de variables SESSION

dedecms L'écrasement de la variable SESSION provoque la solution à l'injection SQL common.inc.php

1 Recherchez le code suivant (ligne 68) :

if( strlen($svar)>0 && preg_match('#^(cfg_|GLOBALS|_GET|_POST|_COOKIE)#',$svar) )

2. Remplacez 68 lignes de code. Le code de remplacement est le suivant :

if( strlen($svar)>0 && preg_match('#^(cfg_|GLOBALS|_GET|_POST|_COOKIE|_SESSION)#',$svar) )

Veuillez sauvegarder le. avant de le modifier et d'ajouter le nouveau /include/common. Ce problème peut être résolu en téléchargeant et en remplaçant le fichier inc.php sur le serveur Alibaba Cloud.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn