DongDD's IT

[webhacking.kr] Level 18 본문

Wargame/webhacking.kr

[webhacking.kr] Level 18

DongDD 2017. 7. 29. 14:48

[webhacking.kr] Level 18




문제에 들어갔더니 SQL Injection이라고 떡하니 써있었다. 코드도 주어진 상태라 코드를 보고 풀어나가면 되겠다는 생각이 들었다.

SQL Injection에 대해서 조금은 공부했지만 아직 잘은 모르는 상태지만 도전해보기로 했다.








코드를 보니 여러 문자에 대해 필터링이 되어있었고 select를 통해 맨 위의 row에 admin이 오게 되면 통과하게 되어있었다.




간단한 값으로 1 or 1=1 을 넣어봤더니 no hack이라는 결과가 나왔다.

Space가 필터링 걸려있다는 것을 알 수 있었다.


Space(%20)을 대체하기 위한 것으로는 %0A, %0B, %0C, %0D가 있다는 것을 알았고 이것으로 시도해보았다.






%0C를 사용하여 시도해보았다. hi guest라는 것이 뜨는 것을 보아 필터링을 우회했고, 참인 조건을 만들어 정상적으로 쿼리를 만들어 값을 가져왔다는 것을 알 수있었다.

guest가 맨 위의 row에 있기에 hi guest로 출력이 된 것 같다.

order by를 이용하여 정렬을 해주면 admin이 맨위로 갈 수 있다고 생각해서 시도해보았다.

이 방법으로 시도한 결과 문제에 통과할 수 있었다.














**************     Answer & Flag     **************



order by id 로 정렬을 해주고 쿼리를 넣어주니 정상적으로 통과하는 것을 볼 수 있었다.


'Wargame > webhacking.kr' 카테고리의 다른 글

[webhacking.kr] Level 39  (0) 2017.08.20
[webhacking.kr] Level 26  (0) 2017.07.30
[webhacking.kr] Level 17  (0) 2017.07.29
[webhacking.kr] Level 16  (0) 2017.07.29
[webhacking.kr] Level 14  (0) 2017.07.23
Comments