-
SQL Injection 취약점(1)_개요Web Vulnerability 2020. 1. 27. 19:11
SQL Injection 취약점
1. 정의
데이터베이스와 연동된 웹 어플리케이션에서 SQL 질의문에 대한 필터링이 제대로 이루어지지 않을 경우 발생하는 취약점이다. 공격자가 입력이 가능한 폼(웹 브라우저 주소 입력창 또는 로그인 폼 등)에 조작된 질의문을 삽입하여 웹 서버의 데이터베이스 정보를 열람 또는 조작이 가능하다.
2. 발생 원인
사용자 입력값에 대한 필터링이 존재하지 않아 발생한다. 즉, 사용자 입력값에 대한 검증이 미흡하다는 것이다.
3. 발생 위협
- 데이터 추출(Extracting Data)
- 데이터 추가 및 변조(Adding or Modifying Data)
- 인증 우회(Bypassing Authentication)
- 원격 명령어 실행(Executing remote commands)
- 권한 상승(Performing privilege escalation)
- 탐지 회피(Evading detection)
- DoS 수행(Performing Denial of Service)
4. 발생 위치
1. 사용자 입력 폼(User Input)
2. URL 파라미터 값(Server variables)
3. HTTP Request의 Header 값
- Cookie(쿠키 필드)
- Session(세션 필드)그 외에 발생 위치는 아래 [그림 1]을 참고하면 된다.
5. 종류
- Error based Injection
- Blind SQL Injection
- Union SQL Injection'Web Vulnerability' 카테고리의 다른 글
MIME 타입 정리 (0) 2020.02.28 HTTP 상태코드 정리 (0) 2020.02.28 SQL Injection 취약점(2)_Error Based Injection (0) 2020.01.27 클릭재킹(Clickjacking) 취약점 (0) 2020.01.27 버퍼 오버플로우(Buffer Overflow) (0) 2019.03.27