*KISA에서 추천 제공하는 공개형 웹 방화벽중 웹나이트..
관련 자료 링크 :
* AQTRONIX社에서 개발한 IIS 웹서버용 공개 웹방화벽(무료란 이야기겠죠?..)으로
SQL Injection 공격 등 IIS 웹서버의 주요 공격 차단 가능
* ISAPI 필터로 작동되는 웹방화벽.
ISAPI 필터란?
IIS(웹서버)에 등록되어 있다가, 특정 이벤트가 발생되면 호출된다. 즉, Client의 요청(Request)이 왔을 때,
이벤트를 발생 시키도록 하면, Client의 Request를 가공(커스터마이징)할 수 있게 된다. 즉, Client와 IIS
사이에서 Request를 가로챈다고 생각하면 된다.
ISAPI 필터는 항상 서버 프로세스에서 실행됩니다
Ex) 응용할 수 있는 일 : Request 데이터의 압축 해제, 데이터 암호화/복호화, URL redirect 등
- 설치하기
다운로드
AQTRONIX 홈페이지에서 기술지원을 받을수 있는 유료 정책도있으나..
KISA에서도 어느정도 기술지원을 받을수 있다고 합니다..
64bit 용과 32bit 가 폴더로 구분되어있으니 선택해서 설치하시면 됩니다.
설치된 폴더를 확인해보면 로그가 저장되는 폴더와
필터 정책이 설정된 WebKinight.xml 파일
필터 정책을 수정할 툴(Config.exe)파일..
로그를 볼때 쓰는 LogAnalysis.exe 파일이 있습니다.
※ loaded.xml 파일은현재 DLL에 연결된..로드된 정책파일이고
WebKnight.xml 파일은 수정하기 귀한 임시파일이라고 보시면 됩니다.
설치를 완료하고나면 IIS에 등록된 웹사이트에 반영이 됩니다..
기본셋팅은 여기서 완료가 됩니다만..
아마도 아래와 같이 필터링된 화면이 뜰 것입니다..
기본 WebKinght 에서 제공하는 조건이 운영중인 사이트와 기본적으로 맞지 않는 부분이 상당히 많습니다.
셋팅이 완료되기 전에는 운영에 문제가 되므로 제거합니다.
웹사이트는 다시 정상적으로 보입니다..
우선 어떤 조건에 필터링 되었는지 확인하기 위해 LogAnalysis.exe 를 실행해서 BLOCK 조건을 확인합니다.
* BLOCKED : Not in allowed path list '홈디렉토리 경로' 메시지가 보입니다.
("처음부터 똑같이 진행하셧다면 무조건 만나게될 BLOCK 메시지죠..-_-;;")
해당 조건을 반영시키기 위해 config.exe 파일을 실행합니다.
mapped path 메뉴로 가면 allowed path 가 있고 경로들이 있는데 이곳에 해당 웹사이트의
경로를 등록해줍니다. 이후 사이트가 정상적으로 보이는지 체크합니다.
그 다음 체크된 조건은
BLOCKED: Content-Type 'text/plain' not allowed
위와같이 config.exe 메뉴에서 Content-Type 파트로 이동합니다.
그리고 Allowed Content Types 에 추가해줍니다.
반복적으로 사이트특성에 따라 조건을 변경해주시면 됩니다.
또는 전체 항목을 체크해 보신 뒤 선 수정 후 체크를 해도 될것같습니다만..
그것은 선택에 맡깁니다..
Web application 메뉴에서 Allow PHP 체크.
Url Scanning 항목 중.. 아래와 같이 예외처리도 가능..
WebKnight Configuration
- Request Limits - Max Content Length 의 값 변경
로그 분석 메뉴얼
위와같은 방법으로 예외처리를 하실수 있고 나올수 있는 모든 경우와 해당 BLOCK별 수정 방법은 "WebKnight_로그분석_안내서" 를 참고해주세요