본문 바로가기
작업/Webhacking.kr

webhacking.kr old-26 이해하기

 

 

old-26 페이지에서는 view-source만 제공하고 있는 것 같습니다.

view-source 페이지를 확인해 보았습니다.

 

 

view-source

 

preg_match() 함수를 통해서 admin 값이 필터링되는 것을 확인할 수 있습니다.

 

 

직접 id에 admin을 입력해 보았습니다.

 

 

필터링 된 결과로 "no!"가 출력되는 것을 알 수 있습니다.

 

 

입력된 값이 urldecode()함수를 통해서 복호화 작업이 이루어지고,

복호화된 값이 admin이라면 문제가 해결되는 구조임을 알 수 있습니다.

 

 

복호화된 값으로 admin을 가지는 값을 만들어 내는 것이 이번 문제의 해결점입니다.

 

 

urldecode() 함수는 복호화를 하는 함수이며

암호화(인코딩)를 하는 함수는 urlencode()입니다.

 

 

codepad.org에서 php 코드를 만들어 admin 값을 인코딩해보았습니다.

 

 

codepad.org/

 

codepad

codepad was created by Steven Hazel, one of the founders of Sauce Labs.

codepad.org

 

 

 

인코딩하고자 하는 문자를 그대로 입력하면 인코딩이 되지 않는다는 것을 알 수 있습니다.

그래서 ASCII 16진수 값으로 바꾸어 작성해 보았습니다.

 

https://ko.wikipedia.org/wiki/ASCII

 

 

16진수 표기는 앞에 %를 붙여야 합니다.

 

 

 

 

admin에 대한 인코딩 값이 Output에 나타나는 것을 확인할 수 있습니다.

이제 인코딩 된 값을 활용하여 해결해 보겠습니다.

 

 

id 인자에 값이 들어가야 하기 때문에 GET 입력 방식을 사용하여

URL에 적용하였습니다.

?id=%2561%2564%256D%2569%256E

 

 

 

해결되었습니다!

 

 

 

 

'작업 > 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