티스토리 뷰

hacking/webhacking.kr

<webhacking.kr> - 6번

khe0616 2018. 1. 23. 21:10


6단계 클릭시 나타나는 화면이다. id, 패스워드가 적혀있고, base64가 힌트라고 쓰여있다. 일단 index.phps를 클릭한다. (phps는 PHP source cord의 약자라고 한다.)







index.phps를 클릭할때 출력되는 페이지 소스코드의 첫 부분이다.

처음 이 페이지에 접속한 사용자일 경우, "user"와 "password" 쿠키를 만들어주는 부분이다.

user쿠키 값 -> "guest"를 base64인코딩 방식으로 20번 인코딩한 후 replace()한 값

password쿠키 값 -> "123qwe"를 base64인코딩 방식으로 20번 인코딩한 후 replace()한 값







실제로 user와 password 쿠키가 생성되어 있다.








계속해서 페이지 소스코드의 두번째 (마지막) 부분을 확인해보자

현재 존재하는 "user"와 "password" 쿠키 값을 가져온다.

그 값에 replace()를 적용하고 base64방식으로 20번 디코딩한 값이,

user = "admin"        password = "admin"인 경우 solve()함수가 호출된다.


따라서 "admin"이라는 문자열을 base64방식으로 20번 인코딩 한 후, 그 값을 "user"와 "password" 쿠키 값으로 적용시켜주면 문제가 해결된다.

(이 값에 대해 굳이 역으로 replace()를 할 필요는 없다.)









webhacking.kr에서 base64 인/디코딩 기능을 제공하고 있다.





20번 인코딩을 수행한 결과이다. 이 값을 복사한다.










복사 한 값을 user, password의 값으로 붙여넣고 V버튼을 클릭한다.

f5버튼을 눌러 새로고침하면







문제가 풀린다.

'hacking > webhacking.kr' 카테고리의 다른 글

<webhacking.kr> - 24번  (0) 2018.01.26
<webhacking.kr> - 4번  (0) 2018.01.24
<webhacking.kr> - 12번  (0) 2018.01.21
<webhakcing.kr> - 10번  (0) 2018.01.21
<webhacking.kr> - 1번  (0) 2018.01.19
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/07   »
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
글 보관함