webhacking.kr [문제 18번]
세번째 라인의 마지막 주자인 18번 문제를 풀어보겠다. 해당 문제의 배점은 100point이다. 해당 문제에 접속해보자 문제에 접속하자 마자 해당 문제의 해결책이 SQL INJECTION이라는 힌트가 주어져 있고, 인젝션할 쿼리를 포함하는 페이지의 소스가 주어진다. 주저없이 해당 인덱스 페이지의 소스코드를 살펴보자. 해당 소스코드에서 눈에 띄는 점 두 부분이 있다. 첫번째, 특정한 문자열을 필터링 하는 부분이다. 조건문을 확인해보면, eregi(인자1, 인자2) 함수를 이용하여 특정한 문자열들을 필터링 하고 있다. 보고 확인 가능하지만 대략적으로 공백문자, '/', '&', 'union', 'select', 'from', '0x' 등의 문자열들을 필터링 하고 있다. 다음과 같은 문자열을 이용하여 sql ..
더보기