안녕들 하시죠 !
오늘은 그 유명한 SQL Injection에 대해 알아보겠습니다.
우선 KISA에서 배포한 ' 홈페이지 취약점 진단ㆍ제거 가이드 ' 와 OWASP TOP 10 자료를 참고해봤습니다.
아래에 파일 있으니 참고해보세요.
SQL Injection 이란?
데이터베이스와 연동된 웹 어플리케이션에서 SQL 질의문에 대한 필터링이 제대로 이루어지지 않을 경우 공격자가 입력이 가능한 폼( 웹 브라우서 주소 입력창 또는 로그인 폼 등 )에 조작된 질의문을 삽입하여 웹 서버의 데이터베이스 정보를 열람 또는 조작을 할 수 있는 취약점.
한마디로 웹브라우저에 조작된 값을 입력하여 DB에 있는 정보를 건들 수 있게되는 취약점.
아래는 SQL Injection 동작 과정입니다.
「 OWASP TOP 10 」
「 홈페이지 취약점 진단ㆍ제거 가이드 」
아래는 취약점 확인 방법 및 판단 기준입니다.
「 OWASP TOP 10 」
「 홈페이지 취약점 진단ㆍ제거 가이드 」
아래에는 대응 방안입니다.
필터링을 통하여 공격자가 임의의 조작된 값( ex) 'or 1=1 -- )을 입력하는 것을 방지하는 것이 중요합니다.
웹방화벽 ( 공격 문자가 오기 전에 차단 )을 통해 모든 사용자 입력 폼( 로그인 폼, 검색 폼, URL 등 )을 대상으로 특수문자, 특수구문 필터링 규칙을 적용.
또는 개발 단계에서 시큐어 코딩을 적용하여 임의로 파라미터를 입력하지 못하도록 필터링 적용.
「 홈페이지 취약점 진단ㆍ제거 가이드 」
뒤에 있을 게시물에서는 직접 SQL Injection을 해보고 Lord of SQL Injection 사이트에서 문제를 풀어볼 계획 입니다.
오늘은 여기까지입니다 감사합니다 !
'보안 > Web hacking' 카테고리의 다른 글
Lord of SQL Injection 2번 풀이 (0) | 2018.11.07 |
---|---|
Lord of SQL Injection 1번 풀이 (0) | 2018.11.07 |
SQL Injection / 쿼리 삽입을 통한 인젝션 (0) | 2018.11.02 |
웹해킹 실습을 위한 APM, Wordpress 설치 (0) | 2018.11.02 |
OWASP Top 10 이란 ? (0) | 2018.10.24 |