1. IDS/IPS의 의미와 정의, 유형, 알아야 할 개념들
2. 침입 탐지 기술의 역사와 발전 과정
3. 현대의 주요 도구 소개와 차이점 (동작 방식 중심, 장단점 포함)
1. IDS와 IPS란 무엇인가
한 줄 정의
IDS(Intrusion Detection System, 침입 탐지 시스템)
네트워크나 시스템을 감시하다가 의심스러운 활동을 발견하면 경보를 울리는 시스템.
IPS(Intrusion Prevention System, 침입 방지 시스템)
한발 더 나아가 위협을 실시간으로 직접 차단하는 시스템.
가장 쉬운 비유는 이렇다. IDS는 CCTV, IPS는 경비원이다. CCTV(IDS)는 수상한 사람을
녹화하고 경보를 울리지만 직접 막지는 못한다. 경비원(IPS)은 수상한 사람을 몸으로 막아
들여보내지 않는다. 즉 IDS = 탐지·경보, IPS = 탐지 + 차단이 핵심 차이다.
IDS와 IPS의 차이
이 비유는 곧 설치 위치의 차이로 이어진다.
패시브(passive) 방식
IDS의 기본. 실제 트래픽이 지나가는 길 옆에서 트래픽을 복사본으로 받아 구경한다(SPAN 포트나 TAP 장비를 이용). 길 위에 서 있지 않으니 고장 나거나 느려도 네트워크 자체엔 영향이 없다.
인라인(inline) 방식
IPS의 기본. 트래픽이 반드시 통과해야 하는 길목 한가운데 놓인다. 그래야 나쁜 패킷을 그 자리에서 떨궈버릴(drop) 수 있다. 대신 이 장비가 멈추면 네트워크도 멈추고, 잘못 판단하면 멀쩡한 트래픽까지 끊긴다.
필요한 이유
방화벽이 “누가 들어올 수 있는지”를 정하는 출입문이라면, IDS/IPS는 일단 들어온 트래픽의 내용물까지 들여다보는 검색대다. 정상적인 출입문(포트)으로 들어온 트래픽 안에 숨은 공격(예: 정상 웹 요청처럼 위장한 해킹 시도)은 방화벽만으로는 못 거른다. IDS/IPS는 그 패킷의 속을 깊이 검사해서 공격을 찾아낸다.
DPI(Deep Packet Inspection, 심층 패킷 검사)
패킷의 겉봉(주소·포트)만 보는 게 아니라, 안에 담긴 실제 내용(payload)까지 뜯어보는 것. “주소만 확인하고 통과시키는 것”과 “소포를 열어 내용물까지 검사하는 것”의 차이다.
동작의 핵심 흐름
IDS/IPS는 결국 아래를 반복한다.
- 수집 — 네트워크 패킷이나 시스템 로그를 모은다
- 분석 — 모은 데이터를 탐지 규칙·정상 패턴과 대조한다
- 판단 — 공격으로 의심되는지 결정한다
- 대응 — IDS는 경보를 보내고, IPS는 추가로 차단한다
유형
(1) 설치 위치
- NIDS / NIPS (네트워크 기반) 네트워크 길목에서 오가는 패킷 전체를 감시한다. 망 전반을 한눈에 보지만, 암호화된 트래픽은 들여다보기 어렵다.
- HIDS / HIPS (호스트 기반)
특정 서버·PC 안에 설치돼 그 기기의 로그, 파일 변경, 프로세스 등을 감시한다. 그 기기는 깊이 보지만 망 전체는 못 본다.
비유하면 NIDS는 건물 복도의 CCTV, HIDS는 각 방 안에 설치된 감지기다. 보통 둘을 함께
써서 사각지대를 줄인다.
탐지 방식
-
시그니처 기반 (지식 기반)
알려진 공격의 “지문(패턴)” 목록과 대조한다. 지명수배 전단지로 범인을 찾는 방식. 알려진 공격엔 정확하고 빠르지만, 처음 보는 공격(제로데이)은 전단지에 없으니 못 잡는다.시그니처(signature)
특정 공격에만 나타나는 고유한 패턴(특정 바이트 열, 문자열 등). 이걸 모아둔 게 “룰(rule)”이고, IDS/IPS는 룰 목록과 트래픽을 끊임없이 대조한다. -
이상 탐지 (행위 기반)
“평소 정상 상태”를 먼저 학습해두고, 거기서 벗어나면 의심한다. 단골손님 얼굴을 외운 가게 주인이 낯선 사람을 바로 알아채는 방식. 새로운 공격도 잡을 수 있지만, 평소와 다르기만 해도 알람이 울려 오탐이 많다. -
상태 기반 프로토콜 분석
통신 규약(프로토콜)의 “정상적인 대화 순서”를 알고 있다가, 순서를 어기는 비정상 흐름을 잡아내는 방식. 위 둘의 중간 성격이다.
알아야 할 핵심 개념들
IDS/IPS를 이해하는 데 가장 중요한 두 단어는 오탐과 미탐이다.
오탐(False Positive)
정상인데 공격이라고 잘못 울린 경보. “양치기 소년” 문제. 오탐이 많으면 보안 담당자가 알람에 무뎌지고,
특히 IPS에서는 멀쩡한 트래픽을 끊어 서비스 장애를 일으킨다.
미탐(False Negative)
공격인데 놓친 경우. 진짜 위험을 막지 못한 것이라 더 치명적일 수 있다.
이 둘은 시소 관계다. 탐지를 빡빡하게 하면 미탐은 줄지만 오탐이 늘고, 느슨하게 하면
반대가 된다.
그래서 현장의 IDS/IPS 운영은 사실상 이 둘의 균형을 맞추는 튜닝 작업이다.
특히 IPS는 차단이 곧 장애로 이어지므로, 확실한 공격만 막도록 보수적으로 설정하는 경우가
많다.
활용 방법
- 탐지(IDS)부터, 차단(IPS)은 신중하게
도입 초기엔 IPS도 일단 탐지 모드로만 돌려 오탐을 충분히 걸러낸 뒤, 신뢰가 쌓인 룰만 차단으로 전환하는 경우가 많다. -
SIEM과 연계
IDS/IPS가 쏟아내는 경보를 SIEM에 모아 다른 로그와 함께 상관 분석한다.SIEM(Security Information and Event Management)
여러 보안 장비의 로그·경보를 한곳에 모아 연관 지어 분석하는 관제 시스템. IDS/IPS는 그 SIEM에 정보를 공급하는 중요한 센서 역할을 한다. - 다른 방어와 겹쳐 쌓기
방화벽, 안티바이러스 등과 층층이 겹쳐 한 겹이 뚫려도 다음 겹이 막는 다층 방어(Defense in Depth) 의 한 층으로 배치한다.
2. 침입 탐지 기술의 역사와 발전 과정
“알려진 공격만 막기 → 모르는 공격까지, 탐지만 하기 →
차단까지, 따로 놀던 장비 → 통합 보안 체계로”
1986-1987 — 이론의 탄생
SRI의 연구자 Dorothy Denning 이 1987년 “An Intrusion-Detection Model”이라는 기념비적
논문을 발표했다(1986년 학회에서 첫 공개). “시스템의 사용 기록을 감시하면 비정상 패턴으로
보안 침해를 탐지할 수 있다”는 발상으로, 오늘날 모든 IDS의 이론적 토대이자 이상 탐지의
시초가 됐다.
1990년대 — 네트워크로 확장
초기 IDS는 한 컴퓨터의 로그를 보는 호스트 기반이었지만, 네트워크가 커지면서 오가는
패킷 자체를 감시하는 네트워크 기반(NIDS) 으로 무대가 넓어졌다.
1998 — Snort, 사실상의 표준이 되다
Martin Roesch 가 1998년 주말에 만든 작은 트래픽 분석 프로그램 Snort 가 오픈소스로
공개됐다. 시그니처 기반 NIDS의 표준이 되며 폭발적으로 퍼졌고, 그는 2001년 Sourcefire
라는 회사를 세웠다(이 회사는 2013년 Cisco에 27억 달러에 인수된다).
2000년대 — 탐지에서 방지(IPS)로
“발견했으면 막기도 하자”는 요구가 커지며, 트래픽 길목에 인라인으로 서서 직접 차단하는
IPS 가 등장했다. IDS와 IPS는 점차 한 제품의 두 모드로 합쳐졌다.
2009-2021 — 멀티스레드와 행위 분석의 부상
- Suricata (2009)
비영리 단체 OISF가 만든 엔진. Snort와 룰 호환되면서도 여러 CPU 코어를 동시에 쓰는 멀티스레드로 고속 네트워크 대응력을 끌어올렸다. - Zeek (옛 Bro)
단순 룰 매칭을 넘어, 스크립트로 트래픽 행위를 분석하고 풍부한 로그를 남기는 방향을 제시했다. 차단보다는 깊은 관찰·기록에 특화됐다.
2021-2026 — 통합과 지능화
- Snort 3 (2021년 1월 정식 출시)
C++로 새로 설계해 멀티스레드를 지원하고 룰 체계를 현대화했다. 구버전 Snort 2는 수명 종료 수순을 밟고 있다. - 통합
이제 IDS/IPS는 독립 장비라기보다 차세대 방화벽(NGFW), 통합 위협 관리(UTM), NDR/XDR(네트워크/확장 탐지·대응) 같은 더 큰 보안 플랫폼의 한 기능으로 녹아든다. - 지능화
머신러닝 기반 이상 탐지가 발전하며, 1987년 Denning이 제시한 통계적 이상 탐지 아이디어가 더 정교한 형태로 되살아나고 있다.
이론(80년대) → 네트워크 시그니처(Snort, 90년대 말) → 차단(IPS, 2000년대) → 멀티스레드·행위분석(2009~) → 통합·ML(현대)
3. 현대의 주요 도구들 — 동작 방식과 장단점
도구들의 개성은 사실상 아래 세 가지 질문에 어떻게 답하느냐에서 갈린다.
- 공격을 어떻게 탐지하나? (시그니처 vs 행위 분석)
- 트래픽을 어떻게 처리하나? (단일 스레드 vs 멀티스레드)
- 탐지에서 끝내나, 직접 차단하나? (IDS vs IPS)
① Snort — 시그니처 기반의 원조이자 표준
네트워크 패킷을 받아 사람이 작성하거나 내려받은 룰(시그니처) 목록과 하나하나 대조해,
일치하면 경보(IDS 모드)하거나 차단(IPS 모드)한다. 오랫동안 한 번에 하나씩 처리하는
단일 스레드 구조였으나, Snort 3(2021) 부터 멀티스레드와 모듈식 구조로 재설계됐다.
(1) 장점
가장 오래되고 자료·커뮤니티 룰이 방대하다. 가볍고 설정이 비교적 단순해 입문과 중소 규모 환경에 적합하다.
(2) 단점
구버전의 단일 스레드 한계로 초고속 대용량 트래픽에선 성능이 달릴 수 있고, 시그니처
기반이라 알려지지 않은 공격엔 약하다.
② Suricata — 멀티스레드의 고성능 후발주자
Snort와 룰 문법을 상당 부분 공유하면서도, 여러 CPU 코어를 동시에 활용(멀티스레드) 해 같은 하드웨어로 더 많은 트래픽을 처리한다. 심층 패킷 검사와 HTTP·TLS·DNS 같은 응용 계층 프로토콜 분석이 강하고, 의심 파일을 끄집어내는 파일 추출 기능도 있다. 설정에 따라 IDS·IPS·NSM 어느 쪽으로도 동작한다.
NSM(Network Security Monitoring) — 차단이 목적이 아니라, 나중의 조사·분석을 위해 네트워크 활동을 폭넓게 수집·기록하는 활동.
(1) 장점
멀티스레드로 고속 네트워크에 강하고, 응용 계층 분석·파일 추출 등 기능이 풍부하다.
(2) 단점
Snort보다 배포·운영이 까다롭고 커뮤니티 규모가 상대적으로 작다.
③ Zeek (옛 Bro) — 차단보다 “기록과 분석”의 도구
Snort·Suricata가 “나쁜 패턴을 잡아 알리거나 막는” 데 초점을 둔다면, Zeek은 수동적으로
트래픽을 관찰해 HTTP·DNS·TLS 등 상세 로그를 남기고, 이벤트 기반 스크립트 언어로 행위를
분석한다. “이 패킷이 공격인가”보다 “이 네트워크에서 무슨 일이 벌어졌나”를 풍부하게
기록하는 도구에 가깝다.
(1) 장점
사후 조사(포렌식)와 위협 헌팅에 필요한 깊은 맥락 정보를 제공한다.
(2) 단점
차단(IPS) 기능이 없고 탐지·기록 전용이며, 학습 곡선이 가파르고 로그 저장 공간을
많이 요구한다.
호스트 기반 — OSSEC / Wazuh
위 셋이 네트워크를 보는 NIDS 계열이라면, OSSEC 와 그 후속인 Wazuh 는 서버·PC 안에
설치돼 로그·파일 변경·프로세스를 감시하는 호스트 기반(HIDS) 의 대표다. 네트워크 도구와
함께 쓰면 사각지대를 메운다.
마치며
정리하면, IDS는 탐지·경보(CCTV), IPS는 탐지 + 차단(경비원) 이고, 둘은 설치 위치
(패시브 vs 인라인) 에서 본질적으로 갈린다.
탐지 방식은 시그니처 기반(알려진 공격에
정확) 과 이상 탐지(미지의 공격까지, 대신 오탐 多) 로 나뉘며, 현실에서는 둘을 섞고
오탐과 미탐의 균형을 맞추는 튜닝이 운영의 핵심이다.
도구로 보면
- Snort는 방대한 룰의 표준
- Suricata는 고속·고기능
- Zeek은 기록과 분석에 특화
라는 특징이 뚜렷했다. 그래서 여기서도 “무엇이 제일 좋냐”보다 “내 환경(규모, 속도, 차단 필요 여부)에 무엇이 맞냐” 가 올바른 질문이다.