Blind SQL Injection 과정
이전 포스팅
Union SQLi 과 Error Based SQLi 과정 정리.
MYSQL 사전 지식
DB 명 출력하기
select database() from dual;
테이블명 출력하기
select table_name from information_schema.tables where table_schema='DB명'
컬럼명 출력하기
select column_name from information_schema.columns where table_name='테이블명'
Blind SQLi
- 참과 거짓 조건에 따른 응답을 이용하여 한글자씩 알아내어 데이터를 추출하는 공격이다.
조건
- 결과가 화면에 안나오는 곳에서 사용한다.
- 참과 거짓 조건에 따라 응답이 다른 곳에서 이용가능하다.
필요 함수
- substring
- ascii
과정
- 서버에서 어떤 질의문을 사용하는지 예측하기.
select x from x where id='x';
-
Blind SQLi 을 사용하기 위하여 참/거짓 일때 응답 결과가 다른지 확인하기.
select
문 사용 가능한지 확인하기.- 공격 포맷 만들기.
- database 이름 추출하기. 한 문자씩 알아내어야 한다.
- 테이블 이름들 추출하기.
- 컬럼 명 추출 하기.
- 정보 추출하기.
댓글남기기