-
[Lord of SQLInjection] #9 vampire[+] Security [+]/Lord of SQLInjection 2020. 5. 3. 19:45
이제 9번! 뱀파이어 문제
$_GET[id] = strtolower($_GET[id]);
$_GET[id] = str_replace("admin","",$_GET[id]);8번 트롤문제에서는 sql에서 대소문자를 구분하지 않는다는 취약점을 이용하여 해결했다.
9번 문제에는 이어서 소문자로 바꿔버리는 코드가 추가됬고,
admin문자열을 공백으로 바꿔버리는 코드가 추가 됬다.
후후훗 귀엽군...
역시 따옴표가 필터링되어있어 쿼리를 추가로 생성해낼 수는 없다.
하지만 admin를 필터링 한 것이 아닌 admin을 공백으로 replace 해버린 다는 점에서 취약점이있다.
id 값으로 adadminmin을 입력했다.
감이 오는가?
adadminmin 중 adadminmin 가운데 admin은 공백이 되어버려 자동적으로 admin만이 남게 된다.
str_replace 코드는 반복문으로 설정되어있지 않다. 그저 일회성으로 동작하는데 이후 남게되는 admin은 처리하지 못한다.
뱀파이어 컷!
'[+] Security [+] > Lord of SQLInjection' 카테고리의 다른 글
[Lord of SQLInjection] #11 golem (0) 2020.05.03 [Lord of SQLInjection] #10 skeleton (0) 2020.05.03 [Lord of SQLInjection] #8 troll (0) 2020.05.03 [Lord of SQLInjection] #7 orge (0) 2020.05.03 [Lord of SQLInjection] #6 darkelf (0) 2020.05.03