본문 바로가기
Wargame/webhacking.kr

webhacking.kr 55번

by morae23 2019. 2. 1.

Webhacking.kr

#55

 

 

55번 문제를 열면 아래와 같은 화면을 볼 수 있다.

 

 



 

 

아래는 rank를 눌렀을 때 볼 수 있는 랭킹 페이지이다.

 

 



 

 

이 때 score를 누르면

?score=2147483647

로 요청하기 때문에

 

뒤에 or 1=1을 붙여보면 아래와 같이

id : localhost // 0

이 출력된다.

 

 



 

 

이 때

or 1 = 0을 수행하면 아래와 같이 gurwodla // 2147483647 가 출력된다.

이를 이용하면 blind sql injection이 가능할 것으로 보인다.

 

 



 

 

먼저 컬럼의 정보를 알기 위해 procedure analyse()를 하면 아래와 같이 db, 테이블, 컬럼 정보를 얻을 수 있다.

 

 



 

 

힌트를 보면 password는 3번째이므로 limit을 이용하여 보면 아래와 같이 패스워드의 실제 컬럼명을 알 수 있다.

 

 



 

 

이 정보들을 이용하여 python으로 패스워드의 길이와 값을 알아내었다.

 

 




 

이 때 substr()을 이용할 수 없어 right()와 left()를 이용하였다.




 


 

이렇게 얻은 패스워드로 인증하면 clear할 수 있다.

 

 



 

 



'Wargame > webhacking.kr' 카테고리의 다른 글

webhacking.kr 57번  (0) 2019.02.01
webhacking.kr 45번  (0) 2019.02.01
webhacking.kr 44번  (0) 2019.02.01
webhacking.kr 40번  (0) 2019.02.01
webhacking.kr 33번  (0) 2019.02.01

댓글