슬라이드 1

Download Report

Transcript 슬라이드 1

웹 방화벽 채널 교육
Ver 2.0
2010년 10월 27일
lonstech
1
목 차
1. 개요
2. WEBFRONT
1. WEB 기본특성
2. WEBFRONT 프로세서
3. WEBFRONT 동작방식
3. WEBFRONT 설정
1. 네트워크
2. 애플리케이션
4. 웹 구성요소
5. 보안기능
1. 요청검사
2. 컨텐츠 필드
3. 위장
4. 학습
2
1. 개요
1.1 교육 목적
– 기본적인 웹(HTTP)동작에 대한 이해
– 파이오링크 웹방화벽인 WEBFRONT의 기본 동작방식의 이해
– WEBFRONT의 설정 학습
1.2 WEBFRONT 기본시스템
- 웹방화벽 (WEBFRONT) : 실제 패킷에 대한 차단 및 탐지를 수행하는 솔루션
- 아날라이져 (AV2) : WEBFRONT에 대한 모니터링 및 로그 리포팅 기능 수행 서버
WEBFRONT 대시보드 화면
Analyzer V2
3
2. WEBFRONT
2.1 WEB 동작방식
클라이언트
웹 서버
• 요청 헤더에 포함되는 정보들
①GET /index.html HTTP/ 1.1
②user-agent : MSIE 6.0; Window NT 5.0
Listen 상태
(통신대기중)
Syn-sent 상태
( 연결요청)
③accept : text/html;*/*
④cookie:name = value
⑤referer : http://www.aaa.com
Syn-Received상태
(요청승인)
⑥host:www.lonstech.co.kr
Ack확인
• 응답 헤더에 포함되는 정보들
Get Request
(페이지 요청)
①HTTP/1.1 OK 200
TCP Checksum
(루틴 ACK)
②Server:NCSA/1.4.2
③Content-type : text/html
TCPChecksum
(루틴 ACK)
Get Response
(페이지제공)
④Content-length : 107
⑤요청한 정보
2. WEBFRONT
2.2 WEBFRONT 처리 프로세서
-웹프론트는 패킷 처리방식에 따라 securiy Engine board 와 Switching board에서 처리가 됩니다.
HTTP 패킷
Application Security Engine
기타 패킷
클라이언트
88 Gbps Switching Backplane
16 x 10/100/1000 BASE-T/BASE-SX
웹 서버
2. WEBFRONT
2.3 WEBFRONT 동작방식
-Delayed-Binding 기능을 사용한 패킷처리 방식.
3. WEBFRONT 설정
3. WEBFRONT 접속방식
-관리 접속포트(ETHERNET) - 기본 192.168.100.1/24 로 설정되어 있음
-시리얼 접속포트 - Baud rate :9600
Data Bits : 8
192.168.100.1/24
192.168.100.2~254/24
3. WEBFRONT 설정
3.1 네트워크
1) VLAN
(System메뉴 > 네트워크 > VLAN)
2) PORT
(System메뉴 > 네트워크 > PORT)
8
3. WEBFRONT 설정
3.1 네트워크
3)IP설정 및 라우팅 설정
(System메뉴 > 네트워크 > IP주소)
4)미러링
(System메뉴 > 네트워크 > 미러링)
9
3. WEBFRONT 설정
3.1 네트워크
5)트렁크
(System메뉴 > 네트워크 > 트렁크)
6)STP
(System메뉴 > 네트워크 > STP)
10
3. WEBFRONT 설정
3.1 네트워크
7) 포트 모니터링
(System메뉴 > 네트워크 > 포트모니터링)
8) 링크싱크
(System메뉴 > 네트워크 > 링크싱크)
11
3. WEBFRONT 설정
3.1 네트워크
9) 포트바운더리
(System메뉴 > 네트워크 > 포트바운더리)
Packet Arrives on a port
Management CPU
WAF IP
Client Boundary
Checking DIP?
Server Boundary
Client/Server Boundary?
Other IP
L2 /L3Switching
N=0
Going to Engine by SIP
Port-Boundary #N
Yes
No
Off
Promisc On/Off?
No
Going to Engine by DIP
Match?
(IP/Protocol)
Yes
Engine Arrives
On
12
12
3. WEBFRONT 설정
3.1 네트워크
10) 환경변수
(System메뉴 > 네트워크 > 환경변수)
13
13
3. WEBFRONT 설정
3.1 네트워크
11) 트랜스패런트 브릿지 모드(신규기능)
(System메뉴 > 네트워크 > 환경변수 )
Active DMZ
Backbone Switch
DMZ Network
Active DMZ
Backbone Switch
DMZ Network
Internal Network
2개의 VLAN을
트랜스패런트 브리지 모드로 구성
Web Firewall
Lan128 : 192.168.100.0/24
Server
Lan129 : 10.168.200.0/24
Web Firewall
Lan128 : 192.168.100.0/24
Server
Lan129 : 10.168.200.0/24
Server
14
3. WEBFRONT 설정
3.2 애플리케이션
1) 어플리케이션 이름 등록
(System메뉴 -> 애플리케이션(에플리케이션관리선택) -> 변경 클릭 -> 추가 클릭 -> 애플리케이션이름등록 -> 적용)
2) 어플리케이션 등록
(어플리케이션메뉴 -> 일반설정 선택 -> 해당 어플리케이션 선택 -> 도메인리스트 등록 -> IP/포트리스트 등록 -> 상태 활성화)
* 참고 사항 *
System > 애플리케이션 > 애플리케이션 관리
마법사 실행 기능을 통하여 애플리케이션 생성이 가
능합니다.
15
3. WEBFRONT 설정
3.2.7 서버 부하 분산
1)
웹 방화벽 기능 중 L4-L7 SLB 기능을 사용할 수 있도록 부하분산 모드로 설정
( 애플리케이션 메뉴 > 일반설정 )
2) 부하분산의 상세 설정
( 애플리케이션 메뉴 > 부하분산 )
16
3. WEBFRONT 설정
3.2.2 탐지 정책 설정 (정책 설정)
1)어플리케이션 탐지 정책 설정
(어플리케이션메뉴 -> 어플리케이션설정간편화 -> 정책 적용할 어플리케이션 선택 -> 하단의 변경 -> 상태, 보안로그, 증거 선택
설정 -> 적용)
•참고사항 *
시그니처는 기본설정이 탐지이며, 시그니처가 탐지로 설정되어
있는지 확인한다.
(어플리케이션메뉴 -> 시그니처관리 -> 시그니처리스트 변경 -> 시그니
처리스트 상세보기 -> 보기형식 어플리케이션 -> 정책 적용할 어플리케
이션 선택 -> 공격 유형 별 하단의 탐지 확인)
17
3. 탐지 정책 수립 절차
3.2.3 탐지 정책 설정 (정책 설정)
1) 정책 설정 로그 확인
(인터넷 익스플로러 실행 -> http://등록 웹 어플리케이션 사이트 주소/test.bak 입력 -> 로그 확인)
(해당 어플리케이션 선택 -> 어플리케이션메뉴 -> 로그 -> 로그보기 -> 시그니처리스트 변경 -> 애플리케이션 로그보기의 로그보
기 -> 팝업창의 로그 확인 )
* 참고사항 *
정책이 정상적으로 설정이 되면 로그가 남는지를 체크해야 한다.
조사한 IP, 포트, 도메인 정보가 틀리거나 혹은 웹 방화벽의 정책이 반영되지 않을 수도 있기 때문이다.
18
3. WEBFRONT 설정
3.2.4 로그 분석
Analyzer v2에 수집된 로그를 확인하여 오탐 및 특이사항을 분석한다.
Analyzer V2의 웹 보안 로그를 해당 전체 기간으로 설정하고 필터링 검색을 하여 엑셀로 저장하여 분석을 하면 된다.
19
3. WEBFRONT 설정
3.2.5 차단 정책 설정 단계
탐지 정책 기간 동안 세부 정책 설정 거친 후 특이사항이 없을 경우 차단 정책을 설정한다.
어플리케이션 설정 간편화에서 각 어플리케이션 이름을 선택하여 정책을 설정 한다.
20
3. WEBFRONT 설정
3.2.6 모니터링 및 오탐 처리
차단 정책 후 모니터링을 필수적으로 해야 한다. 기존에 확인되지 않았던 문제점이 나올 수 있으며
오탐에 의한 차단으로 인해 서비스에 지장이 생길 수 있으므로 Analyzer V2를 활용하여 모니터링을 한다.
Analyzer V2를 이용해 모니터링을 하면서 오탐을 확인하여 처리를 해줘야 한다.
또한 해당 내용이 확인하기 힘들 경우 웹 어플리케이션 운영자의 확인을 거친다.
해당 오탐 처리는 안정화 될 때 까지 실시한다.
21
3. WEBFRONT 설정
3.2.7 운영 단계
정책 설정이 완료되면 운영 절차로 바꿔 정책 유지 및 장애 처리, 보고서 작성 등을 수행한다.
또한 신규 취약점이 발견되면 빠른 대응 처리를 하고 해당 시그니처를 등록하여 보안을 해준다.
3.2.8 정책 유지 및 장애 처리
웹 어플리케이션의 리뉴얼 이나 특정 장애가 발생하지 않으면 설정한 정책을 변경할 일은 없다.
보통 설정한 정책을 유지하면서 요청에 의한 URL 오픈 이나 관리자 IP 오픈 등을 수행한다.
또한 장애에 대비하여 백업과 현업과의 커뮤니케이션에 힘쓴다.
3.2.9 보고서 작성
보고서의 경우 Analyzer V2를 이용해 로그 분석된 자료를 산출 할 수 있다. 보고서는 주간 보고서,
월간 보고서 형태로 하며 상황에 따라 기간별 보고서를 산출 할 수 있다. (보고서 출력은 매뉴얼을 참조)
보고서 산출물은 HTM, 워드, 엑셀, PDF 로 출력 할 수 있다.
22
4. WEB 구성요소
1)
웹 서비스를 위한 구성요소
Os : 웹데몬 을 실행시키기 위한 기본 시스템
(유닉스, 리눅스, 윈도우, DEC의 VMS, IBM의 OS/2, AIX 그리고 OS/390)
WEB프로그래밍
언어
Demon : 각종 서비스를 제공하는 시스템 프로그램.
(아파치,IIS,톰캣, my-sql,ms-sql)
DATA BASE
Demon
WEB 프로그램밍 언어 : 하이퍼텍스트 생성 언어(HTML)에 포함되어 동작하는
스크립팅 언어. (PHP,ASP,JSP)
DATA BASE : 복수의 적용 업무를 지원할 수 있도록 복수 이용자의 요구에 호
응해서 데이터를 받아들이고 저장, 공급하기 위해 일정한 구조에
따라서 편성된 데이터의 집합
operating system
월드 와이드 웹(WWW)
23
4. WEB 구성요소
2) 웹 구성에 따른 동작 방식
Set DBConn =
Server.CreateObject("ADODB.Connection")
DBConn.Open "DSN=erp;UID=erp;PWD=vlfoq;"
sqlQuery = "SELECT * FROM UsersCurrent,
Privileges WHERE userprivilege = privilegenum AND
"&_
"userid = '" & id & "' AND " & _
"userpassword = '" & password & "'"
'Response.Write
SqlQuery
Set rsResult = DBConn.Execute(sqlQuery)
<form name=erp_login method=post action="login-process.asp" target="erp_main"
onSubmit="return check_submit();">
<input type="hidden" name="한글필드" value='한글값'>
<table cellpadding=2 cellspacing=1 border=0>
<tr>
<input type="radio" name="language" value='1042' checked>한국어
<input type="radio" name="language" value='1033'>English
</td>
</tr>
<tr>
<!--login 테스트 계정 test:test-->
<td align=right class="login_text">User ID&nbsp;</td>
<td><input type=text name=user_id size="14" class=input></td>
</tr>
<tr>
<td align=right class="login_text">Password&nbsp;</td>
<td><input type=password name=user_password size="14"
class=input></td>
</tr>
<tr height=4></tr>
<tr>
<td align=center colspan=2><input type=image
src="images/login_button.jpg" border=0></td>
</tr>
<tr height=3></tr>
<tr>
<td align=center colspan=2><a href="join.asp"
target="erp_main"><img src="images/join_button.jpg"></a></td>
</tr>
</table>
</form>
24
5. 보안 기능
5.1 요청검사
웹 보안의 가장 중요한 기능으로 클라이언트가 웹 서비스에 대한 요청을 보냈을 때 악의적인 요청 및 침입을 검
사하여 차단 방어하는 기능입니다.
요청 검사
(Request Validation)
클라이언트
사용자 요청
User Request
정상 요청
검사를
통과한 요청
웹 서버
불법 요청
세부항목
 어플리케이션 접근 제어 (Application Access Control)  버퍼 오버플로우 차단 (Buffer Overflow Prevention)
 폼 필드 무결성 검사 (Form Field Integrity Inspection)  SQL 삽입 차단 (SQL Injection Prevention)
 폼 필드 형식 검사 (Form Field Format Inspection)
 스크립트 삽입 차단 (Cross Site Scripting Prevention)
 쿠키 무결성 검사 (Cookie Integrity Inspection)
 검사 회피 차단 (Evasion Detection)
 쿠키 형식 검사 (Cookie Format Inspection)
 요청 형식 검사 (Request Header Validation)
 쿠키 접근 제어 (Cookie Access Control)
 요청 방법 검사 (Request Method Validation)
 과다 요청 검사 (Request Flood Inspection)
 WISE Filter™
5. 보안 기능
5.1 요청검사
1) 접근제어
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
2) 폼필드 검사
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
3) 과다요청제어
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
4) 쿠키보호
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
5) 버퍼오버 플로우
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
6) SQL 삽입차단
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
7) 스크립트 삽입차단
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
8) 업로드 검사
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
9) 다운로드 검사
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
10) 디렉토리 리스팅 차단
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
12) 요청형식 검사
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
13) 검사회피 차단
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
14) 인클루드 인젝션 차단
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
15) 웹공격 프로그램 차단
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.1 요청검사
16) WISE 요청필터
www.lonstech.co.kr/admin/login.asp?param=value HEADER: value cookie=value body_parm=value
도메인
URL
GET 매개변수
헤더
쿠키
POST 매개변수
5. 보안 기능
5.2 컨텐츠보호
클라이언트 요청에 대한 웹 서비스의 응답을 확인하여 차단 또는 마스킹(Masking)하는 기능으로 신용 카드나 주
민등록번호 등의 개인 정보 및 서버 정보의 유출을 방지합니다.
컨텐트 보호
(Content Protection)
클라이언트
검사를
통과한 응답
검사를
통과한 응답
서버 응답
Server Reply
웹 서버
불법 응답
차단
세부항목
 웹 변조 방지(Web Page Integrity Inspection)
 신용 카드 정보 유출 차단(Credit Card Information Leakage Prevention)
 주민 등록 번호 유출 차단(Social Security Number Leakage Prevention)
 계좌 번호 유출 차단(Bank Account Number Leakage Prevention)
 응답 형식 검사(Response Header Validation)
 코드 노출 차단(comment masking)
 WISE Filter™
5. 보안 기능
5.2 컨텐츠 보호
1) 신용카드 정보 유출 차단
신용카드 정보가 응답 메시지에 포함되어 있는 경우 정해진 액션을 수행한다.
5. 보안 기능
5.2 컨텐츠 보호
2) 주민등록 정보 유출 차단
주민등록 정보가 응답 메시지에 포함되어 있는 경우 정해진 액션을 수행한다.
5. 보안 기능
5.2 컨텐츠 보호
3) 계좌번호 정보 유출 차단
계좌번호 정보가 응답 메시지에 포함되어 있는 경우 정해진 액션을 수행한다.
5. 보안 기능
5.2 컨텐츠 보호
3) 웹 변조 방지
등록된 웹 페이지 변조 유무를 판별하고 변조 되더라도 이전의 페이지를 응답한다
5. 보안 기능
5.2 컨텐츠 보호
4) 응답형식 검사
허용 헤더: 등록된 헤더를 제외한 모든 헤더를 차단한다.
필수 헤더: 등록된 헤더가 요청 메세지에 포함되지 않은 경우 차단한다
5. 보안 기능
5.2 컨텐츠 보호
5) 코드 노출 차단
HTML 주석 정보 보호 기능: 스크립트 주석 정보가 응답 메시지에 포함되어 있는 경우 정해진 액션을 수행한다.
스크립트 주석 정보 보호 기능: 스크립트 주석정보가 응답 메시지에 포함 되어 있는 경우 정해진 액션을 수행한다
5. 보안 기능
5.2 컨텐츠 보호
6) WISE 컨텐트 필드
응답 메시지에 대한 다양한 예외 처리를 수행한다.
5. 보안 기능
5.2 컨텐츠 보호
7) 고급 첨부 파일 검사
컨텐츠 보호의 검사 항목을 수행하는데 있어서 파일 속에 암호화된 정보까지 확인하여 액션을 수행하기 위한 기능
5. 보안 기능
5.3 학습
정상적인 웹 서비스에 대한 요청과 응답을 기준으로 애플리케이션의 정보를 학습하는 기능으로 다양한 보안 정책
을 간단하고 손쉽게 적용하도록 도와줍니다.
Adaptive Learning
클라이언트
사용자 요청
User Request
검사를
통과한 요청
사용자 요청
User Request
검사를
통과한 응답
검사를
통과한 응답
“A” => “A”
“B” => “B”
세부항목
 접근 제어 학습(Application Access Control)
 폼 필드 학습(Form Field)
 쿠키 학습(Cookie)
 SQL 사용 학습(SQL Usage)
 스크립트 사용 학습(Scripting Usage)
 쉘 코드 사용 학습(Shell code Usage)
서버 응답
Server Reply
웹 서버
5. 보안 기능
5.3 학습
1) URL 구조 분석
학습된 URL 을 표시한다.
5. 보안 기능
5.3 학습
2) 접근제어 구조 분석
접근제어에서 학습된 URL 을 표시한다.
5. 보안 기능
5.3 학습
3) 폼필드 구조 분석
폼필드 에서 학습된 URL 을 표시한다.
5. 보안 기능
5.1 위장
서버 존을 가상화하고 서버 정보의 유출을 차단하여 클라이언트에게 실제 서버 존의 위치와
서버 정보를 숨기는 기능입니다.
웹 서버
클라이언트
위장된
응답
위장된
응답
서버응답
Server Reply
서버 위장
(Cloaking)
세부항목
 URL 변환(Bi-directional URL Translation, WAT)
 부적절한 에러 처리(Improper Error Handing)
 서버 정보 위장 (Server Masquerading)
 서버 부하 분산 (Server Load Balancing)
Cloaking Information
URL 상세 주소
IP Address
TCP Port Number
서버의 개수, 종류
WAS type
Operating System
Version Numbers
Patch Levels
5. 보안 기능
5.4 위장
1) URL 정보 위장
요청 URL변환 : 요청 URL을 정해진 URL로 변환한다.
응답 URL 변환 : 응답 메시지에 포함된 URL을 정해진 URL로 변환한다
5. 보안 기능
5.4 위장
2) SERVER 정보 위장
응답 메시지에 관하여 서버 정보를 정해진 정보로 변환한다.
[email protected]