일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 융합보안공학과
- 포렌식5대요소
- 포렌식3요소
- 융보공대생
- XOR암호화복호화
- 무작위비트열
- 포알즈
- GRR
- random.seed
- 무작위문자열
- GRR 설치
- 포렌식
- 기사스크랩
- 대외활동발대식
- 한국디지털포렌식
- 파이썬암호화
- 디지털포렌식
- 대외활동명함
- 원격포렌식
- XOR복호화
- remote forensic
- 보안
- 한국디지털포렌식센터
- 디지털포렌식3대요소
- 디지털포렌식5대요소
- 랜덤비트열
- XOR연산
- 난수발생기
- 대외활동
- GRR 설치방법
- Today
- Total
민오리
[네트워크 실습] SQL Injection 공격 실습 본문
SQL Injection이란
코드 인젝션의 한 기법으로 클라이언트의 입력값을 조작하여 서버의 데이터베이스를 공격할 수 있는 공격 방식입니다
사용자가 입력한 데이터를 필터링 하지 못했을 경우에 발생하며 쉬운 공격 난이도에 비해 파괴력이 크기 때문에 중요합니다.
Imperva가 2012년에 발표한 보고서에 따르면 월 평균 4회 정도의 SQL인젝션 공격이 일어나며, OWASP에서도 인젝션 기법이 보안 위험 1순위로 분류되는 만큼 주의가 필요합니다.
#1. 실습 환경구축 과정* 칼리 리눅스에서 실행했습니다
1) DVWA 설치: http://dvwa.co.uk접속 후 dvwa 다운로드-> 디렉토리 이름을 dvwa로 변경 후 /var/www/html로 디렉토리 이동-> /var/www/html의 권한을 755로 설정
2) config.inc.php: /var/www/html/dvwa/config 디렉토리의 config.inc.php.dist 파일을 복사해 config.inc.php 파일로 변경 -> 파일 안 db_password를 공란으로 변경
3) DB생성과정
mysql 재실행 후 권한 설정 -> dvwa의 user 테이블 확인 -> password 변경
4) curl문 실행
5) http://127.0.0.1/dbwa/login.php에 접속 후 setup.php오류 확인
(6) php.ini 파일을 찾고 /etc/php.7.3/apache2/php.ini , /etc/php/7.3/cli/php.ini 파일의 allow_url_include=off를
on으로 변경해준다
7) http://www.google.com/recaptcha/intro/android.html 접속 후 reCAPTCHA 키 발급 -> /var/www/html/dvwa/config/config.inc.php파일의 public_key, private_key에 입력
8) 127.0.0.1/dvwa/login.php 접속
#2 SQL Injection 공격 실습
1) 취약한 환경인지 확인
2) where 구문 우회
where 구문을 우회하는 코드를 작성해 입력하면, 해당 데이터베이스 내 전체 사용자의 정보가 출력
3) UNION을 이용한 SQL인젝션
UNION을 이용하려면 쿼리문이 조회하는 SELECT문의 칼럼개수와 UNION뒤에서 요청하는 칼럼의 개수와 동일해야한다.
따라서 칼럼 개수를 먼저 알아야 하는데 이는 order by 구문을 통해서 알아낼 수 있다.
입력된 데이터가 first name, surname에 삽입된 것을 확인할 수 있음
Union sql인젝션을 이용하여 information_schema DB의 schemata 테이블에 접근한다
테이블 조회를 통해 dvwa 내 테이블 이름이 users임을 알 수 있다.
* DVWA에서 SQL 인젝션 공격 말고도 Blind SQL 인젝션 공격도 수행할 수 있으니 한번 실습 해보시길 바라요
'전공수업 > Network' 카테고리의 다른 글
[네트워크 실습] Syn Flooding 공격&대응 과정 (0) | 2019.12.14 |
---|