Webhacking.kr 45번 문제 풀이


45번 문제 클릭~


무려 550점 짜리!!



아래와 같은 화면을 볼 수 있다



일단 Submit Query 을 클릭해보았다


hi guest 라고 나온당



소스 보기를 해보면 index.phps 페이지를 볼 수 있다고 나온당



index.phps 페이지를 보자



id와 pw를 맞추면 문제가 해결되나 보다


실제로 pw를 맞출 수는 없으니


SQL Injection을 통해 우회해보자


위에 보면 $_GET[id]=mb_convert_encoding($_GET[id],'utf-8','euc-kr'); 라는걸 볼 수 있다


언어 인코딩을 바꾸는 함수 같은데 한 번 검색을 해보았당



mb_convert_encoding 함수에 취약점이 있나보다


그래서 검색하여 알아보았더니


mb_convert_encoding 함수에서 magic_quotes_gpc를 우회할 수 있는 취약점이 있다고 한다


%a1 ~ %fe 을 입력하여 우회해보자


id 값에 %a1를 넣고


%a1'or id=admin# 을 입력하여 pw 부분도 우회하여 보자


물론 특수문자는 url 인코딩으로 우회한당


%a1%27or%20id=char(97,100,109,105,110)%23



아래와 같이 성공적으로 admin으로 로그인 된걸 확인할 수 있다


그리고 45번 문제도 클리어 된다