본문 바로가기

Webhacking

웹 해킹 Webhacking 문제 풀이 8번

728x90

메인 페이지

 

 

페이지 소스 코드

 

 

etenv() 
내장함수로, 인자의 값에 따라 해당되는 환경변수 값을 알려주는 함수입니다.

 

$db = dbconnect(); --> SQL문제와 관련있다고 생각할 수 있습니다.

 

 

$_SERVER['HTTP_USER_AGENT'] = 사이트 접속한 사용자 환경 = Mozilla4.0(compatible; MSIE 6.0; Windows NT 5.1; Q312461; .NET CLR 1.0.3705

 

User_Agent와 SQLI가 관련있다고 생각 할 수 있습니다.

 

user

 

 

 

 

from을 입력하면 페이지 소스에서 from, i가 필터링이 있습니다.

from와 i가 있으면 Access Denied!가 출력하게 됩니다.

SQLI test

 

예상된 결과

 

 

 

페이지 소스을 잘 해석하면 

 

ck가 없다면 해당하는 query문을 하도록 실행합니다.

 

insert into chall8(agent,ip,id) values('{$agent}','{$ip}','guest')

 

해당하는 형식으로 user_Agent에 test','1','admin'),('guest

 

억지로 admin을 생성하게 하는 query문을 작성합니다.

 

insert into chall8(agent,ip,id) values('test','1','admin'),('guest','{$ip}','guest')

 

User_Agent: test

 

입력하면 페이지 소스 코드로 인해서 admin과 비교하여 

 

문제을 해결 할 수 있습니다.