728x90
old-26 페이지에서는 view-source만 제공하고 있는 것 같습니다.
view-source 페이지를 확인해 보았습니다.
preg_match() 함수를 통해서 admin 값이 필터링되는 것을 확인할 수 있습니다.
직접 id에 admin을 입력해 보았습니다.
필터링 된 결과로 "no!"가 출력되는 것을 알 수 있습니다.
입력된 값이 urldecode()함수를 통해서 복호화 작업이 이루어지고,
복호화된 값이 admin이라면 문제가 해결되는 구조임을 알 수 있습니다.
복호화된 값으로 admin을 가지는 값을 만들어 내는 것이 이번 문제의 해결점입니다.
urldecode() 함수는 복호화를 하는 함수이며
암호화(인코딩)를 하는 함수는 urlencode()입니다.
codepad.org에서 php 코드를 만들어 admin 값을 인코딩해보았습니다.
인코딩하고자 하는 문자를 그대로 입력하면 인코딩이 되지 않는다는 것을 알 수 있습니다.
그래서 ASCII 16진수 값으로 바꾸어 작성해 보았습니다.
16진수 표기는 앞에 %를 붙여야 합니다.
admin에 대한 인코딩 값이 Output에 나타나는 것을 확인할 수 있습니다.
이제 인코딩 된 값을 활용하여 해결해 보겠습니다.
id 인자에 값이 들어가야 하기 때문에 GET 입력 방식을 사용하여
URL에 적용하였습니다.
?id=%2561%2564%256D%2569%256E
해결되었습니다!
728x90
'작업 > Webhacking.kr' 카테고리의 다른 글
webhacking.kr old-20 이해하기 (0) | 2020.09.06 |
---|---|
webhacking.kr old-39 이해하기 (0) | 2020.09.06 |
webhacking.kr old-27 이해하기 (0) | 2020.09.05 |
webhacking.kr old-38 이해하기 (0) | 2020.09.03 |
webhacking.kr old-25 이해하기 (0) | 2020.09.03 |