CS/데이터베이스
[DB] SQL Injection (SQL 인젝션)
정의 SQL Injection은 응용 프로그램 보안 상의 허점을 의도적으로 이용해 악의적인 SQL문을 실행되게 함으로써 데이터베이스를 비정상적으로 조작하는 코드 인젝션 공격 방법입니다. SQL Injection을 하기 위해서는 아래의 조건을 만족해야 합니다. 웹 애플리케이션이 DB와 연동되어 있다. 사용자가 입력한 외부 입력값이 SQL 구문의 일부로 사용된다. 사실 현대 웹 애플리케이션의 대부분은 위 조건들을 충족하고 있기 때문에 SQL Injection의 대상이 될 수 있습니다. 원인 데이터베이스와 연동된 웹 애플리케이션에서 입력된 데이터에 대한 유효성 검증을 하지 않아 발생하는 취약점으로, 취약한 웹 애플리케이션은 사용자로부터 입력된 값을 필터링 과정 없이 넘겨받아 동적 쿼리(Dynamic Query..