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번 문제도 클리어 된다