728x90
이번 포스트에서는 Lord of SQLInjection의 giant문제에 대해 다루겠다.
문제를 클릭하면 다음과 같이 쿼리와 php코드가 표시된 화면을 볼 수 있다.
## 문제 해석 :
해당 문제는 preg_match() 함수를 통해 공백, \n, \r, \t를 필터링한 것을 알 수 있고, shit의 문자열 길이가 1보다 크면 안되다는 것을 알 수 있다.
또한 반환된 "1234"라는 값이 있어야 해당 문제를 해결할 수 있는 것으로 보인다.
## 문제 풀이 :
해당 문제는 from과 prob_gaint 사이에 공백을 하나 넣으면 해결할 수 있다.
여기서는 Tab문자의 우회법인 "vertical tab"을 활용하여 풀어보겠다.
### 사용할 공격문 : shit=%0b
### 실행 결과 :
공격에 성공한 것을 확인할 수 있다.
이어서 "form feed"를 활용해서 다시 공격해보겠다..
### 사용할 공격문 : shit=%0c
### 실행 결과 :
이 우회법도 먹힌 것을 알 수 있다.
그럼 이어서 "carriage return"를 활용해서 공격을 시도해보겠다.
### 사용할 공격문 : shit=%0d
### 실행 결과 :
해당 우회법은 차단된 것으로 보인다.
'Wargame > Lord of SQLInjection' 카테고리의 다른 글
Lord of SQLInjection (16. succubus) (0) | 2022.06.02 |
---|---|
Lord of SQLInjection (15. assassin) (0) | 2022.06.01 |
Lord of SQLInjection (13. bugbear) (0) | 2022.05.30 |
Lord of SQLInjection (12. darkknight) (2) | 2022.05.28 |
Lord of SQLInjection (11. golem) (0) | 2022.05.27 |