정보보안/정보보안 실습

[정보보안] Login SQL Injection 실습

Developer D 2020. 9. 20. 22:11
반응형

모의 해킹 관련 게시글은 학습활동으로 실습, 작성되었습니다.

실습환경은 모의로 구축한 것이므로 실제로 해킹을 시도할 시 법적 처벌을 받을 수 있습니다.



실습용으로 구축된 취약한 사이트에 대해 진행 되었으며, 실제 사이트에서 SQL Injection으로 해킹을 시도하는 것은 불법 행위입니다. 

 

SQL Injection : 응용프로그램에서 SQL구문을 삽입하여 DB를 조작하고 권한을 탈취할 수 있는 공격

 

 

 1. DBMS (Data Base Management System) 정보 획득 

 

로그인 창에 1’ or 1=2# 삽입 시 DBSM 정보 탈취 해당 사이트 DBSM = MySQL 확인

1. 로그인 창  - DB 에있는 고객  Table 에서 SQL을 이용하여 로그인 확인을 하기 때문에

SQL : Select id from id_table from   id table where id = '사용자 아이디 ' ;  로 유추 할 수 있다.

 

2. SQL 조건 검색을 통하여 DBMS 정보를 탈취 하였다 (  1'  or 1 = 2 # )

Select id from id_table from   id table where id = 1'  or 1 = 2 # ; 

                                  사용자 id = 무작위 인수 '     False 주석

or (논리합) :  1+0 (True) , 0+1 (True) , 1+1(True) , 0+0(False)

임의로 절대 False 1=2 되는 조건을 사용하여 예기치 않은 DB에러를 발생시키고 , DBMS 정보를 노출 시켰다.

(* 실제로 SQL injection 시도는 불법이며, 기초적인 공격으로 실가능성은 없는 것으로 보입니다. *)

 

2. SQL Injection 공격을 통한 관리자 로그인 

관리자 권한 탈취

Select id from id_table from   id table where id = 1'  or 1 = 1 # ;

                                                                          True

0+1(True) 구문을 삽입하여 비밀번호를 무작위인수로 입력하여도 관리자 로그인에 성공하여 권한을 탈취 할 수 있다.

반응형