wargame.kr - 9 (DB is really GOOD)

2021. 2. 27. 19:21정보보안/웹 해킹

 

wargame.kr - 9 (DB is really GOOD)

아홉번째 문제다.

 

What kind of this Database?

you have to find correlation between user name and database.

 

Start 버튼을 눌러 문제를 보자.

문제를 보면 입력폼이 있고 LOGIN 버튼이 존재한다.

 

입력폼에 아이디를 입력하고 LOGIN하면 다음과 같이 그 아이디로 로그인할 수 있는것 같다.

 

 

먼저 admin으로 접근하려고 하자 위와 같이 접근할 수 없다는 알림창이 뜬다. 

그래서 test 를 입력해 접근하자 다음과 같은 화면을 볼 수 있었다.

하지만 로그인 시 나오는 화면에서는 별다른 취약점을 찾아볼 수 는 없었다.

 

 

 

이 문제를 풀면서 뭔가를 적을 수 있는 폼에 계속 삽질을 하다가 취약점 발생 지점이 이부분이 아니라

처음 User 입력폼이 취약하다는 힌트를 받았다 .. 

그래서 user 입력폼에 이것 저것 입력을 해보다 / 문자를 입력했을 때
다음과 같은 에러가 발생한다는걸 발견할 수 있었다.

에러 발생 원인은 / 문자라는것을 알 수 있었고,
/ 문자와 다른 문자를 섞어서 입력시에는 다음과 같은 결과를 볼 수 있었다.

 

에러를 확인해보면 'Unable to open database: unable to open database file' 라는 문구를 볼 수 있으며

db 파일을 열 수 없다고 한다.

 

 

에러 문구 일부

 

에러 문구중 위 그림과 같이 open('./db/wkrm_/.db') 를 볼 수 있는데 이를 보고

입력한 내용이 wkrm_ 뒤에 붙어 다음과 같이 완성된다고 생각했다.

./db/wkrm_[입력한 user명].db

 

그래서 처음 admin으로 로그인하려고 했을 때 접근이 안됬던걸 생각해내고

./db/wkrm_admin.db로 접근해보았다.

 

그러자 위와 같은 db 확장자를 가진 파일을 다운로드할 수있었고 이를 메모장으로 열어보았다.

 

문자들이 좀 깨져서 보이지만 중간에 Congratulations!! 이라는 문구가 보이는걸 보아

이 방법이 맞았다는것을 확신할 수 있었고 맨 아래에 

dhkdndlswmdzltng.php라는 주소를 얻어 여기로 접속하니 flag를 획득할 수 있었다.

 

 

 

플래그 획득

 

 

 

플래그 입력

 

 

 

완료

 

'정보보안 > 웹 해킹' 카테고리의 다른 글

OWASP-ZAP 사용  (0) 2021.03.07
wargame.kr - 11 (tmitter)  (0) 2021.02.28
wargame.kr - 8 (md5 password)  (0) 2021.02.27
wargame.kr - 7 (strcmp)  (0) 2021.02.27
wargame.kr - 6(fly me to the moon)[추후 수정]  (0) 2021.02.27