본문 바로가기
해킹/DVWA

DVWA 실습 8. Blind SQL Injection (Low)

by yenua 2022. 5. 20.
반응형
Objective
Find the version of the SQL database software through a blind SQL attack.

SQL 데이터베이스 프로그램의 버전을 찾는 것이 목표이다.

 

블라인드라고 id에 1, 7을 넣었더니 ID가 있다, 없다라는 문구만 알려준다. 이것을 통해서 참, 거짓을 판별할 수 있을 것 같다.

반복 작업이 필요할 듯 하니 버프스위트에서 패킷을 잡아서, 리피터로 반복을 하도록 하겠다.

패킷을 보면 id값이 get인자로 넘어와서 저곳을 수정해서 계속 패킷을 날려보면 될 것 같다.

sua 멘토링 시간에 배운 팁을 이용해서 참일 때 뜨는 단어인 exists를 검색을 걸어두었다.

1%27+order+by+1%23 (1'+order+by+1#) 로 입력하니 여전히 exist가 떴다.

2도 마찬가지였으나, 3을 입력하니 sql 에러페이지로 넘어갔다.

컬럼 수는 앞의 취약점과 마찬가지로 여전히 2개 인 것을 확인할 수 있었다.

 

근데 생각해보니 어차피 블라인드 sql이니, 바로 버전 정보를 찾아보기로 하였다.

1'and substr(version(),1,1)='1'# 이렇게 입력하면 버전정보의 가장 앞 글자가 1이면 참을 출력할 것이다.

실제로 exists가 검색되어, 참임을 알 수 있었다.

 

얼마나 긴지를 모르니 1'and length(version()) = 1# 를 입력하여 찾아봤는데, 8까지 손으로 입력했으나 참인 값이 나오지 않아서 intruder를 사용했다.

길이는 15이다.

다시 각 자리를 찾는 것으로 넘어와서, 아래와 같이 intruder를 돌렸다

 

길이 순으로 나열하면 아래처럼 조금씩 찾을 수 있었다.

 

무료 버전인지라, 속도제한이 있어서 꽤 오래 걸렸는데, 파이썬으로 짜면 금방 걸리는 것 같다.

https://dominicsecurity.tistory.com/64

 

중간에 화딱지가 나서 10.4.24??a?iadb 요렇게 나왔는데, 딱봐도 답이 보여서 게싱해봤다.

and version()="10.4.24-mariadb"#

정답이었다!

근데 분명 셋팅은 mysql로 했는데 mariadb로 됐네..

반응형

'해킹 > DVWA' 카테고리의 다른 글

DVWA 실습 10. DOM XSS (Low)  (0) 2022.05.21
DVWA 실습 9. Weak Session IDs (Low)  (0) 2022.05.20
DVWA 실습 7. SQL Injection (Low)  (0) 2022.05.20
DVWA 실습 6. Insecure Captcha (Low)  (0) 2022.05.20
DVWA 실습 5. File Upload (Low)  (0) 2022.05.19