TigerDemon
WEBHACKING.kr 26번 풀이 본문
https://webhacking.kr/challenge/web-11/
Challenge 26
webhacking.kr


위 사이트에 들어가면 view-source라는 텍스트가 뜨고 이를 누르면 두번째 사진처럼 코드가 뜹니다.
<코드 흐름>
if(preg_match("/admin/",$_GET['id'])) { echo"no!"; exit(); }
id 파라미터에 "admin" 문자열이 포함되면 차단
$_GET['id'] = urldecode($_GET['id']);
URL 디코딩 수행
if($_GET['id'] == "admin"){
solve(26);
}
디코딩된 값이 정확히 "admin"이면 문제 해결
해결 방법
?id=%61dmin
1) %61dmin를 입력하면 preg_match에서 "admin"이 없기에 통과가 됩니다. 하지만 urldecode를 하면 admin으로 출력되기에 solve가 실행되어 문제가 풀립니다.
%61 = a
2) 하지만 위 코드를 링크에 입력하면 no!라고 나옵니다. 따라서 2중 인코딩을 합니다.
?id=%2561dmin
a -> %61 -> %2561 로 두번 인코딩을 진행합니다.


'2026-SWLUG > 웹해킹' 카테고리의 다른 글
| WEBHACKING.KR 7번 풀기 (0) | 2026.05.24 |
|---|---|
| webhacking.kr 18번 (0) | 2026.05.13 |
| webhacking.kr 27번 (0) | 2026.05.06 |
| Webhacking.kr 17번 풀기 (0) | 2026.04.29 |
| webhacking.kr 3 (0) | 2026.03.25 |
