반응형
문제에 접근하면 위와 같은 문자열들만 나타난다.
소스코드를 보니 index.phps가 있는것 같다.
접근해보자
소스코드가 있는데 간단히 정리하면
$q=@mysql_query("select id from lv0 where agent='$_SERVER[HTTP_USER_AGENT]'");
의 결과 첫번째 행의 id가 admin이면 문제가 풀리고 만약 쿼리 결과가 존재하지 않으면 ('User_Agent 입력값', '현재 내 IP', 'guest' ) 로 lv0 테이블에 삽입시킨다.
여기서 중요한 점은 내가 USER_AGENT에 뭐라고 입력하던지 삽입되는 id는 guest로 지정되어있다는 점이다.
문제를 풀기위해서는 id가 admin이어야하므로 이 부분을 변경시켜줘야 한다는 것을 알 수 있다.
아래는 입력 쿼리이다.
$q=@mysql_query("insert into lv0(agent,ip,id) values('$agent','$ip','guest')") or die("query error");
내가 입력한 것이 '$agent' 부분에 들어가므로 이 부분부터 시작하여 'guest' 부분을 침범하면 된다.
따라서 나는 User-Agent 부분에 admin12','1','admin')# 으로 입력해주었다.
그 결과 실행이 잘 되었고 where 절에 agent로 되어있으므로 User-Agent에 admin12를 넣으면~?
클리어 ~
반응형
'Solve Problem > Webhacking.kr' 카테고리의 다른 글
[webhacking.kr] 14번 문제 (0) | 2018.03.07 |
---|---|
[webhacking.kr] 13번 문제 (0) | 2018.03.07 |
[webhacking.kr] 6번 문제 (0) | 2018.03.05 |
[webhacking.kr] 5번 문제 (0) | 2018.03.05 |
[webhacking.kr] 4번 문제 (0) | 2018.03.05 |