Webhacking.kr 18
-
[Webhacking.kr] Challenge 18 풀이Wargame/Webhacking.kr 2019. 3. 30. 23:09
이번 문제는 SQL Injection 문제이다. 먼저 index.phps 페이지를 확인해보자. 코드를 확인해보면, no를 GET 방식으로 입력받아야 아래 소스가 실행된다는 것을 알 수 있다. 여기서 no는 입력칸에 입력된 값이 저장되는 변수이다. eregi는 php의 입력 문자열 필터링 함수이다. 이 함수로 인해 공백, /, 괄호, \t, |, &, union, select, from, 0x는 no의 입력값으로 올 수 없다. 만약 이 문자들이 입력되면 exit 함수가 실행되어 no hack 문구가 출력된다. 그 뒤에 나오는 $q=@mysql_fetch_array(mysql_query("select id from challenge18_table where id='guest' and no=$_GET[no]"..