페이지 소스
<?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에 정규식 패턴이 저장되고 그것에 맞으면 정답이 열린다.
패턴을 살펴봐자
정규식 참고
https://hamait.tistory.com/342
[1-3] =>1~3중 하나
[a-f]{5} => a~f사이중 아무거나 5개
_ => _
.* => .이 0회 이상 (무시해도 되는부분)
_SERVER[REMOTE_ADDR] => 사용자 ip
.* =>.이 0회 이상 (무시해도 되는부분)
\t => (tab)
p => p
\t => (tab)
a => a
\t => (tab)
s => s
\t => (tab)
s => s
이렇게 나누어 볼수있다.
합쳐보면 EX)?val=1aaaaa_.사용자ip.%09p%09a%09s%09s
사이에 점은 안넣어도 많이넣어도 무방하며 TAB은 URL encondig을통해 %09로 표현하면된다.
이런식으로 val값을 맞춰주면 클리어
'보안 > webhacking' 카테고리의 다른 글
webhacking.kr old-14 (0) | 2019.11.25 |
---|---|
webhacking.kr old-12 (0) | 2019.11.24 |
webhacking.kr old-10 (0) | 2019.11.23 |
webhacking.kr old-09 (0) | 2019.11.23 |
webhacking.kr old-08 (0) | 2019.11.23 |
최근댓글