232. IDS (Intrusion Detection System, 침입 탐지 시스템)

⚠️ 이 문서는 해커가 성문(방화벽)을 몰래 뚫고 사내 네트워크로 진입했을 때, 밖으로 나가는 트래픽을 자르거나(IPS) 막지는 못하더라도 **망 내부에 CCTV처럼 숨어서 모든 네트워크 패킷을 몰래 엿듣고(Sniffing), 해커의 냄새가 나는 공격 패턴을 발견하는 즉시 관리자에게 "지금 공격당하고 있습니다!"라고 요란한 사이렌을 울려주는 수동적/경고형 보안 솔루션인 'IDS(침입 탐지 시스템)'와 그 양대 탐지 기법(오용 탐지 vs 이상 탐지)**을 다룹니다.

핵심 인사이트 (3줄 요약)

  1. 본질: 방화벽(Firewall)이 정해진 IP/Port만 보고 문을 열어주는 '경비원'이라면, IDS는 문을 통과한 사람들 사이에 섞인 소매치기를 가려내기 위해 대합실 구석에 설치해 둔 'CCTV 모니터링 룸'이다. 직접 도둑의 멱살을 잡지는 못하지만(차단 불가), 알람을 울려 경찰을 부른다.
  2. 가치: 네트워크 망의 흐름을 1초도 끊어먹지 않는다(Out-of-path 연결). 복제된 패킷을 한쪽 구석에서 안전하게 스캔하기 때문에, 장비가 고장 나서 뻗어도 사내 인터넷 속도나 서비스에 단 1%의 악영향(장애)도 주지 않는다는 엄청난 안정성 무기를 가졌다.
  3. 기술 체계: 도둑의 지문(알려진 해킹 패턴)을 데이터베이스와 대조하는 빠르고 정확한 **'오용 탐지(Misuse/Signature)'**와, 도둑의 지문은 없지만 평소와 다르게 회사 서버 데이터를 미친 듯이 빼가는 미친놈을 잡아내는 '이상 탐지(Anomaly)' 기법을 섞어 쓴다.

Ⅰ. 방화벽의 한계와 IDS의 CCTV 철학 (Out-of-Path)

