Network/Webhacking.kr

[webhacking.kr] Challenge(old)_39[100]

dcho 2019. 10. 14. 18:38
SMALL

이번문제는 

교체 되는 부분 : \ , '

post 파라미터명 : id

해결해야 되는 부분 : result[0] == 1 이 되면 풀리는 문제 

"select 1 from member where length(id)<14 and id='~~"

이 부분을 해결해 주어야 한다. 

1\\' or "1"="1" 

오..? 하지만 역슬래시가 교체가 되고있으니.. pass..

1&apos; or 1=1

이 표를 활용하여 넣어봤다.  

분명 php 테스트를 해보았는데 잘 나온다. 하지만 문제는 풀리지 않았다..

substr()함수를 보니 0부터 15길이 를 추출한다. 그런데 폼에 maxlength가 15인데 굳이 왜 해주는지 궁금했다. 

처음엔 \로 빈칸을 채워 버려야지 했는데 길이는 증가 하지 않아서 보니 문자열 안에 빈칸으로 채우면 그게 길이로 인정이 되고 뒤에 싱글쿼터가 짤리는 것이 확인 되었다. 

즉, 빈칸은 무시된다.

1             '  (빈칸13개) 

빈칸 13개로 싱글쿼터를 하나 짤라주니 클리어!!

1 말고도 2,3,4,5,6,7,admin이 member 안에 id값으로 들어있어서 클리어 된다.