본문 바로가기

카테고리 없음

elastic search에 대한 정리

엘라스틱을 사용하게 되었는데, splunk와 조금 차이가 있었다.

우선 로그인에 대한 정보를 json파일로 받게 되었는데, 

왜 이런 json으로 준 것인지부터 이해가 잘 되지 않았다.

 

알고보니

1. Elastic Cloud, Kibana, 또는 Fleet 에서 설정정보를 json형식으로 내보내는 것이었다.

2. 혹은 내부 관리 시스템(SIEM, XDR, SOAR 등)에서 이 형태로 저장했을 가능성도 있음

 

그래서 내가 받은 파일은 두개는 결국

1. Elastic Stack 및 보안 솔루션의 로그인 정보를 포함한 파일과

2. Elastic Agent 설치 및 구성 스크립트 포함한 파일 이 두가지였다.

 

그리고 splunk 사용시에는 대시보드 사용하고 App 사용하고 해도

나름대로 splunk 하나를 사용하는 느낌이었는데,

Elastic을 사용하면 연관서비스가 여러개 있다.

 

그 서비스별 역할 및 용도는 다음과 같다.

Elasticsearch 로그 및 데이터 저장소 (데이터베이스 역할)
- Elastic Stack의 핵심 구성 요소로, 모든 로그 및 이벤트 데이터를 저장하는 역할을 함.
- SIEM(Security Information and Event Management) 환경에서 로그를 수집, 검색, 분석하는 데 사용됨.
- 보안 이벤트, 시스템 로그, 네트워크 트래픽 등의 데이터를 저장하고 쿼리 가능.
Fleet Elastic Agent 관리 및 배포
- Elastic Agent를 관리하는 중앙 서버 역할.
- Fleet을 통해 다양한 서버(Windows, Linux, Mac)에 Elastic Agent를 설치하고 모니터링할 수 있음.
- 보안 로그 및 시스템 이벤트를 수집하여 Elasticsearch로 전송하는 역할.
Kibana 데이터 시각화 및 분석 대시보드
- Elasticsearch에 저장된 데이터를 시각적으로 분석할 수 있도록 대시보드, 그래프, 검색 기능 제공.
- 보안팀이 로그 분석, 위협 탐지, 알림 설정 등을 수행하는 주요 인터페이스.
- SIEM(Security Information and Event Management) 기능을 활용하여 보안 이벤트를 모니터링 가능.
Endace 네트워크 패킷 분석 및 포렌식
- 네트워크 트래픽을 캡처하고, 패킷 수준에서 분석할 수 있는 솔루션.
- 보안 이벤트 발생 시, 실제 네트워크 트래픽을 기반으로 심층 분석(포렌식) 수행 가능.
- 침입 탐지 시스템(IDS)와 연동하여, 보안 위협의 근본 원인을 찾는 데 사용됨.
Tines SOAR(Security Orchestration, Automation, and Response) 자동화 플랫폼
- 보안 운영을 자동화하는 SOAR 솔루션으로, 위협 탐지 후 자동 대응 플레이북(Playbook)을 실행.
- 예를 들어, 이상 징후 탐지 시 자동으로 알림을 보내거나, 대응 조치를 수행할 수 있음.
- 보안팀의 반복적인 업무를 자동화하여 대응 속도를 높이는 역할.

 

실제 운영환경은 다음과 같이 움직인다.

🚀 실제 운영 환경 예시

1. SOC 분석가가 Kibana에서 로그를 확인

  • 보안 이벤트 발생 시, Kibana를 통해 Elasticsearch에 저장된 로그를 분석
  • 특정 IP에서 의심스러운 접근이 있었는지 확인 가능

2. Fleet을 통해 여러 서버에서 보안 로그 수집

  • Windows/Linux 서버에서 Elastic Agent가 실행되며 로그를 수집
  • Fleet을 통해 Agent를 일괄 배포하고 관리

3. Endace를 사용한 패킷 포렌식 분석

  • 특정 보안 이벤트가 발생했을 때, Endace를 통해 네트워크 트래픽을 복구 및 분석
  • 예를 들어, 악성 IP에서 들어온 패킷이 어떤 데이터를 전송했는지 확인 가능

4. Tines를 사용한 자동화된 보안 대응

  • 특정 공격이 감지되면 Tines가 자동으로 방화벽 차단, 알림 발송, 추가 조치 수행
  • SOAR 기능을 활용하여 보안 운영의 자동화 및 효율화 가능

 