경비원은 짐 검사를 대충 한다. 안에 CCTV를 달아 낱낱이 감시해라.

  1. 방화벽(Firewall)의 맹점:
    • 방화벽은 무식하다. 겉봉투에 "출발지: 1.1.1.1, 목적지: 내 웹서버, 포트: 80"이라고 적혀있으면 묻지도 따지지도 않고 문을 열어준다 (L3/L4 통제).
    • 해커가 정상적인 고객인 척 80번 포트로 들어오면서, 패킷 내용물(Payload) 안에 SQL 인젝션 공격 문자열(' OR 1=1 --)을 쑤셔 넣어서 보내도 방화벽은 알아채지 못하고 통과시킨다.
  2. IDS 스니핑 (Port Mirroring):
    • 스위치 장비 옆구리에 IDS라는 감시 기계를 단다.
    • 스위치에게 "이곳을 통과하는 모든 트래픽(패킷)을 복사본 1부 만들어서 IDS 쪽 포트로 쏴줘라(Mirroring / SPAN)"라고 지시한다.
    • IDS는 실제 데이터가 굴러가는 본선(In-line)에 서 있지 않고, 옆길로 빠져나와 팝콘을 먹으며 쏟아지는 복사본 패킷의 뱃속 내용물(L7 Payload)까지 샅샅이 스캔한다.
  3. 수동적 경고 (Passive Response):
    • 스캔하다 해킹 공격을 발견했다! 하지만 IDS는 복사본을 보고 있으므로 원본 트래픽의 허리를 자르거나(Drop) 차단할 권력(기능)이 아예 없다.
    • 오직 관리자 화면에 빨간 불(Alert)을 깜빡이며 이메일을 쏠 뿐이다. (이를 개선해 직접 멱살을 잡고 차단까지 해주는 진화형 장비가 바로 'IPS(침입 방지 시스템)'다.)

📢 섹션 요약 비유: 공항에서 방화벽은 여권(IP)만 보고 통과시켜 주는 입국 심사대입니다. 마약 밀수꾼이 위조여권으로 통과해 버렸습니다. IDS는 공항 천장에 매달린 수백 대의 고화질 CCTV입니다. CCTV는 밀수꾼이 마약을 꺼내는 걸 목격합니다. 하지만 CCTV가 로봇 팔을 뻗어 마약범을 체포할 순 없죠(차단 불가). CCTV는 즉시 경비실에 요란한 사이렌(알람)을 울려 관리자가 출동하게 만드는 수동적 감시망입니다.


Ⅱ. 탐지 기법 1: 오용 탐지 (Misuse / Signature Detection)

범죄자 몽타주(지명 수배 전단지)를 들고 똑같이 생긴 놈만 잡는다.

  1. 시그니처 (Signature) 기반 매칭:
    • 안랩 V3 백신과 똑같은 원리다. 전 세계 보안 회사들이 모아놓은 해킹 공격의 '지문(시그니처)' 데이터베이스를 들고 있다.
    • 예: "HTTP 요청 파라미터에 Union Select라는 글자가 포함되어 있으면 이건 100% SQL 인젝션 공격이다."
  2. 장점 (확실한 검거):
    • 지명 수배 전단지와 100% 똑같이 생긴 놈만 잡아내므로, 억울하게 일반인을 범인으로 잡는 오탐(False Positive) 확률이 거의 0에 수렴할 정도로 매우 낮다. (탐지 정확도 최고)
    • 검사 속도가 매우 빠르다 (글자 매칭만 하면 되니까).
  3. 치명적 단점 (제로데이 공격의 밥):
    • 전단지에 없는 얼굴을 한 신종 도둑, 즉 세상에 처음 나온 해킹 공격인 '제로데이(0-day)' 공격은 절대 막을 수 없다. 해커가 코드를 한 글자만 슬쩍 꼬아서(우회 공격) 변장해도 IDS는 바보처럼 속아서 통과시켜 버린다.

📢 섹션 요약 비유: 경찰(오용 탐지 IDS)이 한 손에 [전국 지명수배자 얼굴 명부]를 들고 지나가는 사람의 얼굴을 하나하나 1:1로 대조합니다. 명부에 있는 얼굴과 똑같은 사람이 지나가면 귀신같이 멱살을 잡습니다(정확도 100%). 하지만 명부에 사진이 없는 초범(제로데이 공격)이 눈앞에서 흉기를 휘둘러도, 경찰은 "어? 내 수배 전단지에 없는 놈인데? 통과~"라며 바보처럼 놓쳐버리는 치명적인 융통성 제로의 검문 방식입니다.


Ⅲ. 탐지 기법 2: 이상 탐지 (Anomaly / Behavior Detection)

얼굴(지문)은 모르겠지만, 평소와 다르게 행동하는 놈은 일단 다 때려잡는다.

  1. 행위 기반 모델링 (Baseline):
    • 오용 탐지의 약점(신종 공격 못 막음)을 메우기 위해 발명되었다.
    • 기계를 켜면 한 달 동안 사내 네트워크의 '평상시 정상적인 트래픽 흐름(Baseline)'을 AI나 통계 모델로 학습한다.
    • "아, 우리 회사는 매일 오후 2시에 패킷이 1만 개 날아다니고, 사장님 PC는 보통 구글만 접속하는구나"라는 정상 상태를 기억한다.
  2. 이상(Anomaly) 행위의 캐치:
    • 어느 날 새벽 3시, 갑자기 사장님 PC에서 중국에 있는 알 수 없는 IP 주소로 100GB의 회사 데이터를 미친 듯이 전송하기 시작한다. (평범하지 않은 임계치 초과)
    • IDS는 수배 전단지(시그니처)에 이 공격 코드가 없어도 상관하지 않는다. "이건 평소 우리 회사 패턴이 아냐! 미친놈이 나타났다!" 라며 사이렌을 울린다.
    • 장점: 세상에 처음 나온 신종 공격(제로데이)과 내부자의 자료 유출 징후를 기가 막히게 잡아낸다.
  3. 치명적 단점 (오탐의 지옥):
    • 일반인을 도둑으로 오해하는 오탐(False Positive)률이 미친 듯이 높다.
    • 새벽에 서버 관리자가 정상적으로 대용량 정기 백업을 돌렸을 뿐인데, IDS는 "평소와 달라! 해킹이야!" 라며 새벽 3시에 보안팀장에게 기상 알람을 울려버린다. 보안팀이 양치기 소년(IDS)의 알람을 무시하게 만드는 주범이 된다.

📢 섹션 요약 비유: 아파트 경비원(이상 탐지 IDS)이 수배 전단지를 버리고 주민들의 '평소 행동 패턴'을 달달 외웁니다. 매일 밤 10시에 자던 101호 아저씨가 새벽 3시에 땀을 흘리며 거실을 돌아다니면, 경비원은 도둑(신종 공격)인 줄 알고 냅다 사이렌을 울립니다. 진짜 도둑(제로데이)일 수도 있지만, 101호 아저씨가 그냥 배탈이 나서 화장실에 간 것(정상 백업 작업)인데도 사이렌이 울려 아파트 전체가 밤새 고통받는 억울한 오진(False Positive)이 밥 먹듯 일어나는 예민한 감시법입니다.