본문 바로가기
보안 공부/Web

[Web] SQL 쿼리 취약점 정리

by 그적 2021. 11. 11.

 

SQL 쿼리문 별 우회 방법

 

SELECT 문 :  WHERE 조건문을 통해 쿼리를 조작함.

 

INSERT 문 :  VALUES 안에 동일한 형태의 데이터 개수와 타입이 필요함.

                ->  개수는 점차 늘려가면서 시도함.

                -> 정수형에서 문자형으로 묵시적 형 변환

                -> 1 값을 이용
                -> 20000 값을 이용

 

UPDATE 문 :  WHERE 조건문을 포함하면서, INSERT와 거의 동일하게 동작함.

 

DELETE 문 :  WHERE 절에서 사용자의 입력 값을 받아 처리함.

 

ORDER BY 문 :  UNION/WHERE/OR/AND 키워드를 받아들이지 않기 때문에 중첩 쿼리(SELECT 1 WHERE <조건>)를 이용해야함.

 

UNION 문 :  두 개 이상의 SELECT문을 하나의 결과로 합칠 때 사용됨.
               -> 앞 뒤 SELECT가 동일한 구조이어야 함.

               -> 서로 동일한 개수의 칼럼이어야함.

               -> 서로 동일한 데이터타입을 가져야함.

               -> 정확한 테이블명과 칼럼명

               -> 데이터 타입을 모른다면 SELECT NULL을 이용 (묵시적 형변환)

 

 

 

DB 버전 출력 :  (MYSQL) @@version

                (ORCLE) v$version

 

 

메타데이터 테이블명 : (MYSQL) INFORMATION_SCHEMA.COLUMNS

 

 

댓글