회원가입과 로그인 버튼이 있다.
먼저 아무 아이디로 회원가입을 해보자
회원가입이 막혀있다.
그럼 로그인을 먼저 해보자 sql injection 같다.
로그인도 안된다. guest 로그인조차 되지 않는것 같으니
Blind sql injection 인가?
몰라 로그인이 안된다.
login.php대신에 join.php를 쳤더니 들어가진다.
참 찍기의 영역이다.
코드가 난독화 되어있는데 복호화하면 다음과같다.
l = 'a';
ll = 'b';
lll = 'c';
llll = 'd';
lllll = 'e';
llllll = 'f';
lllllll = 'g';
llllllll = 'h';
lllllllll = 'i';
llllllllll = 'j';
lllllllllll = 'k';
llllllllllll = 'l';
lllllllllllll = 'm';
llllllllllllll = 'n';
lllllllllllllll = 'o';
llllllllllllllll = 'p';
lllllllllllllllll = 'q';
llllllllllllllllll = 'r';
lllllllllllllllllll = 's';
llllllllllllllllllll = 't';
lllllllllllllllllllll = 'u';
llllllllllllllllllllll = 'v';
lllllllllllllllllllllll = 'w';
llllllllllllllllllllllll = 'x';
lllllllllllllllllllllllll = 'y';
llllllllllllllllllllllllll = 'z';
I = '1';
II = '2';
III = '3';
IIII = '4';
IIIII = '5';
IIIIII = '6';
IIIIIII = '7';
IIIIIIII = '8';
IIIIIIIII = '9';
IIIIIIIIII = '0';
li = '.';
ii = '<';
iii = '>';
//치환 완료한 것.
a1b1b1b1b1b1b1b1b1b1a = oldzombie
a??????a = document.cookie
if (eval(document.cookie).indexOf(oldzombie) == -1) {
alert('bye');
throw "stop";
}
if (eval(document.URL).indexOf(mode = 1) == -1) {
alert('access_denied');
throw "stop";
} else {
document.write('<font size=2 color=white>Join</font><p>');
document.write('.<p>.<p>.<p>.<p>.<p>');
document.write('<form method=post action= join.php>);
document.write('<table border=1><tr><td><font color=gray>id</font></td><td><input type=text name='id' maxlength=20></td></tr>');
document.write('<tr><td><font color=gray>pass</font></td><td><input type=text name='pw'></td></tr>');
document.write('<tr align=center><td colspan=2><input type=submit></td></tr></form></table>');
}
정상적인 출력을 해주려면 ?mode=1을 줘야하고, 쿠키에 oldzombie라는 것이 있어야 한다는 의미인듯
쿠키값은 상관없나? 혹시모르니까 값도 oldzombie로 줘봤다.
그래서 else문으로 들어가게 된다.
이제 guest로 로그인이 된다.
admin은 이미 있는 아이디라고 한다.
id : hi
pw : 2019330012 로 회원가입해줬다.
이제 admin으로 로그인해야된다는 것을 말해준다.
join 창에서 찾아보자
풀이 보니까
비밀번호를 sql injection 해서 찾는게 아니라, admin으로 회원가입 하라는 뜻이었따.
admin으로 가입우회하기 위해서 공백문자를 칸길이보다 넘치게 줘서 admin으로 가입할 수 있었다.
id=admin%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%00&pw=1
로 회원가입해서
admin/1로 로그인가능
'WriteUp > Webhacking.kr' 카테고리의 다른 글
webhacking.kr : challenge 7 (0) | 2020.09.11 |
---|---|
webhacking.kr : challenge 6 (0) | 2020.09.11 |
webhacking.kr : challenge 4 (0) | 2020.09.11 |
challenge 57 (600pt) (0) | 2020.08.15 |
Challenge 18 (100pt) (0) | 2020.05.10 |