본문 바로가기
Tip & Tech

PHP- Query String 특수문자 체크하기

by witple [윗플] 2021. 5. 14.

쿼리스트링 특수문자 취약점 방지하는 간단한 방법

<?
	$stringCheckURI = parse_url($_SERVER['REQUEST_URI']);
	parse_str($stringCheckURI['query'], $results);
	foreach ($results as $key => $val) {
		echo $val;
		$special_pattern = "/[`~!@#$%^&*|\\\'\";:\/?^=^+_()<>]/";  //특수기호 정규표현식
		if(preg_match($special_pattern, $val)){
?>
<script>alert('요청하신 내용 중 특수문자가 있거나 정상적인 접근이 아닙니다.\n\n이전화면으로 이동합니다.');history.back();</script>
<?
			exit;
		}
	}
?>

최근엔 쿼리스트링을 대롱대롱 매달아서 쓰는 케이스가 없지만..
해당 케이스에서는 제법 쓸만한...

게시판 등 뭐 어떤 값들이 매달려서 사용하는 지 파악하기도 귀찮으면 이걸로 쓰시길~

 

댓글