티스토리 뷰
1. Old-06 WriteUp
해당 문제를 클릭하면 밑의 그림과 같은 화면이 나타난다.
문제의 화면에서 view_source의 코드를 확인할 수 있다. 해당 코드는 2부분으로 나누어 설명하도록 한다.
(1) 첫번째 부분
첫번째 부분의 코드를 분석해 보면, user 이름의 쿠키 값이 없다면 실행되는 것을 확인 할 수 있다.
이 때, guest와 123qwe값을 각각 20번 base64 인코딩 후 user, password의 쿠키 값에 설정된다.
str_replace 함수가 있지만 base64값은 (0~9와 알파벳 대소문자, '+', '/' 그리고 '=') 문자로만 구성되어 있으므로, str_replace 함수를 신경 안써도 문제를 해결 할 수 있다.
실제로 guest를 base65 인코딩 20번한 결과값과 해당 쿠키값이 일치하는 것을 확인 할 수 있었다
# Cyberchef
20번 base64인코딩을 좀 편리하게 하기 위해서 cyberchef를 사용했다. cyberchef에서는 tab을 사용하여 20번의 base64 인코딩을 실행할 수 있다.
cyberchef 주소 gchq.github.io/CyberChef/
(2) 두번째 부분
두번째 부분에서 id가 admin이고 password가 nimda를 base64 인코딩을 20번 할 경우 일 경우 문제가 풀린다는 것을 확인 할 수 있다.
1) admin base64 인코딩 20번 한 결과
2) nimda base64 인코딩 20번 한 결과
각각 인코딩된 값을 user, password의 쿠키값에 입력하면
위의 사진과 같은 화면이 뜨고 문제가 해결됐다고 알람이 뜬다.
'Web Security > Webhacking.kr' 카테고리의 다른 글
old. 016 (0) | 2021.03.02 |
---|---|
old 17 (0) | 2021.02.25 |
old 14 (0) | 2021.02.24 |
old.15 (0) | 2021.02.22 |
webhacking.kr 세팅 (0) | 2021.02.22 |