Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/corelight/ecs-templates
Network SecurityUtilities & FrameworksLog Analysis
GitHubcorelight/ecs-templates

ecs-templates

Corelight 또는 Zeek Elastic Common Schema 템플릿

저장소 보기
971개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

개요

이 저장소에는 Corelight 또는 Zeek 로그를 Elastic Common Schema(ECS) 명명 표준으로 변환하고 Elastic Stack 배포 환경에 저장하는 데 필요한 모든 것이 포함되어 있습니다. 2019년, Elastic Common Schema와 같은 해에 처음 출시된 이 저장소는 현재까지도 활발히 유지 관리되고 업데이트되고 있습니다.

200개 이상의 다양한 로그와 메트릭을 지원하며, 모든 환경을 지원하면서도 각 고유 환경에 맞게 필요하고 원하는 옵션을 동시에 사용자 정의할 수 있도록 설계되었습니다.
모든 환경에 걸친 지원을 보장하고, 동시에 각 고유한 배포 환경에 맞게 필요하고 원하는 옵션을 사용자 정의할 수 있도록 상당한 노력을 기울였습니다.

이 저장소는 주로 다음 두 가지로 구성되어 있습니다:

  1. Elasticsearch 인덱스 템플릿, 컴포넌트 템플릿, ILM 정책, 설정 및 매핑
  2. 이 저장소용 설치 스크립트와 해당 인제스트 파이프라인 또는 Logstash 파이프라인

라이선스

파일과 자동화 스크립트는 BSD 라이선스에 따라 오픈소스로 제공됩니다. 자세한 내용은 COPYING을 참조하세요.

설치 단계

스크립트를 실행하기 전에 모든 섹션을 읽어 주세요.

  1. 요구 사항
  2. 사용자 정의
  3. 설치
  4. 설치 후

1. 요구 사항

  • 이 저장소의 corelight_ecs.py 스크립트를 사용해야 합니다. 파일 전체에 스크립트가 대체하는 수백 개의 변수가 있으므로 템플릿과 파이프라인을 수동으로 설치하는 것은 지원되지 않습니다.
  • Python 3.6 이상
  • Elasticsearch 8.x 이상
  • Logstash를 사용하는 경우 Logstash 8.x 이상, 7.x를 계속 사용 중이라면 7.17 이상
  • Elasticsearch 데이터스트림 인덱싱 전략

2. 사용자 정의

인덱스 설정, 매핑, 별칭 및 ILM 정책의 사용자 정의를 권장합니다. 따라서 스크립트는 다양한 유형의 사용자 정의(아래에 자세히 설명)를 지원하도록 설계되었습니다.
대부분의 사용자 정의는 필요하지 않겠지만, 옵션이 없는 것보다 있는 것이 낫습니다. 항상 고유한 샤드/레플리카 수와 ILM 정책을 사용하는 것이 권장되며, 그 외에는 많이 사용자 정의할 필요가 없습니다. 그러나 모든 배포 환경에서 인덱스 템플릿, 인제스트 파이프라인 및 Logstash 파이프라인의 많은 부분을 일반적으로 사용자 정의한다면 여전히 그 기능을 사용할 수 있습니다.

  • 사용자 정의 인덱스 이름
    스크립트가 이에 대해 묻고, 업데이트가 필요한 모든 템플릿, Logstash 파이프라인 및/또는 인제스트 파이프라인을 자동으로 업데이트합니다.
  • 인덱스 설정
    • 샤드 수
    • 레플리카 수
    • 기타 인덱스 설정 재정의
    • 설정 부분에 대한 컴포넌트 템플릿에서 적합하다고 생각되는 기타 모든 항목
  • 인덱스 매핑
    • Elasticsearch 인덱스 필드 매핑 재정의
    • 매핑 부분에 대한 컴포넌트 템플릿에서 적합하다고 생각되는 기타 모든 항목
  • ILM 정책
    • 사용자 정의 ILM 정책
  • 인덱스 별칭
    • 이전 버전과의 호환성 또는 비활성화 등을 위한 인덱스 패턴의 별칭
  • 사용자 정의 인제스트 파이프라인
    • Corelight 인제스트 파이프라인이 호출되기 전에, Corelight 인제스트 파이프라인을 전혀 수정하지 않고 자체 사용자 정의 인제스트 파이프라인을 호출할 수 있는 기능
    • 모든 Corelight 인제스트 파이프라인이 호출된 후에, Corelight 인제스트 파이프라인을 전혀 수정하지 않고 자체 사용자 정의 인제스트 파이프라인을 호출할 수 있는 기능
  • 사용자 정의 Logstash 파이프라인은 더 낮은 영숫자 순서의 파일을 만들고 동일한 디렉터리에 로드하기만 하면 됩니다.

