728x90

 

오랜만에 blind sql injection문제이다. regex와 like를 필터링 하고 있다. 일단 그건 그렇다 치고 pw의 길이부터 구해보자.

 

 

 

?pw='||length(pw)<20%23을 넣었는데 거짓이라고 뜬다.

 

 

?pw='||length(substr(pw,1,1))=4%23를 넣어보면 참이 뜬다. 한글자당 4바이트인걸 보면 유니코드같다. 유니코드이므로 ascii말고 ord를 이용해서 풀어야겠다. 코딩을 해봤다.

 

 

이렇게 나왔다. 이제 이 10진수를 16진수로 바꾸고 유니코드로 보자.

 

 

이렇게 나왔다. 이제 저 값을 넣어보자. ?pw=¸ùÅ°ÆÐÄ¡¤»라고 치면 될것같다.

 

풀리게 되었다. 이건 유니코드인지 알아차리는게 중요할것같다.

 

 

 

 

 

 

 

+ Recent posts