그러면, Elasticsearch는 이 사이에서 무슨 역할을 하는가?

🔹 Elasticsearch의 역할

Elasticsearch는 모든 보안 로그와 데이터를 저장, 검색, 분석하는 핵심 데이터베이스 역할을 합니다.
각 서비스들이 Elasticsearch를 중심으로 데이터를 주고받으며 동작합니다.

✅ 1. 로그 및 이벤트 저장소

  • Fleet을 통해 수집된 로그를 저장
    • Fleet에서 Windows, Linux, Mac 서버의 보안 로그를 수집하면 Elasticsearch에 저장됨.
    • 예) 사용자 로그인 기록, 시스템 오류, 네트워크 트래픽 로그 등.
  • 네트워크 트래픽 데이터 저장 (Endace와 연동)
    • Endace에서 수집한 네트워크 트래픽 분석 결과를 Elasticsearch에 저장하여 검색 가능.
    • 예) 특정 IP의 통신 기록, 패킷 캡처 결과.
  • Tines에서 발생한 보안 이벤트 로그 저장
    • Tines가 자동화된 보안 대응을 수행한 결과도 Elasticsearch에 저장됨.
    • 예) 차단된 공격 시도, 경고 로그 등.

✅ 2. 강력한 검색 및 분석 기능

  • 보안팀이 Kibana에서 Elasticsearch에 저장된 로그를 검색 및 분석
    • 예) "누가 특정 서버에 접속했는지?", "의심스러운 IP에서 다수의 로그인 실패가 발생했는지?"
    • "지난 24시간 동안 관리자 계정 로그인 시도 수를 카운트" 등의 복잡한 쿼리 실행 가능.
  • SIEM(Security Information and Event Management) 기능 지원
    • Elastic Stack의 SIEM 기능을 활용해 보안 이벤트를 실시간 탐지 가능.
    • 특정 패턴을 탐지하여 이상 행동을 자동 감지할 수도 있음.

✅ 3. 보안 이벤트 연관 분석

  • 여러 서비스에서 발생한 이벤트를 Elasticsearch에서 하나의 데이터베이스로 통합하여 분석할 수 있음.
    • 예) "이 공격자는 처음에 웹 서버에 접근했고, 이후 내부 네트워크로 이동했다."
    • Fleet → Elasticsearch → Kibana에서 공격자의 행위를 추적 가능.
  • 과거 로그를 저장하고 **보안 포렌식(사건 분석)**에 활용
    • 예) "2주 전에 발생한 데이터 유출 사건과 유사한 패턴의 공격이 있는가?"

📌 Elasticsearch는 단순한 데이터 저장소가 아니라, 보안 운영의 중심!

역할상세 내용
데이터 저장소 보안 로그, 네트워크 트래픽, 사용자 이벤트 저장
강력한 검색 기능 Kibana에서 보안 이벤트를 빠르게 검색하고 분석
SIEM & 보안 이벤트 탐지 특정 패턴을 자동 감지하여 이상 징후 경고
과거 로그 분석 & 포렌식 침해 사고 발생 시 과거 데이터를 분석하여 원인 파악
보안 이벤트 연관 분석 여러 시스템에서 발생한 보안 이벤트를 연결하여 추적

🚀 실제 운영 예시

1. 보안팀이 Kibana에서 특정 IP의 의심스러운 접근을 확인
🔹 Elasticsearch에서 "지난 24시간 동안 SSH 로그인 실패가 많은 IP" 검색
🔹 해당 IP가 공격 패턴과 일치하는지 분석 후 차단

2. Tines가 자동화된 보안 대응 수행 후, 결과를 Elasticsearch에 저장
🔹 Tines가 "이상 징후 발견" → "자동으로 방화벽 차단"
🔹 Elasticsearch에 "이 IP 차단됨" 로그가 저장됨

3. Endace와 연동하여 패킷 분석 후, Elasticsearch에서 검색
🔹 "공격자가 특정 데이터 패킷을 보냈는지 확인"
🔹 Elasticsearch에서 "특정 IP의 패킷 로그 검색"


🛠 결론

📌 Elasticsearch는 단순한 저장소가 아니라, 보안 데이터의 핵심 허브 역할을 하며,
📌 모든 서비스(Fleet, Kibana, Endace, Tines)가 Elasticsearch와 연결되어 데이터를 공유합니다!