각 섹션에 대한 자세한 내용은 아래를 참조하세요.

사용자 정의 인덱스 옵션

사용자 정의 인덱스 이름

스크립트는 데이터 스트림에 대한 사용자 정의 인덱스 이름/패턴을 선택하려는 경우 이에 대해 묻습니다. 이를 통해 고유한 인덱스 명명 규칙을 선택할 수 있습니다. 예를 들어 다음과 같이 선택할 수 있습니다:

  • logs-corelight.conn-default
  • ecs-corelight.conn-default
  • call_it_what_you_will.conn-default
  • logs-corelight.conn-remotesite1

그런 다음 인제스트 파이프라인이나 Logstash 파이프라인을 선택한 경우 필요한 모든 인덱스 템플릿도 업데이트합니다. 기본값을 변경하는 것은 권장되지 않습니다. Corelight 로그는 이제 다른 모든 유형의 ECS 데이터와 함께 작동하고 logs-*와 같은 Kibana 데이터 뷰 내에서 사용할 수 있도록 설정되어 있기 때문입니다.

MSSP/CSSP와 같은 다중 테넌트 환경이나 서로 다른 네트워크의 경우 스크립트 프롬프트에서 데이터 스트림의 조직 부분(위 3개 예시에서 default 부분)을 선택할 수 있을 뿐만 아니라, filebeat에서 data_stream.namespace를 설정하거나 다른 방법으로 파이프라인을 연결하면 파이프라인은 해당 변수가 이미 설정된 경우 이를 재정의하지 않도록 존중하도록 설정됩니다. 네임스페이스가 Elasticsearch가 인덱스 이름으로 허용하는 값으로 설정되어 있는지 확인하세요(때로는 명확하지 않은 일반적인 실수입니다).

사용되는 인덱스 패턴과 각 로그의 기본값은 Google 스프레드시트에서 확인할 수 있습니다. 또한 각 로그에 대한 event.category, event.kind 등의 추가 정보도 일부 나열되어 있습니다.

사용자 정의 인덱스 설정(예: 샤드 및 레플리카)

각 인덱스 템플릿은 인덱스 설정을 재정의하는 데 사용할 수 있는 컴포넌트 템플릿을 호출하도록 지정되어 있습니다. 따라서 고유한 인덱스 설정을 사용하기 위해 저장소의 인덱스 템플릿을 수정할 필요가 없습니다.

다음 컴포넌트 템플릿을 생성하거나 설치 후 수정하세요. 수정할 수 있는 컴포넌트 템플릿의 이름은 다음과 같습니다:

모든 로그를 포괄(5개 범주로 분류):

  • corelight-ecs-component-metric_log-base-settings@custom
  • corelight-ecs-component-parse_failures-base-settings@custom
  • corelight-ecs-component-protocol_log-base-settings@custom
  • corelight-ecs-component-system_log-base-settings@custom
  • corelight-ecs-component-unknown_log-base-settings@custom

위 항목 외에 개별 로그를 포괄하며, 일반적으로 더 구체적인 자체 설정이 필요한 경우:

  • corelight-ecs-component-protocol_log-conn-base-settings@custom
  • corelight-ecs-component-protocol_log-dns-base-settings@custom
  • corelight-ecs-component-protocol_log-files-base-settings@custom
  • corelight-ecs-component-protocol_log-http-base-settings@custom
  • corelight-ecs-component-protocol_log-smb-base-settings@custom
  • corelight-ecs-component-protocol_log-smtp-base-settings@custom
  • corelight-ecs-component-protocol_log-ssl-base-settings@custom
  • corelight-ecs-component-protocol_log-suricata_corelight-base-settings@custom
  • corelight-ecs-component-protocol_log-syslog-base-settings@custom
  • corelight-ecs-component-protocol_log-various-base-settings@custom

