>  기사  >  백엔드 개발  >  SQL 주입으로 이어지는 SESSION 변수 범위를 해결하는 솔루션 common.inc.php

SQL 주입으로 이어지는 SESSION 변수 범위를 해결하는 솔루션 common.inc.php

不言
不言원래의
2018-04-03 17:21:101737검색


dedecms SESSION 변수 덮어쓰기로 인해 SQL 주입이 발생합니다. common.inc.php 솔루션:

패치 파일: /include/common.inc.php

취약점 설명: dedecms /plus/advancedsearch.php , 직접 SESSION[SESSION[sqlhash]에서 값을 가져와서 $query로 SQL 쿼리에 가져옵니다. 이 취약점을 악용하기 위한 전제는 session.auto_start = 1이며, 이는 자동 SESSION 세션이 시작되었음을 의미합니다. dedemcs의 변수 등록 입구를 공통적으로 사용합니다. 통합 방어, SESSION 변수의 유입을 금지합니다

dedecms SESSION 변수 적용으로 인해 SQL 주입이 발생합니다. common.inc.php 솔루션

1. 68):

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

2 , 68줄의 코드를 대체합니다. 대체 코드는 다음과 같습니다.

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

수정하기 전에 파일을 백업하고 새 /include/common.inc를 업로드하세요. 이 문제를 해결하려면 php 파일을 Alibaba Cloud 서버에서 교체하세요.


위 내용은 SQL 주입으로 이어지는 SESSION 변수 범위를 해결하는 솔루션 common.inc.php의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.