1. 침입 차단 시스템(Firewall)
가장 기본적인 네트워크 보안 장비로, 접근 통제(Access Control List)를 적용하여 시스템에 접근이 허용된 사용자, IP, Port를 결정한다. 반대로 접근 못하는 Black List IP를 등록하고 차단할 수 있다.
2. 침입 탐지 시스템(Intrusion Detection System)
침입 패턴 정보를 데이터베이스에 저장하고 지능형 엔진을 사용하여 네트워크나 시스템의 침입을 실시간으로 모니터링 할 수 있고 침입탐지 여부를 확인하는 보안 시스템이다.
1) 개요
- 침입 탐지 방법
구분 | 오용탐지(Misuse) | 비정상탐지(Anomaly) |
동작 방식 | - 시그니처 기반, 지식 기반 | - 프로파일(Profile) 기반, 행동 기반, 통계 기반 |
침입 판단 방법 | - 침입 패턴 정보를 데이터베이스화 - 이미 정립된 공격 패턴을 미리 입력하고 매칭 |
- 정상 패턴을 저장하고 정상과 다른 활동을 식별 |
사용 기술 | - 패턴 비교, 전문가 시스템 | - 신경망, 통계적 방법, 특징 추출 |
장점 | - 빠른 속도, 구현 쉬움, 이해 쉬움 - 낮은 False Positive(오탐율) |
- Zero Day Attack 대응 가능 - 사용자가 미리 공격 패턴을 정의할 필요 없음 |
단점 | - 큰 False Negative(미탐율) - 알려지지 않은 공격 탐지 불가 - 대량의 자료 분석에 부적합 |
- 임계치 설정이 어려움 - False Positive가 큼 - 구현 어려움 |
- 침입 탐지 시스템 분류
구분 | NIDS(Network based IDS) | HIDS(Host based IDS) |
동작 | - 네트워크에 흐르는 패킷 검사, 침입 판단 | - 시스템상에 설치, 사용자가 시스템에서 행하는 행위, 파일의 체크를 통해 침입 판단 - 주로 웹 서버, DB 서버 등 중요 서버에 배치 |
자료원 | - Promiscuous 모드로 동작하는 네트워크 카드나 스위치 | - 시스템 로그, 시스템 콜, 이벤트 로그 |
탐지 가능 공격 | - 스캐닝, DoS, 해킹 | - 내부자에 의한 공격, 바이러스, 웜, 트로이목마, 백도어 |
장점 | - 네트워크 자원 손실 및 패킷 변조 없음 - 거의 실시간으로 탐지 가능 - 감시 영역이 하나의 네트워크 서브넷으로, HIDS보다 큼 |
- 침입의 성공 여부 식별 가능 - 실체 해킹 및 해킹시도 판단이 용이 - 주로 S/W적으로 서버와 같은 시스템에 인스톨되어 설치, 관리가 간단 |
단점 | - 부가 장비가 필요함 (스위치 등) - 암호화된 패킷은 분석 불가 - False Positive 높음 - 오탐으로 인한 정상 세션 종료 - DoS는 대응 불가 (탐지만 가능) |
- 감시 영역이 하나의 시스템으로 한정 - 탐지 가능한 공격에 한계가 있음 - 오탐으로 인해 정상 사용자가 자신의 계정 사용 불가 |
Cf) False Positive, False Negative
- False Positive: false(+)로 표현, 공격이 아닌데 공격이라 오판하는 것
- False Negative: false(-)로 표현, 공격인데도 공격이 아니라 오판하는 것
2) Snort
Snort는 패킷을 스니핑해서 지정한 Rule과 동일한 패킷을 탐지하는 침입 탐지 시스템이다.
[Snort Rule]
- 공격자의 공격을 탐지하기 위해 등록된 규칙(패턴)
- 수신되는 패킷은 Rule과 비교해서 탐지 여부를 결정
- Rule Header와 Rule Option으로 구성
- Rule Header는 Action Protocol, IP, Port 등으로 구성되며 Rule Option은 탐지할 조건으로 구성
- action(처리 방법)
종류 | 내용 |
alert | alert을 발생시키고 탐지 정보를 로그 파일에 기록 |
log | 패킷에 대해 로그 기록 |
pass | 패킷 무시 |
dynamic | active 시그니처가 있어야만 동작하며, 유효한 경우 한쪽의 패킷을 기록 |
- Protocol: TCP, UDP, IP, ICMP의 프로토콜을 설정하면 해당 프로토콜을 탐지
- Direction: 패킷의 방향을 의미하며, "->"으로 설정하면 왼쪽은 송신자, 오른쪽은 수신자 정보가 됨
* 송신자와 수신자 구분없이 전송되는 모든 패킷을 탐지하려면 "<>"로설정
- Rule Option: 세부적인 탐지 조건을 설정하는 부분으로, 여러개 설정할 때는 ';'을 넣어서 조건을 구분
Rule Option | 내용 |
msg | - alert 발생 시 msg가 설정된 문장을 로그 파일에 기록 |
sid | - 시그니처 아이디 지정 (0~99는 예약, 100~1,000,000은 공식 배포 Rule) |
dsize | - Buffer Overflow 탐지 시 자주 사용 - 전송되는 패킷의 사이즈를 식별할 수 있어서 dsize보다 큰 값과 작은 값에 대한 설정 가능 - dsize:100<>500 -> 100~500 byte의 패킷 탐지 |
nocase | - 패턴을 매칭할 때 대문자와 소문자를 구분하지 않음 |
content | - 전송하는 payload를 검색해서 지정한 문자열이 있는지 확인하는 옵션 |
flags | - TCP 프로토콜에서 Control Flags를 지정하는 것으로 SYN, FIN, URG, ACK 등 지정 - SYN flag는 flags: S, SYN과 FIN을 모두 지정하려면 flags: SF |
flow | - TCP를 재조립하여 동작하는 것으로 TCP 연결이 확립된 세션을 탐지하기 위해 established를 지정 - to_server, to_client, from_server, from_client를 사용해 전송되는 곳을 지정 - TCP로 연결되어 서버로 전송되는 패킷을 지정하려면 flow: to_server, established |
itype / icode | - 네트워크의 오류를 감시하고 보고하는 ICMP 프로토콜을 탐지 - Type 값이 0이면 ICMP Echo Reply, 8이면 ICMP Echo Request - 즉, ICMP Echo Reply를 탐지하려면 itype:0 |
sameip | - 송신자와 수신자의 IP가 동일한 것을 탐지 (ex. Land Attack 탐지) - alert ip any any -> 201.201.201.0/24 any (msg:"Land Attack";sameip;) |
session | - 세션 정보를 로그에 기록하는 시그니처를 확인하려면, 로그 기록을 위해 action을 log로 지정 - 예를들어 POP3 프로토콜을 탐지하려면 아래와 같이 지정 log any any -> any 110 (session: printable;) |
threshold | - 동일한 특정 패킷에 대해 설정 시간 내 일정 수가 발생하면 탐지 - Brute Force Attack 탐지 가능 - threshold: type [limit, threshold, both], track[by_src, by_dst], count[횟수], seconds[몇 초] - ex. ICMP 패킷이 20초 동안 5번 발생하면 경고 메시지 기록 alert icmp any any -> any any (msg:"ICMP";threshold: type both, track by_src, count 5, seconds 20; sid:10000054;) |
3. 침입 대응 시스템(Intrusion Prevention System)
공격 시그니처를 찾아내 네트워크에 연결된 기기에서 비정상적인 활동이 이루어지는지 감시하여 자동으로 해결 조치하는 보안 솔루션이다.
Real Time 대응이 가능하며, 침입 경고 이전에 공격을 중단시키는 것이 주요 목적이다.
Cf) 침입 대응 시스템 종류
구분 | 설명 |
NIPS(Network IPS) | 공격 탐지에 기초하여 트래픽 통관 여부를 결정하는 인라인 장치 |
HIPS(Host IPS) | 호스트 OS 위에서 수행, 공격 탐지 후 실행 전에 공격 프로세스 차단 가능 |
4. 허니팟(Honeypot)
해커의 행동, 공격 기법 등을 분석하기위해 의도적으로 설치해 둔 시스템으로, Zero Day Attack을 탐지하기 위한 수단이 된다.
Cf) 허니팟 위치
구분 | 설명 |
방화벽 앞 | IDS처럼 Honeypot 공격으로 인한 내부 네트워크 위험도 증가는 없음 |
방화벽 내부 | 효율성이 높아 내부 네트워크에 대한 위험도가 커짐 |
DMZ 내부 | 가장 적당한 위치지만 설치시간 소요되고 관리가 불편하며 다른 서버와의 연결은 반드시 막아야 함 |
Cf) 허니팟 구축 시 고려사항
- 해커에 쉽게 노출되어 해킹 가능한 것처럼 취약해보여야 함
- 시스템의 모든 구성 요소를 갖추고 있어야 함
- 시스템을 통과하는 모든 패킷을 감시하고, 시스템 접속자에 대해 관리자에게 알려야 함
5. 가상 사설망(Virtual Private Network)
공중망(인터넷)을 이용하여 사설망과 같은 효과를 얻기 위한 컴퓨터 시스템과 프로토콜의 집합으로, 인터넷을 사용해서 기업의 시스템에 접근할 수 있는 안전한 네트워크 경로를 제공하는 기술이다.
네트워크로 송신되는 데이터는 데이터는 스니핑 공격에 취약할 수밖에 없지만, 터널링을 통해 VPN Client <> Server 간 암호화 키 교환 과정을 수행 후에 암호화를 사용해서 메시지를 주고받기 때문에 안전한 통신을 지원한다.
1) SSL VPN(Secured Socket Layer VPN)
- SSL VPN의 가장 큰 특징은 웹브라우저만 있으면 언제 어디서나 사용이 가능하다는 것
- VPN 터널링을 수행 시, SSL로 암호화를 수행 (세션 기반 프로토콜)
- 웹브라우저와 웹 서버 간 SSL 협상과정을 한 후에 세션키를 생성하고 세션키로 암호화하여 터널링 구현
참고: SSL VPN 통신과정
https://teacheryoon.tistory.com/7?category=929564
2) IPSEC VPN(IP Security VPN)
- 인터넷 상에서 전용 회선처럼 가상의 회선을 구축하여 데이터를 도청당하는 등의 행위를 방지하기 위한 통신 규약
- IPSEC의 전송 모드는 데이터에 대해 암호화를 수행하지만, IP 헤더에 대해서는 암호화를 수행하지 않음
- IPSEC의 터널 모드는 보안 IPSEC 헤더를 추가하고 IP 헤더와 데이터 모두를 암호화
3) PPTP VPN (Point-to-Point Tunneling Protocol VPN)
- PPP(Point-to-Point Protocol)의 Packet을 IP Packet으로 Encapsulation하여 IP 네트워크에 전송하기 위한 터널링 기법으로 2계층에서 동작
4) L2TP VPN (Layer 2 Tunneling Protocol VPN)
- L2F 프로토콜과 PPTP 프로토콜과의 호환성을 고려하여 만들어진 터널링 프로토콜로 2계층에서 동작
6. NAC (Network Access Control)
네트워크에 연결된 단말기에 대해 사전에 IP, MAC을 등록하고 등록되지 않은 단말기의 네트워크 접근을 차단한다.
NAC는 정책관리 서버, 차단 서버, 에이전트, 콘솔로 구성되어 있다.
Cf) NAC 동작 방식
- 사용자 단말기에 NAC 프로그램을 설치해야하는 Agent 방식과, 설치하지 않아도 되는 Agentless 방식으로 나뉨
구분 | Agent 방식 | Agentless 방식 |
특징 | - 사용자 단말기에 NAC Agent 설치 필요 | - 사용자 단말기에 NAC Agent 설치 불필요 |
접근 제어 | - IP, MAC, Port, Protocol별 접근 제어 - 사용자별 접근 제어 |
|
장점 | - Patch 지원, 하드웨어 및 프로세스 정보, 백신 연동 등 | - Agent 설치 없이 IP 관리, 사용자 PC에 연결된 스위치 및 포트 정보 - 호스트명, 도메인명 관리 등 |
7. ESM(Enterprise Security Management)
기업의 정보보안 정책을 반영하여 다수 보안 시스템을 통합한 통합 보안관제 시스템이다. FW, IDS, VPN 등 각종 이벤트를 수집하고 분석하여 통합 보안을 구현한다.
1) ESM 구성 요소
- ESM Agent, ESM Manager, ESM Console의 3단계 아키텍처로 구성
- ESM Agent: 각종 보안 솔루션의 로그를 수집하는 역할로, 실시간으로 로그를 수집하여 정규 표현식으로 변환 후 ESM Manager에게 전달
- ESM Manager: 로그를 DB에 저장하고 위협 분석, 상관성 분석 등의 분석을 진행
- ESM Console: 모든 보안정보를 모니터링하며 침입 발생 시 명령을 ESM Manager에게 전달
2) SIEM과 ESM의 차이점
- SIEM(Security Information Event Management)은 보안관제 부분 측면에서는 ESM과 거의 유사함
- SIEM과 ESM 모두 각종 보안 솔루션으로부터 로그를 수집하고 분석하는 기능을 함
- ESM은 수집된 로그 및 분석 정보를 DB에 저장하고 관리
- SIEM은 빅데이터를 사용해서 대용량의 로그 정보를 보관하고 각 칼럼별 인덱싱이 가능하여 빠르게 대용량의 데이터를 분석 가능
구분 | SIEM | ESM |
특징 | - 기업 모든 자원의 정보 및 로그를 통합 수집 | - 보안 솔루션 위주의 로그를 수집하고 통합 |
수집 정보 | - 보안 시스템, 보안 소프트웨어, 네트워크 장비, 애플리케이션 로그, 이벤트 등 | - 보안 시스템, 서버 시스템 로그, 이벤트 등으로 수집되는 로그가 한정적 |
분석 | - 사용자, Port, IP, 애플리케이션 등의 작은 단위로 분석 가능 - APT 공격 및 알려지지 않은 패턴에 대해 분석 |
- 시그니처 중심으로 분석 - IP, Port 단위 분석과 알려진 패턴 위주의 분석 |
기반 기술 | - 빅데이터 기술인 MapReduce, Indexing 등 - 고성능의 데이터분석 가능 |
- Agent 혹인 API를 사용해서 로그 수집 - 관계형 DB의 테이블에 데이터를 입력하고 분석 |
# 참고
해당 글은 '이기적 정보보안기사 필기 1권 이론서'을 읽으며 필요한 부분만 정리한 내용입니다.
'자격증 > 정보보안기사(필기)' 카테고리의 다른 글
정보보안기사(필기) - 애플리케이션 보안(전자상거래 보안) (0) | 2021.08.01 |
---|---|
정보보안기사(필기) - 애플리케이션 보안(인터넷 응용 보안) (0) | 2021.07.30 |
정보보안기사(필기) - 네트워크 보안(네트워크 기반 공격 기술) (0) | 2021.07.29 |
정보보안기사(필기) - 네트워크 보안(네트워크 기초) (0) | 2021.07.22 |
정보보안기사(필기) - 시스템 보안(윈도우) (0) | 2021.07.21 |