문제 화면입니다.
Join을 클릭하면
경고 창이 뜨고 들어갈 수 없습니다.
login 페이지에 들어가서 sql injection을 걸어보려 했지만 모두 실패했습니다.
url을 보면 mem/login.php로 되어 있습니다.
상위 폴더인 mem에 들어가보겠습니다
mem 폴더로 들어가면 join.php 가 있습니다.
join.php로 들어가면
경고 창이 뜨고 검은 화면이 뜹니다.
소스 코드를 보니
스크립트 코드가 있습니다.
vscode로 가져와보니 난독화가 되어 있습니다.
콘솔에서 해석해줍니다.
해석한 내용을 넣은 js코드입니다.
cookie에 oldzombie 라는 값이 있어야하고
url에 mode=1 라는 값이 있어야 합니다.
쿠키에 oldzombie 항목을 생성합니다.
이제 bye 대신 access_denied 가 나옵니다.
url에 mode=1를 추가해주니 Join 창이 생겼습니다.
guest로 계정을 생성하고 로그인해보니 admin으로 로그인하라고 해서
admin으로 계정을 생성하려고 하니 이미 있다고 합니다.
공백을 띄어주고 admin을 넣어주니 admin으로 회원가입이 되었습니다.
이제 로그인하면
admin으로 로그인이 되고 문제가 풀립니다.
'write-up(web) > webhacking.kr' 카테고리의 다른 글
[Webhacking.kr] Challenge old-42 write-up (0) | 2022.08.14 |
---|---|
[Webhacking.kr] Challenge old-39 write-up (0) | 2022.08.13 |
[Webhacking.kr] Challenge old-20 write-up (0) | 2022.08.12 |
[Webhacking.kr] Challenge old-23 write-up (0) | 2022.08.12 |
[Webhacking.kr] Challenge old-58 write-up (0) | 2022.08.12 |