사용자 정의 인덱스 매핑(예: 필드)

각 인덱스 템플릿은 필드 유형이나 이름과 같은 항목에 대해 인덱스 매핑을 재정의하는 데 사용할 수 있는 컴포넌트 템플릿을 호출하도록 지정되어 있습니다. 따라서 고유한 인덱스 매핑을 사용하기 위해 저장소의 인덱스 템플릿을 수정할 필요가 없습니다.

다음 컴포넌트 템플릿을 생성하거나 설치 후 수정하세요. 수정할 수 있는 컴포넌트 템플릿의 이름은 다음과 같습니다:

모든 로그를 포괄(5개 범주로 분류):

  • corelight-ecs-component-metric_log-mappings@custom
  • corelight-ecs-component-parse_failures-mappings@custom
  • corelight-ecs-component-protocol_log-mappings@custom
  • corelight-ecs-component-system_log-mappings@custom
  • corelight-ecs-component-unknown_log-mappings@custom

위 항목 외에 개별 로그를 포괄하며, 일반적으로 더 구체적인 자체 설정이 필요한 경우:

  • corelight-ecs-component-protocol_log-conn-mappings@custom
  • corelight-ecs-component-protocol_log-dns-mappings@custom
  • corelight-ecs-component-protocol_log-files-mappings@custom
  • corelight-ecs-component-protocol_log-http-mappings@custom
  • corelight-ecs-component-protocol_log-smb-mappings@custom
  • corelight-ecs-component-protocol_log-smtp-mappings@custom
  • corelight-ecs-component-protocol_log-ssl-mappings@custom
  • corelight-ecs-component-protocol_log-suricata_corelight-mappings@custom
  • corelight-ecs-component-protocol_log-syslog-mappings@custom
  • corelight-ecs-component-protocol_log-various-mappings@custom

사용자 정의 ILM 정책 전략

각 인덱스 템플릿은 고유한 보존 기간을 설정하기 위해 ILM 정책을 재정의하는 데 사용할 수 있는 컴포넌트 템플릿을 호출하도록 지정되어 있습니다. 따라서 고유한 ILM 정책을 사용하기 위해 저장소의 인덱스 템플릿을 수정할 필요가 없습니다.

다음 컴포넌트 템플릿을 생성하거나 설치 후 수정하세요. 수정할 수 있는 컴포넌트 템플릿의 이름은 다음과 같습니다:

모든 로그를 포괄(5개 범주로 분류):

  • corelight-ecs-component-metric_log-ilm-settings@custom
  • corelight-ecs-component-parse_failures-ilm-settings@custom
  • corelight-ecs-component-protocol_log-ilm-settings@custom
  • corelight-ecs-component-system_log-ilm-settings@custom
  • corelight-ecs-component-unknown_log-ilm-settings@custom

이 항목들은 일반적으로 더 구체적인 자체 설정이 필요한 위 항목 외의 개별 로그를 포괄합니다:

  • corelight-ecs-component-protocol_log-conn-ilm-settings@custom
  • corelight-ecs-component-protocol_log-dns-ilm-settings@custom
  • corelight-ecs-component-protocol_log-files-ilm-settings@custom
  • corelight-ecs-component-protocol_log-http-ilm-settings@custom
  • corelight-ecs-component-protocol_log-smb-ilm-settings@custom
  • corelight-ecs-component-protocol_log-smtp-ilm-settings@custom
  • corelight-ecs-component-protocol_log-ssl-ilm-settings@custom
  • corelight-ecs-component-protocol_log-suricata_corelight-ilm-settings@custom
  • corelight-ecs-component-protocol_log-syslog-ilm-settings@custom
  • corelight-ecs-component-protocol_log-various-ilm-settings@custom

사용자 정의 인덱스 별칭

