WarGame/[Webhacking.kr]

[Webhacking.kr] Challenge(old) - 02

이번에는 webhacking.kr 의 2번째 문제를 풀어보자!

 

문제를 클릭해보면..

 

뜬금없이 나오는 왠 아이피를 로깅중이라니?

 

우선 F12 로 코드를 확인해보자

 

맨 위의 주석은 error 라고 설명하고 잇고 html 문서는 아무런 내용도 없다. 그런데 바디라인의 주석에 뭔가 php 문서이름이 나타나있다.

 

만약 admin.php에 접근하면 나의 엉덩이를 걷어찬다는 주석이다.. 뭔지 모르겠지만 차여봐야할거같다.

 

하위 admin.php 파일로 들어가는 것이 뭔가 맞는거같다. 그런데 갑자기 비밀번호를 물어본다. 아무거나 입력해보자.

 

당연히 잘못된 비밀번호이다..

이것저것 찾아보던 중 쿠키가 있는 것을 확인했다.

 

혹시 이값이 패스워드인가? 해서 입력해보았다.

 

당연히 아니었다..

꽤 오랜시간 소비하면서 못 풀어서 ㅠㅠ 검색을 통해 깨달았다.

time 의 value 값으로 blind SQL injection을 수행하는 것이었다.

 

 

쿠키값을

참으로 만들면

 

첫 번째 페이지의 주석의 시계가 맨 뒤가 01로 변한다.

 

<!--
2070-01-01 09:00:01
-->

 

 

반대로 거짓으로 만들면

 

 

주석의 시계 맨 뒤가 00으로 변한다.

 

<!--
2070-01-01 09:00:00
-->

 

참과 거짓의 반응으로 Blind SQL Injection을 수행하여 수동으로 진행하기에는 과정이 번거로우니 Python 자동화 소스를 통해 테이블명과 컬럼명을 구하시는 ws1004(김규빈)님의 포스트를 참고하였습니다.

https://whitesnake1004.tistory.com/596

 

[Renewal] webhacking.kr old-2 [500]

문제 사이트에 들어가보면 아래와 같습니다. 소스코드를 한번 확인해 보겠습니다. 위의 주석에는 시간이 적혀있고, 아래 주석에는 admin.php에 접근한다면 너의 엉덩이를 발로 찬다고 합니다. 이��

whitesnake1004.tistory.com

 

 

결과

 

DB명을 알게 됬으니 이제 테이블 명을 INFORMATION_SCHEMA.TABLES를 이용해서 추출해 보면 아래와 같다.

 

결과

 

해당 테이블 명을 얻었기 때문에 칼럼명만 얻으면 password를 찾을 수 있다.

칼럼 명도 마찬 가지로 INFORMATION_SCHEMA.COLUMNS를 이용해 보겠다.

 

결과는 아래와 같다.

 

테이블 명에 칼럼까지 찾았기 때문에 pw에 있는 데이터를 찾을 수 있다.

 

결과는 아래와 같다.

 

 

admin.php 페이지에서 kudos_to_beistlab 을 입력하면

 

 

라는 페이지가 뜨면서 문제가 해결된다.

'WarGame > [Webhacking.kr]' 카테고리의 다른 글

[Webhacking.kr] Challenge(old) - 01  (0) 2020.06.23