새단장한 rubiya님 webhacking.kr의 old challenge 5번 문제 풀이입니다.
문제에 들어가면 까만 화면에 두개 버튼만 나옵니다.
일단 소스보기를 한번 보겠습니다.
대충 보니, 로그인버튼은 mem/login.php로 이동시키는데, 회원가입 버튼은 Access Denied라는 알럿 창이 뜨게 되어있습니다.
일단 로그인 창으로 넘어가서 admin이나 guest 계정으로 아무 패스워드나 쳐서 로그인 시도를 해보겠습니다.
admin/admin으로 로그인 시도를 할 시, wrong password가 뜹니다.
아무 아이디나 막 쳐도 Wrong password가 뜨게 되어있습니다.
느낌상 join 페이지를 알아내서 거기서 join을 해야 할 것 같습니다.
mem/join.php 로 이동을 해 보았는데
뭐 이런 alert이 뜨고 아무 것도 안나옵니다.
소스코드를 한번 보겠습니다.
대충 난독화된 js가 있는 것 같은데, 내용 분석을 한번 해보겠습니다.
js beautifier에 보내서 코드를 조금 이쁘게 정리해보겠습니다.
Online JavaScript beautifier
beautifier.io
if문에 잇는 조건문들을 한번 찾아보겠습니다.
대충 보면 document.cookie에 oldzombie라는 문자열이 없거나, document.URL에 mode=1라는 문자열이 없으면 나가리시킨다는 내용입니다.
쿠키값을 한번 주고, url에 해당 부분을 추가해 보겠습니다.
쿠키값을 추가하고, url에 ?mode=1을 달아보겠습니다.
기특하게도 나타났습니다.
이제 admin으로 회원가입을 해봅시다.
아이디가 중복이라고 나옵니다.
회원가입 요청 시 admin뒤에 공백 여러개와 맨 끝에 NULL 문자를 넣어서 회원가입을 해보겠습니다.
회원가입 성공이라고 뜹니다.
이후 가입한 admin/asdf로 로그인을 시도해보도록 하겠습니다.
예전에 풀었었기에 already solved가 뜹니다.
Clear!
'해킹 & 보안 > webhacking.kr' 카테고리의 다른 글
[Rubiya] webhacking.kr old-6번 문제 풀이 (0) | 2019.10.11 |
---|---|
[Rubiya] webhacking.kr old-36번 문제 풀이 (2) | 2019.10.11 |
[Rubiya] webhacking.kr old-44번 문제 풀이(pw=flag) (0) | 2019.10.11 |
[Rubiya] webhacking.kr old-3번 문제 풀이 (0) | 2019.10.10 |
[Rubiya] webhacking.kr old-1번 문제 풀이 (0) | 2019.09.22 |