문제의 소스 코드입니다.
id가 admin이면 풀리는 문제입니다.
preg_match 함수를 통해 admin을 필터링하고
urldecode처리를 해준 값이 admin이어야 합니다.
브라우저의 url에서 문자를 표현하기 위해 퍼센트 인코딩을 사용합니다.
퍼센트 인코딩은 %뒤에 해당 문자의 16진수 값을 붙여서 사용합니다.
admin의 16진수 아스키 값인 61,64,6D,69,6E를 사용하면 됩니다.
이때, urldecode 함수가 있으므로 퍼센트 인코딩한 값을 한 번 더 인코딩해줍니다.
해당 값을 url로 전송해주면
문제가 풀립니다.
<참고>
url은 ascii 코드로만 이루어집니다.
따라서 아스키 값 이외의 값들을 전달하기 위해 퍼센트 인코딩을 사용합니다.
'write-up(web) > webhacking.kr' 카테고리의 다른 글
[Webhacking.kr] Challenge old-33 write-up (0) | 2022.07.21 |
---|---|
[Webhacking.kr] Challenge old-54 write-up (0) | 2022.07.19 |
[Webhacking.kr] Challenge old-16 write-up (0) | 2022.07.07 |
[Webhacking.kr] Challenge old-07 write-up (0) | 2022.07.07 |
[Webhacking.kr] Challenge old-18 write-up (0) | 2022.07.07 |