뉴비에욤
los - evil wizard 본문
이전 hell fire 문제와 동일한 곳에서 인젝션이 발생한다.
문제는 에러 부분인데, 이전 문제에서는 적어도 리턴 페이지에 에러를 출력해 줬으나 이번 문제는 에러가 나면 리턴 페이지는 무조건 빈 페이지가 된다.
limit 인젝션 특성 상 공격 쿼리가 무조건 오류가 나는데, 오류를 안 보여주니 미칠 노릇일 수 밖에 없다.
힌트는 바로 시간인데, 이번 문제는 "time based - sql injection" 기법을 사용해야 한다.
이전 문제에서 읽어보라고 했던 링크의 마지막 쿼리 끝에 보면 BENCHMARK 함수가 존재한다. 해당 함수가 실행되면 약간의 타임 딜레이가 발생하는데 이것을 이용하여 공격 쿼리의 성공/실패 여부를 판단할 수 있다.
즉, if 조건문을 이용해서 (공격쿼리, 참(시간 발생), 거짓(false)) 형식으로 url을 요청하면 쿼리 성공 시 약간의 딜레이가 (약 2-3초) 발생하고 실패시에는 딜레이가 거의 없게 된다.(0-1초)
따라서 요청된 쿼리의 실행 시간을 측정해서 문제를 풀어야 한다.
'Lord_of_SQL-Injections_I' 카테고리의 다른 글
los - 올클리어 스크립트 (0) | 2015.08.10 |
---|---|
los - rubiya / umaru (0) | 2015.08.10 |
los - hell fire (0) | 2015.08.10 |
los - dark eyes (0) | 2015.08.10 |
los - iron golem (2) | 2015.08.10 |
Comments