게시판의 글을 읽는데 3번째 글의 경우에는 암호가 걸려져 있다. 그리고 암호를 입력하는 창이 뜨는데, 문제를 보면 자연스럽게 SQL Injection 문제라는 것을 알 수 있다.
=
와 #
(주석) 문자를 필터링하기 때문에 1' or '1'>'0
방식으로 우회할 수 있다.
그러면 경고창에서 "Congratulation!! auth_key is suninatastopofworld!"라는 메시지를 볼 수 있고, 추가적으로 경고창이 하나가 더 뜨는데 인코딩이 깨져서 어떤 글자인지는 알 수 없었다. 인증창에 suninatastopofworld!를 입력해보았지만 잘못된 인증키라고 나온다. 따라서 게시글의 내용을 읽어야 된다는 것을 알 수 있다.
쿠키 정보를 본 결과 auth%32key 라는 항목이 새로 생긴것을 확인할 수 있다. 따라서 "suninatastopofworld!"를 쿠키값으로 주고 클릭을 했는데도 작동하지 않았다.
그러다가 2번째 게시글에서 문자열을 인코딩하는 사이트의 주소를 알려준 것을 통해서 suninatastopofworld!를 모든 해싱에 대해서 해 본 결과 md5 해시의 결과인 65038b0559e459420aa2d23093d01e4a를 쿠키값으로 주었을 때 게시글을 읽을 수 있다는 것을 확인할 수 있었다.
그리고 게시글의 소스보기를 한 결과 <form method="post" name="KEY_HINT" action="Rome's First Emperor">
부분을 확인 할 수 있어서 auth key가 이 폼의 action값에 있는 문제의 답이라는 것을 추측하고 시도한 결과 맞다는 것을 확인할 수 있었다.
Auth key : Augustus
'Hacking > - suninatas.com' 카테고리의 다른 글
suninatas 공지사항 글쓰기 성공 (0) | 2018.06.17 |
---|---|
[Web] Level 5 (0) | 2015.10.24 |
[Web] Level 4 (0) | 2015.10.24 |
[Web] Level 3 (0) | 2015.10.24 |
[Web] Level 2 (0) | 2015.10.24 |