반응형




안녕들 하시죠 !


오늘은 그 유명한 SQL Injection에 대해 알아보겠습니다.


우선 KISA에서 배포한 ' 홈페이지 취약점 진단ㆍ제거 가이드 ' 와 OWASP TOP 10 자료를 참고해봤습니다.


아래에 파일 있으니 참고해보세요.


홈페이지 취약점 진단제거 가이드.pdf


OWASP Top 10 2017.pdf


SQL Injection 이란?


데이터베이스와 연동된 웹 어플리케이션에서 SQL 질의문에 대한 필터링이 제대로 이루어지지 않을 경우 공격자가 입력이 가능한 폼( 웹 브라우서 주소 입력창 또는 로그인 폼 등 )에 조작된 질의문을 삽입하여 웹 서버의 데이터베이스 정보를 열람 또는 조작을 할 수 있는 취약점.


한마디로 웹브라우저에 조작된 값을 입력하여 DB에 있는 정보를 건들 수 있게되는 취약점.


아래는 SQL Injection 동작 과정입니다.


「 OWASP TOP 10 


「 홈페이지 취약점 진단ㆍ제거 가이드 





아래는 취약점 확인 방법 및 판단 기준입니다.


「 OWASP TOP 10 


「 홈페이지 취약점 진단ㆍ제거 가이드 



아래에는 대응 방안입니다.

필터링을 통하여 공격자가 임의의 조작된 값( ex) 'or 1=1 -- )을 입력하는 것을 방지하는 것이 중요합니다.


웹방화벽 ( 공격 문자가 오기 전에 차단 )을 통해 모든 사용자 입력 폼( 로그인 폼, 검색 폼, URL 등 )을 대상으로 특수문자, 특수구문 필터링 규칙을 적용.

또는 개발 단계에서 시큐어 코딩을 적용하여 임의로 파라미터를 입력하지 못하도록 필터링 적용.


「 홈페이지 취약점 진단ㆍ제거 가이드 



뒤에 있을 게시물에서는 직접 SQL Injection을 해보고 Lord of SQL Injection 사이트에서 문제를 풀어볼 계획 입니다.


오늘은 여기까지입니다 감사합니다 !

+ Recent posts