각 인덱스 템플릿은 인덱스 별칭을 재정의하는 데 사용할 수 있는 컴포넌트 템플릿을 호출하도록 지정되어 있습니다. 따라서 고유한 인덱스 별칭을 사용하기 위해 저장소의 인덱스 템플릿을 수정할 필요가 없습니다.

다음 컴포넌트 템플릿을 생성하거나 설치 후 수정하세요. 수정할 수 있는 컴포넌트 템플릿의 이름은 다음과 같습니다:

모든 로그를 포괄(5개 범주로 분류):

  • corelight-ecs-component-metric_log-aliases@custom
  • corelight-ecs-component-parse_failures-aliases@custom
  • corelight-ecs-component-protocol_log-aliases@custom
  • corelight-ecs-component-system_log-aliases@custom
  • corelight-ecs-component-unknown_log-aliases@custom

위 항목 외에 개별 로그를 포괄하며, 일반적으로 더 구체적인 자체 설정이 필요한 경우:

  • corelight-ecs-component-protocol_log-conn-aliases@custom
  • corelight-ecs-component-protocol_log-dns-aliases@custom
  • corelight-ecs-component-protocol_log-files-aliases@custom
  • corelight-ecs-component-protocol_log-http-aliases@custom
  • corelight-ecs-component-protocol_log-smb-aliases@custom
  • corelight-ecs-component-protocol_log-smtp-aliases@custom
  • corelight-ecs-component-protocol_log-ssl-aliases@custom
  • corelight-ecs-component-protocol_log-suricata_corelight-aliases@custom
  • corelight-ecs-component-protocol_log-syslog-aliases@custom
  • corelight-ecs-component-protocol_log-various-aliases@custom

사용자 정의 인제스트 파이프라인

사용자 정의 시작 인제스트 파이프라인 포괄 처리

인제스트 파이프라인의 시작 부분, 즉 Corelight 파이프라인이 호출되기 전에 corelight-ecs-main-pipeline@custom이라는 인제스트 파이프라인을 사용하는 기능이 있습니다. Corelight 파이프라인이 호출되기 전에 수행하려는 작업이 있다면 해당 이름으로 인제스트 파이프라인을 생성할 수 있습니다. 파이프라인을 생성하지 않으면 해당 기능은 조용히 통과하므로 선택 사항입니다.

사용자 정의 최종 인제스트 파이프라인 포괄 처리

인제스트 파이프라인의 끝 부분, 즉 모든 Corelight 파이프라인이 호출된 후에 corelight-ecs-postprocess-final-main-pipeline@custom이라는 인제스트 파이프라인을 사용하는 기능이 있습니다. Corelight 파이프라인이 호출되기 전에 수행하려는 작업이 있다면 해당 이름으로 인제스트 파이프라인을 생성할 수 있습니다. 파이프라인을 생성하지 않으면 해당 기능은 조용히 통과하므로 선택 사항입니다.

사용자 정의 시작 인제스트 파이프라인 파싱 실패 포괄 처리

인제스트 파이프라인 실패에 대한 on_failure 포괄 처리의 시작 부분, 즉 Corelight 파이프라인이 호출되기 전에 corelight-ecs-parse_failures-pipeline@custom이라는 인제스트 파이프라인을 사용하는 기능이 있습니다. Corelight 파이프라인이 호출되기 전에 수행하려는 작업이 있다면 해당 이름으로 인제스트 파이프라인을 생성할 수 있습니다. 파이프라인을 생성하지 않으면 해당 기능은 조용히 통과하므로 선택 사항입니다.

사용자 정의 최종 인제스트 파이프라인 파싱 실패 포괄 처리

인제스트 파이프라인의 끝 부분, 즉 모든 Corelight 파이프라인이 호출된 후에 corelight-ecs-postprocess-final-main-pipeline@custom이라는 인제스트 파이프라인을 사용하는 기능이 있습니다. Corelight 파이프라인이 호출되기 전에 수행하려는 작업이 있다면 해당 이름으로 인제스트 파이프라인을 생성할 수 있습니다. 파이프라인을 생성하지 않으면 해당 기능은 조용히 통과하므로 선택 사항입니다.

