근두운 팀프로젝트 과정 중 AWS SecOps 인프라에서 발생하는 모든 보안 이벤트를 수집하여 상관 분석을 도와주는 Wazuh SIEM 구축 과정을 정리해 보려고 한다.

Wazuh SIEM 을 선택하게 된 이유부터 Wazuh 구축에 필요한 EC2, VPC, Security Group, IAM Role 생성 그리고, Wazuh Agent 로그를 수집해 Dashboard 에서 확인하는 과정을 소개할 예정이다.


Wazuh SIEM 선택 이유

우선 AWS 에서 활용할 수 있는 SIEM 후보를 비교해보았다.

구분 Wazuh ELK 스택 AWS OpenSearch
운영 형태 자체 구축 중심 자체 구축 또는 Elastic Cloud AWS 관리형
Agent 기반 수집 Wazuh Agent 제공 Elastic Agent 제공 별도 수집기 구성 필요
커스텀 룰 XML 기반 커스텀 룰 Elastic Security 탐지 규칙 Sigma・커스텀 룰 지원
자동 대응 Active Response 커넥터・워크플로 기능 AWS 서비스 및 외부 시스템 연동
운영 복잡도 중간 중간 ~ 높음 상대적으로 낮음
비용 소프트웨어 무료,
AWS 인프라 비용만 발생 배포・기능에 따라 다름 사용량 기반 관리형 비용

세 가지 SIEM 후보 중, Wazuh 를 선택하게 되었고 그 이유는 다음과 같다.

  1. 제한된 예산에서 운영하는 팀 프로젝트 환경
  2. 직접 커스텀 탐지룰을 작성하여 룰 설계 경험 확장
  3. 자동대응 및 SOAR 와의 연동

추가로, Wazuh 는 오픈소스 기반 SIEM/XDR 플랫폼으로 SIEM 기능에 더해 XDR 의 기능도 하고 있어, Agent 를 통해 엔드포인트의 활동(로그, 프로세스, 파일)을 행위 기반으로 탐지할 수 있다.

이러한 특징들을 고려하여 우리 프로젝트에서는 Wazuh SIEM 을 선택하였다.


Wazuh 이해하기

Wazuh 는 Agent, Server(Manager), Indexer, Dashboard 로 구성되어 있다.

각 구성요소가 하는 역할은 다음 표와 같다.

구분 역할
Agent EC2 인스턴스와 같은 엔드포인트에 설치되어 로그, 파일, 프로세스, 설정, 취약점 정보를 수집
Server 디코더와 탐지룰을 통해 Agent 또는 외부 로그 소스로부터의 이벤트를 수신・분석하여 Alert 생성
Indexer OpenSearch 기반, 탐지 결과와 보안 이벤트를 저장・검색
Dashboard Alert 와 보안 데이터를 시각화하여 웹 UI 제공

기본적인 흐름은 Agent 가 엔드포인트 로그를 Server 로 전달하게 되면 Server 는 디코더를 통해 로그의 필드를 분류하고 이를 탐지룰과 매칭하여 Alert 를 생성, 관리자는 이를 Dashboard 에서 확인할 수 있게 된다.

서버의 행위를 자세히 보면 다음 예시처럼 동작한다.

예시