인증우회 ( Auth Bypass )
1. 보통은 아이디와 패스워드를 입력하는 로그인 페이지를 타켓으로 행해지는 공격이고 , SQL 쿼리문의 TRUE / FALSE 의 논리적 연산 오류를 이용하여 로그인 인증 쿼리문이 무조건 TRUE의 결과값이 나오게 하여 인증을 무력화시키는 기법
2. 취약한 로그인 인증의 처리 방식이다.
3. 인증우회를 위한 공격 쿼리 패턴으로는 아래와 같은 것들이 있고 , 쿼리의 결과를 무조건 참 ( TRUE ) 로 만들 수 있는 쿼리라면 무엇이든 그 패턴이 될 수 있다.
‘or 1 = 1--
‘or 1 = 1# ( MySQL 일 때 )
‘or ‘dog’=’dog’--
‘or ‘ab’=’a’+’b’--
‘or 2>1--
4. 웹사이트가 사용자에게 알려주는 친절한 메시지들을 잘 살펴보고 , 로그인 쿼리의 구조를 유추하고 , 그에 알맞은 패턴을 창의적으로 생각해내야 한다.
5. 패턴을 찾아냈다면 아래와 같이 아이디와 비밀번호 입력칸에 패턴을 입력하여 접속을 시도
SQL injection 종류 구분
1. SQL injection – 논리적 에러
è Ex) SELECT * FROM user_data WHERE last_name = ‘your Name’ or ‘1=1’
2. Blind SQL injection – 쿼리 결과 여부
3. Union SQL injection – 이중 쿼리
4. Stored Procedure SQL injection – 저장프로시저
SQL injection – 원인
1. System Object 권한 제어 없이 기본 값 사용
2. DB 계정을 관리자 계정 (sa) 으로 일괄적 사용
'학부공부 > 인터넷보안과응용' 카테고리의 다른 글
pip_error (0) | 2018.11.12 |
---|---|
WebGoat 개발자 모드 (0) | 2018.11.12 |
SQL Injection 공격의 정의와 예시 (0) | 2018.09.21 |
SQL 인젝션 공격 연습하기 (0) | 2018.09.21 |
실무에서 많이 사용되는 Fiddler에 대해서 알아보자. (0) | 2018.09.13 |
#IT #먹방 #전자기기 #일상
#개발 #일상