Natas 22 → 23
패스워드를 입력해야 한다.
Password:
<form name="input" method="get">
<input type="text" name="passwd" size=20>
<input type="submit" value="Login">
</form>
passwd라는 이름의 칸에 text type을 입력할 수 있다. 길이는 20까지 가능하다. 보내는 방식은 get 방식이다.
<?php
if(array_key_exists("passwd",$_REQUEST)){
if(strstr($_REQUEST["passwd"],"iloveyou") && ($_REQUEST["passwd"] > 10 )){
echo "<br>The credentials for the next level are:<br>";
echo "<pre>Username: natas24 Password: <censored></pre>";
}
else{
echo "<br>Wrong!<br>";
}
}
// morla / 10111
?>
$_REQUEST에 passwd라는 key가 있어야 한다.
strstr(문자열, 찾으려는 문자열): 문자열이 처음으로 나타나는 곳을 찾아 그 위치부터 끝까지의 문자열을 반환한다.
입력하는 곳에는 iloveyou가 반드시 포함되어 있어야 하고, 그 길이는 10보다 커야 한다.
"iloveyou"는 맨 뒤 \0까지 생각하면 총 9글자다.
길이가 10보다 크기 위해서는 두 글자를 더 붙이면 된다.
12iloveyou를 입력해보자.
natas24 비밀번호: OsRmXFguozKpTZZ5X14zNO43379LZveg