침입탐지시스템 (IDS)
description
Transcript of 침입탐지시스템 (IDS)
침입탐지시스템 (IDS)
2004. summer충북대학교 조은선
2004 정보보호 전문가 과정
Table of Contents• 침입과 공격
• 침입과 공격에 대한 대응– 대응 방식 분류
• 관련 자료들
침입과 공격
Intrusion• 침입 (intrusion)
– 좁은 의미 : crack, 남의 시스템을 뚫고 들어옴– 목적과 연관 지어 : Attack 의 ( 매우 중요한 ) 부분
• 침입자 (intruders) – 이런 사람들 (by Anderson[ANDE80] ) :
Masquerader( 합법적인 사용자를 가장 ),Misfeasor( 합법적인 사용자가 권한 남용 ),Clandestine user (super user 의 권한을 취득하여
auditing, access control 같은 기능을 자기 맘대로 ) ...
침입 시나리오
• 목표 시스템 선정 및 루트 권한 획득– 네트워크 스캐너 등으로 운영중인 호스트 ,
열린 포트 , 서비스 검색• 취약성 활용
– 패스워드 공격 등으로 일반 사용자로 침입• 취약성 활용
• 관련 로그 삭제 , 백도어 설치
공격
• 침입 후 공격• blind DOS (Denial of Service)
• 대응책– 패치 이용 취약점 보완– 취약점 자가 진단…
Intrusion vs. Attack전통적인 Attack 절차
1. 정보 수집 단계 : • 서버 취약점 스캔• 시스템 , 서비스 , OS 탐지 , 네트워크 토폴로지 , 필터링
규칙 , 네트워크 서버 정보 탐지
2. 시스템 침입 단계• statd, POP, Imap.. 등의 소프트웨어의 원격
버퍼오버플로우 취약점 이용하거나• 패스워드 파일 획득 후 crack 으로 해독• 각종 도구 나와 있음
Intrusion vs. Attack전통적인 Attack 절차
(cont’)3. 공격 전이 단계
• 침입 흔적 제거• 일반 계정 침입이라면 root 권한 획득
– 시스템 취약점 이용• 백도어등 설치 (rootkit, 백오리피스 )
4. 공격• 직접 공격 : (password) sniffing 등• 다단계 공격의 경유지로 이용
– 역추적 피하기• 차후의 공격에 활용
Intrusion 의 예 : DDOS (Distributed Denial of
Service) Attack
복잡 ? - tool 존재
예 : DDOS - Stacheldraht1. 정보 수집 단계 (Scan) 2. 시스템 침입 단계 ( 취약성 )
3. 공격 전이 단계– master 에 심어지는 handler - mserve.c– agent 에 심어지는 daemon – td.c1. 주기적으로 ICMP 패킷을 교환 , 서로의 존재 확인 ID: 666 data: “skillz” agent → master ID: 667 data: “ficken” agent ← master2. address forging 이 가능한지 test ( 가짜 IP 쓴 패킷이 master 로 나갈 수 있는지 확인 )
ID: 666 data: 가짜 source IP agent → master ID: 1000 data: “spoofworks” agent ← master
4. 공격 단계 : master 가 attacker 에 의한 지령 받으면 agent 에게 공격 명령
침입과 공격에 대한 대응
Intrusion 에 대한 대응
• Protection : 미리 막기
• Detection : 발생되면 알아채기
• Response : 알아챘다 . 그러면 ?
Note: Attack 의 두번째 단계 뿐아니라 attack 전체에 대한 대응의 의미임
Intrusion – protection 예 ) Password cracking
• Password Cracking– attack 을 위해 침입하는 단계에서 password 에 대해
시도되는 것들• 시스템에 기본 설정된 패스워드 , 짧은 길이 로 한정 시켜
무 제 한 생 성 , 사 전 과 비 교 , 사 용 자 ( 관 리 자 ) 이 름 , 전화번호 , 주민번호 , 자동차 번호 ..
• 첫 문자를 대문자나 제어문자로 , 전체 단어를 대문자 , 단어 뒤집어보기 , 문자 “ O” 을 숫자 “ 0” 으로 ..
– 실험 결과 : 이 방법으로 전체 password 의 대략 25% 는 알 수 있음 [KLEI90]
• 기본적인 Protection 방법 : 1. access control– password file 은 root 권한으로만 접근 가능
공격자 : Trojan horse 써서 피함
Intrusion-Protection예 ) Password Cracking
(cont’)2. One-way encryption– password file 은 encrypt 된 형태로 보관– DES 에 근거한 crypt 알고리즘
• 7bit ASCII 8 글자 password (56bit) + salt (11bit) 64 bit ( 등등 ..)
(salt : 사용자가 기억 더 하지 않아도 password 길이 늘어남 , 같은 password 의 두 사용자도 내부적으로 다른 password 가능 )
– login 시 verify 도 encrypt 해서
Intrusion-Protection예 ) Password Cracking
(cont’)3. 좋은 password 고르기
– 컴퓨터가 만들어 줌– 주기적으로 password cracker 를 돌려
사용자에게 알려줌– 입력 시 검사
• 모 든 패 스 워 드 는 적 어 도 8 개 의 문 자 길 이 , 첫 8 문자에서 적어도 하나씩의 대문자 , 소문자 , 숫자 , 구두점 포함 규칙을 강요
• 나쁜 password 사전 만들어 없는 것만 허용– 사전 크기가 좀 큼 - 30MB[APAF92a], 시간도 많이 걸림
• 사전 대신 단어 생성 규칙만 유지– Markov 모델 등 사용
Intrusion-Detection• 대응 기법들 중 가장 많이 발달• 적절한 ( 신속한 ) 탐지 - 손해 최소화 , 복구 빠르게– response 나 protection 과 연계도 가능
• 무엇을 보고 ? --- audit record (audit trail)– 다음 항목들이 요긴 [Denn87]
• subject (누가 ) : 사용자 , 프로세스 , 사용자 그룹 ,..• action ( 무슨 행동 ) : r, w, x, “ 로그인 했다” , ...• object ( 무엇에 대해 ) : 대상 화일 , 프린터 , 구조체 ...(type 별로 분류 )
• exception condition : if 발생했다면 무슨 조건이었나• resource usage : 얼마나 쓰나• time stamp
– 실시간 처리 요망
Intrusion-Detection System Audit Record 예
예 ) copy GAME.EXE <Library>GAME.EXE (by Smith)
Intrusion-Detection Network Audit Record 예
예 ) <src IP,dest IP, src port, dest port, protocol, time session initiated, session initiation direction, success/failure of session>
<in, in, 4050, 80, TCP, 07:36:04, inbound, sucess>... suspicious! inin and inbound
(inbound = Internet intranet)
Intrusion-Detection Network Audit Record 예
(Cont’)예 ) native audit record
Fa8/0 1.112.130 PO1/0/0 193.209.112.233 11 0402 0089 1Fa8/0 1.112.130 PO1/0/0 193.209.112.232 11 0402 0089 1 Fa8/0 1.112.130 Hs4/0 193.209.112.235 11 0402 0089 1 Fa8/0 1.112.130 PO1/0/0 193.209.112.234 11 0402 0089 1Fa8/0 1.112.130 Hs4/0 193.209.112.237 11 0402 0089 1Fa8/0 1.112.130 Hs4/0 193.209.112.236 11 0402 0089 1...... 1.112.130 에서 193.209.112.x 를 scanning 하는 것이 역력
Intrusion Detection 에사용되는 Measure
• Login– Login frequency by day and time – Frequency of login at different locations – Time since last login – …
• Command or program execution activity– Execution frequency– Program resource utilization– …
• File Access– Read, write, create, delete frequency– Failure count for read, write, create, delete– …
Intrusion-Detection 의 종류
• 판단 근거 중심– network intrusion detection (NIDS)– system(host) intrusion detection (HIDS)
• 판단 자료 중심 – statistical detection– rule-based detection
• 판단 관점 중심 – misuse detection– anomaly detection
• Architecture– single-system detection– distributed detection
Internet
Web Server
Firewall Firewall
Multi-host based IDS
IDS Server
& Management Console
내부망
Attack Attack
Attack AttackAttack
Host based IDS
Network based IDS
IDS 구성도
Statistical Intrusion Detection
• 일정 기간 , 주기적으로 통계 자료를 구해 임계치를 넘으면 비정상eg) 이틀동안 100회 이상 동일 IP 에서 접근 실패하는 일이 최근 부쩍 늘어남
• 주요 통계 항목– counter : 증가만 하는 정수
• 예 : 주어진 시간 동안 일어나는 특정 type 의 event 의 횟수
– Gauge : 증감하는 정수• 예 : 특정 사용자 application 에 할당되는 connection
수– Interval timer : 두 event 간의 시간 간격
• 예 : login 간격– Resource utilization : resource 소모량
• 예 : program 전체 수행 시간
Statistical Intrusion Detection
• 기본적인 통계치 추출– mean, standard variation – multivariate : 둘 이상 항목 ( 변수 ) 의
correlation– time series 분석 : time interval 에 변화 촛점 ,
각종 통계적 기법 적용
• 응용 되는 기법– markov process : 확률 구하기
• 예 ) operation sequence 에 대하여 :– read 하고 socket open 하면 attack 일 확률 = 0.6
– machine learning, data mining, digital immune system, genetic algorithm ...
Rule based Intrusion Detection
• 정상 /비정상 행위를 판단할 ‘규칙’을 설정 eg) 다른 user 의 directory 를 읽으면
의심 ,외부에서 telnet 으로 들어오면서 IP 가
내부 것이면 침입 , 시스템 프로그램 copy 만드는 것도 의심 , 평소에 하던 패턴대로 안하면 의심
Anomaly Detection vs. Misuse Detection
• Anomaly detection– 정상 사용자의 행위 패턴을 기준으로하여 벗어나는 경우 침입으로 간주
– 사용자 ( 그룹 ) 마다의 profile 을 기반으로 함– 과거의 audit data 를 토대로 앞으로를 예측
• Learning data set 필요
• Misuse detection– 침입 행위에 대한 패턴이나 기준을 만들어 맞으면
침입으로 간주– 이 방면의 Expert 가 기준 결정
Distributed Detection• 분산 공격 : LAN 을 거쳐 침투 , DDOS …
분산 detection• Issues
• 서로 다른 audit record format 함께 다루기- 표준안으로 해결 도모
• 분산 detection 을 위한 자료 이동은 Secure 해야 – confidentiality, integrity
• Centralized vs. decentralized- Bottleneck vs. coordinate o/h
예 : IDEF, Emerald, GRIds, AAIFD, …
Distributed Detection (cont’)
Architecture 1 – Multi level• Host agent :
– 각 host 의 o/s 에서 수행– Single-system stand alone detection 과 마찬가지의
자료 수집– 자체 판단 가능한 것에 대해 판단– 자료 가공 - central manager 에게 전송
• LAN monitor– Host agent 와 비슷 , LAN traffic 만 집중 router 에
장착하기도• Central manager
– Host agent, LAN monitor 로 부터 수집된 데이터를 분석
Distributed Detection (cont’)
Architecture 1 – Multi level•특징
– 역할 분담 : • 단편적인 event 를 기반으로하는 단순한 판단은 agent 나 monitor 에서
• 통계 처리등 시간을 요하는 것은 central manger 에게 전송하여 수행
– Enterprise 환경에 적합
• 예 ) U.C. Davis 의 , GrIDS(DIDS), SRI International 의 Emerald (NIDES)
Distributed Detection (cont’)
Architecture 2 – Autonomous
• Domain 단위로 구성– 각 domain 은
• 여러 host 를 가짐 – 각 host 들에 agent 들이 적절히 분포
• Transceiver, Monitor, Filter– Detection 과 상호 communication 을 위해
• 통신– Intra Domain : host > Transceiver 간의 통신– Intra Domain :
• Domain 간에는 automonous 하게 통신
• 예 ) Purdue 대 AAFID
AAFID architecture
IDS 시장 동향• 상용 제품
– 20 여 개의 국내 개발 제품 • 네트워크 기반이 압도적 다수• 고속화 추구• 타 보안시스템과 연동
– 10 여 개의 해외 제품• 시장 규모
– 해외 (IDC 자료 )
– 국내 (KISIA)
Revenue ($ millions) 1999 2000 2001 2002 2003 2004
Intrusion Detection 115.7 234.2 350.8 443.5 519.1 570.1
Revenue(\ 백만 )
2000 2001 2002
2003
2004 2005
Intrusion Detection
19,300
38,662
49,549
62,937
79,000
97,574
Intrusion Response• 공격자의 기법 분석 ( 후 차후의 대응 )• Policy 변경
– 정상/침입 판단 기준 변경• 역추적
– 침입한 경로에 있는 IP 들을 거꾸로 추적– How? 경로상 IP 들의 hash 값을 패킷에 축적
• 법적 대응
Note : Honey pot– 취약성이 내포된 시스템을 일부러 방치
• 실제로 사용되는 시스템은 아니나 비슷하게 만듬• 침입자가 침입하도록 유도하는 것이 목적
– 침입에 관한 각종 자료 수집을 원할하게 – 기타 대응도 가능
통합 보안 솔루션 • ‘Information Survivability’ :
– 1996년 DARPA/ITO(Defense Advanced Research Projects Agency/Information Technology Office) : 대규모 시스템의 생존력에 대한 연구
• ESM (Enterprise Security Management) : – 칩입차단시스템 ( 방화벽 ), 침입탐지시스템 (IDS),
가상사설망 (VPN), 안티바이러스 등 다양한 종류의 보안 솔루션을 하나로 통합해 관리할 수 있는 솔루션
eg. IBM 의 Tivoli Risk Manager, cf. Enterprise Storage Manager
관련 기관
• IETF(Internet Engineering Task Force)– Open 된 community 로 표준화 논의 진행
• 한국 정보보호 진흥원 (KISA)– 각종 자료
• 인터넷 보안기술 포럼 (ISTF) – 각종 국내 표준
• 침해사고 대응체계 – 국내 www.certcc.or.kr (www.krcert.or.kr)– 미국 www.cert.org
IETF ( Internet Eng ineering Task Force)
의 IDS 관련 표준들• IETF - Working group - security area – idwg (Intrusion
Detection Exchange Format)
• ‘IDMEF(Intrusion Detection Message Exchange Format)’ – 각 IDS마다 제공하는 데이터의 포맷이 다른 문제 해결– DARPA 와 공동 표준– Alert 의 종류 (Classification) 와 보낸 이에 관한 정보
(Analyzer) 등 명시해야– XML 형태
• The Intrusion Detection Exchange Protocol(IDXP) :– intrusion detection entity 들 간에 IDMEF 메시지 , binary
data, text 데이터를 전송하는 protocol – connection oriented authentication, integrity,
confidentiality 등 지원