728x90
코드를 보면 GET방식으로 돌아온 id의 값을 urldecode를 해서 다시 담는다는 것을 알 수 있다.
urldecode를 해서 담은 값이 admin일 경우 문제가 해결된다.
admin값을 아스키코드를 참고하여 인코딩하면 %61%64%6D%69%6E가 된다. 이 인코딩 된 값을 URL에 직접 입력해줬다.
no!가 뜨면서 id=admin으로 된 것을 알 수 있었다.
실패한 원인을 찾아보니 웹 서버와 브라우저 사이의 데이터 교환 시 브라우저에서는 데이터를 자동 인코딩하여 서버에 보내고 서버는 인코딩된 값을 자동으로 디코딩 하기 때문에 인코딩하여 보낸 %61%64%6D%69%6E를 서버에서 디코딩하여서 admin으로 나타남을 알 수 있다.
서버에서 디코딩하였는데 %61%64%6D%69%6E를 값으로 가질 수 있게 하기 위해 다시 한번 인코딩하였다.
그 결과 %2561%2564%256D%2569%256E이 나왔고 이를 다시 한번 입력하였더니 성공하였다.
'Webhacking > Webhacking.kr' 카테고리의 다른 글
[webhacking.kr] webhacking.kr 35 (0) | 2023.12.29 |
---|---|
[webhacking.kr] webhacking.kr 32 (0) | 2023.12.29 |
[webhacking.kr] webhacking.kr 25 (0) | 2023.12.29 |
[webhacking.kr] webhacking.kr 24 (0) | 2023.12.29 |
[webhacking.kr] webhacking.kr 23 (0) | 2023.12.29 |