3. 설치

스크립트 사용법

root@kitploit:~
git clone https://github.com/corelight/ecs-templates
cd ecs-templates
python3 corelight_ecs.py

스크립트 인자

  • --no-color: 로깅 색상을 비활성화합니다.
  • --debug: 디버그 수준 로깅을 활성화합니다.
  • --es-default-timeout=10: Elasticsearch 연결을 기다리는 기본 타임아웃을 변경합니다.
  • --es-default-retry=2: Elasticsearch 연결 재시도 기본 횟수를 변경합니다.
  • --git-repository=corelight: 사용할 기본 Git 저장소를 변경합니다.
  • --git-branch=main: 사용할 기본 Git 브랜치를 변경합니다.

4. 설치 후

Logstash

환경에 맞게 설치 후 변경해야 할 값이 있을 수 있습니다. 여기에는 Elasticsearch 연결을 위한 사용자 정의 인증 기관, 다양한 Kafka 토픽 등이 포함됩니다. Elasticsearch 출력에는 20개 이상의 옵션이 있고 5개의 서로 다른 입력에는 60개 이상의 옵션이 있으므로 설치 프로그램은 이 모든 옵션을 제공하거나 안내하거나 유효성을 검사하지 않습니다. 그러나 도움을 주기 위해 스크립트는 어떤 파일을 수정해야 하는지 알려줍니다. 또한 모든 것을 완전히 자동화하는 사용자를 위해 설치 후 파일의 값을 변경하고 사용되는 변수의 줄을 동시에 주석 처리 해제하는 과정을 자동화할 수 있음을 보여주는 예제 스크립트가 제공됩니다.

템플릿 사용자 정의

자세한 내용은 사용자 정의 섹션을 참조하세요.

Corelight 센서 설정 - Elastic Exporter

  • corelight 어플라이언스나 테스트와 같이 인제스트 파이프라인에 도달할 수 있는 인덱스 패턴을 사용하려면 접두사를 temporary_corelight_routing_index로 설정하세요.
  • 시스템 인덱스 비활성화
  • 데이터 스트림 활성화 - 버전에 따라 exporter의 체크 박스이거나 고급 구성에서 bro.export.elasticsearch.use_data_streams를 활성화할 수 있습니다.

변경 로그 WIP

저장소의 전체 변경 로그는 changelog.md 파일을 참조하세요.

할 일 목록 WIP

저장소에 대한 전체 할 일 목록은 todo.md 파일을 참조하세요.

버전 관리

이 저장소의 버전 관리는 지원하는 Elastic Common Schema(ECS) 버전을 기반으로 합니다. 각 로그에 다음 필드가 추가됩니다:

  • labels.corelight.ecs_version
  • labels.corelight.ecs_method
  • labels.corelight.ecs_method_version

GitHub 저장소 정의

Elasticsearch 템플릿(이 저장소)

https://github.com/corelight/ecs-templates

  • Elasticsearch 인덱스 템플릿, 컴포넌트 템플릿, ILM 정책, 설정 및 매핑
  • 설치 스크립트

Logstash 파이프라인

https://github.com/corelight/ecs-logstash-mappings

  • Logstash 파이프라인 구성

인제스트 파이프라인

https://github.com/corelight/ecs-mapping

  • 인제스트 파이프라인 구성

Kibana 대시보드 및 시각화

https://github.com/corelight/ecs-dashboards

Kibana 보안 규칙 및 알림

https://github.com/corelight/Elasticsearch_rules

도구 다운로드
  • corelight-ecs-component-protocol_log-weird-base-settings@custom
  • corelight-ecs-component-protocol_log-x509-base-settings@custom
  • corelight-ecs-component-protocol_log-weird-mappings@custom
  • corelight-ecs-component-protocol_log-x509-mappings@custom
  • corelight-ecs-component-protocol_log-weird-ilm-settings@custom
  • corelight-ecs-component-protocol_log-x509-ilm-settings@custom
  • corelight-ecs-component-protocol_log-weird-aliases@custom
  • corelight-ecs-component-protocol_log-x509-aliases@custom