Wargame/wargame.kr
<wargame.kr> DB is really GOOD
지우친구 웅이
2021. 10. 25. 23:57
무슨 종류의 데이터베이스인지 묻는다. 유저 이름과 데이터베이스 사이에서 연관성을 찾아야 한다고 한다.
USER의 이름을 입력할 수 있는 입력 폼이 있다. 우선 'admin'으로 접근해 보았다.
"don't access with admin"이라는 알림이 뜬다. 'admin '(어디서 봤는지 기억이 나진 않지만)으로 우회해 보았다.
하나의 채팅방이 나오지만, 문제 풀기위한 방향과는 거리가 먼 것 같다.
<풀이 방법>
특수 문자 '/'를 입력하면 데이터베이스 관련 오류 메시지를 보여준다.
개발자 관점에서 웹 사이트를 배포할 때는 이러한 오류 로그가 클라이언트에게는 보이지 않도록 처리해야 한다.
오류 로그를 살펴보면 데이터베이스를 열 수 없다고 한다. SQL Lite를 이용하여 로컬 데이터베이스를 관리하고, 각 채팅방에 따른 DB파일을 생성하여 기록하고 있다. 오류 메시지를 보면 DB의 경로 './db/wkrm_/.db'을 찾아볼 수 있다.
즉 DB의 경로는 './db/wkrm_{USER name 입력 값}.db'이다
다시 'admin'을 이용하여 './db/wkrm_admin.db'에 접속하면, 하나의 파일을 다운로드한다.
hxd로 열고 아래로 내려보면 "Congratulations! Here is flag!"라는 문구를 찾을 수 있다.
그 뒤로 하나의 경로가 나온다.(처음엔 이게 flag 값인 줄 알았다.)
'/dhkdndlswmdzltng.php'로 접속하면 인증 키 값을 얻을 수 있다.