로그인 창이 주어진다. username과 password를 모두 test로 로그인을 하라고 알려준다.
그랬더니 password만 test!으로 바꿔서 로그인을 하라고 알려준다.
로그인을 하니 새로운 페이지가 나온다.
페이지는 다음과 같다. 인간들아 환영한다. 친구가 이곳으로 redirection을 해서 왔지만 아무것도 찾을 수가 없었어. flag 찾게 도움 좀....
Flags를 검색해 보니 아무것도 나오지 않는다.
Redirection을 확인해 봐야겠다는 생각이 든다. Browser Network 탭의 Preserve log를 체크하면 redirection이 일어난 곳을 기록해서 보여준다.
우리의 경우 아래와 같이 2번의 redirection이 일어난 것을 알 수 있다. URL 주소로 접속하려면?(query string)을 이용해서 GET method으로 request를 보내야 한다.
http://saturn.picoctf.net:49764/next-page/id?=cGljb0NURntwcm94aWVzX2Fs
http://saturn.picoctf.net:49764/next-page/id?=bF90aGVfd2F5XzI1YmJhZTlhfQ==
자세히 보면 두 번째 id 값은 base64 인코딩이 되어있다. 첫 번째 id 값도 알파벳+ 숫자로 구성되어 있으니 base64 인코딩이 되어 있지 않을까 싶다.
Flag의 뒷부분이 나왔다.
base64 -d <<< 'bF90aGVfd2F5XzI1YmJhZTlhfQ=='
l_the_way_25bbae9a}
base64 -d <<< 'cGljb0NURntwcm94aWVzX2Fs'
picoCTF{proxies_alvenv
Flag가 나온 것처럼 보이지만 틀렸다고 한다.
picoCTF{proxies_alvenvl_the_way_25bbae9a}
Base64 인코딩은 길이가 다르면 인코딩 된 결괏값이 다르다. 따라서 같은 string도 나눠서 base64 인코딩하면 다른 결과가 나온다.
따라서 id 값을 모아서 base64 인코딩을 해보면 이전 flag와는 다른 flag가 나올 것이다.
base64 -d <<< 'cGljb0NURntwcm94aWVzX2FsbF90aGVfd2F5XzI1YmJhZTlhfQ=='
picoCTF{proxies_all_the_way_25bbae9a}
Flag가 잘 나왔고 proxies 끝까지라는 의미를 가지고 있다.
Browser의 Network 탭에서 redirection이 기록된다는 사실을 몰랐다면 풀기 쉽지 않았을 것 같다.
'picoCTF' 카테고리의 다른 글
ASCII Numbers (3) | 2024.11.06 |
---|---|
weirdSnake (0) | 2024.11.06 |
SansAlpha (0) | 2024.11.06 |
Verify (0) | 2024.10.29 |
Trickster (0) | 2024.10.29 |