티스토리 뷰



DB is really GOOD 문제는 이름만 봐도 db와 관련된 문제라는 걸 알 수 있다.

BLUEMEMO SYSTEM이 있고 USER name을 치는 곳이 있다.

따로 join은 없고 login만 하면 되는데 main 페이지의 코드를 보면



function fschk(f){
if(f.user_id.value=="admin"){
alert("dont access with 'admin'");
return false;
}
}



이런식으로 user_id의 value가 admin이면  dont access with 'admin' 이 뜬다.




그리고 user_id 마다 memo list 들의 내용이 바뀐다.





여러가지를 넣어봤는데 .는 _가 되고, / 를 넣자 Fatal error가 뜬다.




Fatal error 에서 SQLite3->open('./db/wkrm_/.db') 부분을 보면 왠지 디렉토리같고 .db는 database 파일 확장자명 같다.

그래서 url 부분에 http://wargame.kr:8080/db_is_really_good/db/wkrm_admin/.db 를 치게 되면 wkrm_admin.db 파일이 다운로드 된다.



db 파일을 간단하게 보여주는 프로그램이 있어서 그걸 썼다.

데이터베이스 구조도 함께 볼 수 있어서 좋은 것 같다.

테이블은 memo 밖에 없고, ip와 memo, m_time이 있는걸로 보아 아까 위에서 봤던 memo의 내용과 memo가 작성된 시간이 담겨있는 듯하다.





데이터베이스 구조 말고 데이터 보기 탭을 누르면 db안에 있는 데이터들을 볼 수 있고,

memo 의 Congratula... 부분을 누르게 되면 전체 내용을 오른쪽에서 확인할 수 있다. 


hxd 로도 볼 수 있다.




저 php 파일을 url 에 추가해주면 flag가 뜬다.




'Hacking > WarGame' 카테고리의 다른 글

[Wargame.kr] md5_compare  (0) 2017.08.30
[Wargame.kr] login filtering  (0) 2017.07.30
[Wargame.kr] WTF_CODE  (0) 2017.07.30
[Wargame.kr] flee button  (0) 2017.07.30
[Wargame.kr] QR CODE PUZZLE  (0) 2017.07.30
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함