본문 바로가기

Hacking/Web Hacking-

[3]Web Hacking(웹 해킹) - Sql Injection

안녕하세요. M1S Secur 입니다.

 

이번강의는 SQL Injection 에 관해서 포스팅 해볼까합니다.

 

왜 해킹중에서도 웹해킹을 할까요?

 

그이유는 : Database(DB)서버와 연결이 되어있기때문입니다.

 

SQL 에서 사용하는 문자를 '쿼리문' 이라고 일컫습니다.

 

1.SQL Injection 의 정의

 

- 데이터베이스로 전달되는 SQL Query를 변경시키기 위해 Web Application에서 입력 받은 파라메터를 변조 후 삽입하여 비정상적

인 데이터베이스 접근을 시도하거나 쿼리를 재구성하여 원하는 정보를 열람하는 해킹 기법

 

2.SQL Injection 공격 기법

- 인증우회 : 로긴 ( ID : ' or '1' = '1' -- Password : ******** )

- 권한상승 : 공격자가 DB의 시스템 권한을 획득

- 에러 메시지를 통하여 정보 얻기 : 공격자에게 유용한 정보 제공, 쉽게 DB열람 및 시스템명령어 수행 가능

- 데이터베이스에 저장된 데이터의 열람 / 조작 : Error-Based Injection, Blind SQL Injection

 

 

 

위와 같이 취약한 사이트 중 일부는 SQL인젝션으로 공격이 가능합니다.

관리자 ID 대신 쿼리문을 입력함으로써 인증을 통과합니다.

 

아이디와 비밀번호 구간에 'or''=' 를 집어넣어서 로그인을 해버리는 구문이있습니다.

이건 데이터베이스 아이디맨위에 있는걸로 로그인을 하기때문에 어느게 로그인이 될지는 모릅니다.

'or''=' 이 모든 사이트에 해당되지 않는다는 이야기입니다.

SQL을 공부하시면 알 수 있겠지요?

 

저런식으로 넣게되면

 

 

 

이렇게 된다는 소립니다.

 

*/ 오늘도 즐거운 하루 되시기 바랍니다 ^-^