Web/Lord of Sql injection

giant 문제 풀이

Namchun 2023. 9. 10. 01:54

코드 분석

shit으로 입력을 받아 'from'과 'prob_giant' 문자열 사이를 띄워 쿼리가 실행이 되기만 하면 solve() 함수를 실행시킨다.

하지만 strlen()으로 길이 검사를 하였을 때 1을 넘으면 안 되고, 공백, \n, \r, \t가 필터링된다.

공격 기법

https://butt3r-cat.tistory.com/entry/LOS-Lord-of-SQL-Injection-5%EB%B2%88-wolfman-%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4

해당 링크를 참고해보면, 공백을 대체할 수 있는 문자들을 볼 수 있다.

 

이 중에서 \n (line feed), \r (carriage return), \t (tab)를 제외하면 %0b (vertical tab), %0c (form feed)가 남는다.

 

둘 중에서 하나를 선택하여 전달해보면 solve가 된다.

'Web > Lord of Sql injection' 카테고리의 다른 글

succubus 문제 풀이  (0) 2023.09.10
assasin 문제 풀이  (0) 2023.09.10
bugbear 문제 풀이  (0) 2023.09.10
darkknight 문제 풀이  (0) 2023.09.10
golem 문제 풀이  (1) 2023.09.09