728x90
<?php
include "../../config.php";
if($_GET['view_source']) view_source();
?><html>
<head>
<title>Challenge 11</title>
<style type="text/css">
body { background:black; color:white; font-size:10pt; }
</style>
</head>
<body>
<center>
<br><br>
<?php
$pat="/[1-3][a-f]{5}_.*$_SERVER[REMOTE_ADDR].*\tp\ta\ts\ts/";
if(preg_match($pat,$_GET['val'])){
solve(11);
}
else echo("<h2>Wrong</h2>");
echo("<br><br>");
?>
<a href=./?view_source=1>view-source</a>
</center>
</body>
</html>
코드를 보면 $pat과 get으로 받아온 val의 값이 match 되면 통과되는 문제이다.
$pat을 보면은 슬래쉬(/)로 묶여있는걸 알 수 있는데 정규식 표시이다.
정규식 규칙은 아래 링크를 참고하는게 좋을 것 같다.
https://www.tcpschool.com/php/php_regularExpression_basic
[1-3]과[a-f]표시는 1~3중 아무거나 하나 그리고 a~f중 아무거나 하나이니 1a로 놓고
{5}는 앞에 문자 5번 반복이니 1aaaaa,
*은 앞에 문자 0번 반복이니 1aaaaa_
$_SERVER[REMOTE_ADDR]은 각자 ip 주소를 적어주면 된다. 1aaaaa_xxx.xxx.xxx.xxx (x는 ip주소)
*한번 더나왔으니 점(.)제거 1aaaaa_xxx.xxx.xxx.xxx
\t 는 탭 표시이니 %09로 대체 1aaaaa_xxx.xxx.xxx.xxx%09p%09a%09s%09s
이걸 val에 넣어서 전송하면 해결된다.
728x90
반응형
'Web Hacking > Webhacking.kr' 카테고리의 다른 글
Webhacking.kr old-7 풀이 (0) | 2024.01.05 |
---|---|
Webhacking.kr old-49 풀이 (0) | 2024.01.04 |
Webhacking.kr old-21 풀이 (0) | 2023.12.27 |
Webhacking.kr old-12 풀이 (0) | 2023.12.27 |
Webhacking.kr old-51 풀이 (0) | 2023.12.27 |