ACARM-ng

ACARM-ng
ACARM-ng
ACARM-ng logo.svg
원본 작성자
개발자WCSS
초기 릴리즈2011년 2월 14일(2011-02-14)
안정적 해제
1.1.1[1] / 2012년 5월 29일; 9년(2012-05-29)
기록 위치
운영 체제리눅스
전임자아캄
유형
면허증GPLv2
웹사이트www.acarm.wcss.wroc.pl

ACAM-ng(경고 상관, 평가 및 대응 모듈 - 차세대)는 오픈 소스 IDS/IPS 시스템이다. ACARM-ng는 컴퓨터 네트워크의 트래픽 분석을 상당히 용이하게 할 수 있는 경보 상관 관계 소프트웨어다. 각각 NIDSHIDS라고도 하는 네트워크 및 호스트 센서에서 전송되는 경고의 수집과 상관관계를 담당한다. 상관 프로세스는 유사한 이벤트를 악의적인 활동의 논리적 조각을 나타내는 그룹으로 통합함으로써 시스템 관리자가 볼 필요가 있는 메시지의 총 수를 가능한 적게 줄이는 것을 목표로 한다.

역사

ACAM의 초기 버전은 2004년부터 2007년 사이에 POSITIF 유럽 연구 프로젝트의 틀에서 개발되고 있었다. 그것은 기사에서 제시된 실용적인 개념 증명서로 자바어로 쓰여져 왔다.[2] 이 소프트웨어는 낮은 확장성 및 효율성 문제에도 불구하고 매우 유용하다는 것이 입증되었다.

2009년 말에 현재의 디자인은 애초에 성능 저하에 심각한 단점을 가지고 있다는 것이 명백해졌다. 그 결과 그 프로젝트는 중단되었다. 그해 말, 원래의 ACARM을 대체하는 것을 목표로 ACARM-ng라는 새로운 프로젝트가 시작되었다. ACARM-ng는 확장성과 플러그인 기반 아키텍처 덕분에 경고 상관 관계를 새로운 차원으로 끌어올렸다. 2009년부터 Wroclaw Networking and Supercomputing Centre for Networking and Supercomputing에 의해 PL-Grid 프로젝트의 일환으로 적극적으로 개발되었다.[3]

특징들

ACARM-ng의 주요 특징은 다음과 같다.

  • 일반 프레임워크(플러그인을 통해 시스템을 쉽게 확장할 수 있음)
  • 다단계 구현
  • 낮은 CPU 활용률 및 메모리 설치 공간
  • 객체 지향적인 최첨단 설계 방법을 사용한 구현
  • 반복적인 경고 처리
  • 실시간 정보 및 대응
  • 웹 기반 데이터 시각화
  • 보고가 지연되지 않는 긴 상관 관계 시간 창

건축

ACARM-ng는 상관 데몬, WUI 및 (선택사항) 데이터베이스 엔진의 3가지 주요 요소로 구성된다.

ACAMM-ng의 데몬은 프레임워크 솔루션으로서 처음부터 설계되었다. 시스템 부품 간을 통과하는 로깅, 경보 및 상관 관계 메타 경보, 오류 복구, 멀티스레딩 등 핵심 시스템 기능을 제공한다. 나머지 패키지는 플러그인으로, 다음과 같은 클래스로 구분된다.

  • 지속성(데이터 추상화)
  • 입력(데이터 수집)
  • 필터(데이터 상관 관계 및 수정)
  • 트리거(자동 보고 및 대응)[4]

내장된 소프트웨어 감시기는 시스템 상태에 대한 최신 정보를 제공한다.

번들 플러그인을 보여주는 ACAM-ng의 내부 아키텍처.

WUI는 수집된 이벤트와 상관된 이벤트의 그래픽 및 표 표현을 통해 상관된 데이터를 쉽게 검색할 수 있도록 한다. 시스템 관리자는 시스템 수명 중 모든 순간에 무슨 일이 일어나고 있는지 쉽게 알 수 있다.

지정된 기간 동안의 수신 메시지 수를 보여주는 경고 시계열도.
샘플 경고를 표시하는 경고의 페이지.

WUI와 데몬은 데이터베이스를 통해 상호 운용된다. 데몬은 수집된 데이터를 상관 관계 결과 및 런타임 구성과 함께 저장한다. WUI는 이 데이터를 읽고 표시할 수 있다.

실행 데몬에는 데이터 베이스 엔진이 필요하지 않더라도 데이터를 지속적으로 저장하는 것이 적극 권장된다는 점에 유의하십시오. 데이터베이스 사용을 거부하면 WUI를 통해 시스템 정보를 얻을 수 없으며 시스템이 재시작될 때 기록 데이터가 손실된다. 더 이상 데몬에 의해 처리되지 않는 이벤트도 폐기된다.

전처리기

수신 데이터의 양을 제한해야 하는 경우가 많다(예: cron 스크립트에 의해 주기적으로 발생하는 경고 제거). 사용자가 시스템 입력을 자신의 필요에 맞게 조정할 수 있도록 특별한 "사전 프로세서" 구성요소가 제공된다. 수신 알림이 상관 관계 엔진에 들어가기 전에 수신 알림을 수락하거나 거부할 수 있도록 허용-if-match 및 reject-if-match 규칙의 체인을 정의할 수 있다.

플러그인

ACARM-ng의 데몬은 코어 패키지를 다시 컴파일할 필요 없이 새로운 플러그인을 추가 및 제거할 수 있다. 그것은 시스템 개발과 시험을 훨씬 더 쉽게 만든다.

사용할 각 플러그인은 주 구성 파일에서 먼저 구성해야 한다.

지속성

지속성은 스토리지 레벨에서 추상화를 제공한다. 일반 인터페이스는 거래 메커니즘이 제공되는 한 어떤 데이터 절약 백엔드도 구현하는데 사용될 수 있다.

ACAMM-ng의 최근 안정적인 릴리스는 다음과 같은 지속성 구현을 제공한다.

  • 스텁(모든 쓰기 요청 삭제 - 데이터가 저장되지 않음)
  • Postgres(Postgre 사용)정보 저장을 위한 SQL 데이터 베이스)

입력

입력은 데이터 수집 메커니즘의 추상화를 제공한다. 구현에 대한 유일한 요구사항은 ACAM-ng 호환 형식으로 경보를 출력하는 것이다.

ACAMM-ng의 최근 안정적인 릴리스는 다음과 같은 입력 구현을 제공한다.

  • 파일(IDMEF 형식의 XML 파일 읽기)
  • 전주곡(사전 관리자 데이터 수집 지점에서 알림 읽기)

필터

필터는 상관 관계와 데이터 업데이트 메커니즘의 추상화를 제공한다. 필터가 메타 경보에 대해 수행할 수 있는 작업에는 제한이 없지만, 가장 일반적인 용도는 유사한 경보를 상호 연관시키는 것이다(특히 이 특별한 경우를 위해 조정된 API가 제공됨).

ACAMM-ng의 최근 안정적인 릴리스는 다음과 같은 필터 구현을 제공한다.

  • 일대일(호스트 쌍 간에 이벤트 발생)
  • 1 - 다수(모든 경고에 대해 소스 호스트가 동일한 이벤트 발생)
  • 여러 개에서 한 개(모든 경고에 대해 대상 호스트가 동일한 이벤트 발생)
  • 여러 개에서 여러 개(상관된 경고의 소스 및 대상 호스트 집합이 유사한 이벤트 발생)
  • DNS 확인자(가능한 경우 IP 주소를 DNS 이름으로 복원)
  • IP 블랙 리스트(심각한 네트워크에 속하는 소스/대상 주소를 사용하여 알림의 우선 순위 변경)
  • 동일한 이름(동일한 이름으로 이벤트 표시)
  • 이벤트 체인(다음 인라인 기계에서 시간순으로 발생한 이벤트 표시, 그러한 솔루션은 드물고 "스캔, 브레이크 인, 에스컬레이션" 순서를 나타낼 수 있음)
  • 사용자 모니터(한 사용자의 작업에 의해 트리거된 이벤트 표시)
  • 유사성(특정 임계값을 초과하는 서로 유사한 사건 발생, 두 요소를 비교하는 동안 모든 데이터가 고려됨)
  • 새 이벤트(이전에는 시스템에 표시되지 않았던 이벤트의 우선 순위 지정)
  • python(이벤트 상관 관계를 위해 사용자가 제공한 Python 스크립트 사용)

트리거

트리거는 보고 및 대응 메커니즘의 추상화를 제공한다. 설계에 의한 트리거는 데이터의 내용을 변경할 수 없지만 경고에 대한 대응을 개시한다. 일반적으로 의심스러운 이벤트를 관리자에게 실시간으로 보고(예: 전자우편을 통해)하고 탐지된 스레드에 대한 자동 대응(예: 방화벽에서 악의적인 호스트 차단)이 사용된다.

ACAMM-ng의 최근 안정적인 릴리스는 다음과 같은 트리거 구현을 제공한다.

  • 관리자에게 의심스러운 이벤트에 대해 알림:
  • 자동 반응 수단 제공:
    • extapp(외부 응용 프로그램/스크립트 실행, 상관된 모든 이벤트를 매개 변수로 전달)
    • python(이벤트 상관 관계를 위해 사용자가 제공한 Python 스크립트 사용)
    • snort sam(Snort의 Snort Sam 플러그인을 사용하여 여러 유형의 방화벽을 재구성함)

각 트리거는 데몬의 주 전처리와 동일한 방식으로 정의된 특정 임계값, 상관된 경고 수 또는 다른 규칙에 반응하도록 독립적으로 설정할 수 있다. 그러한 접근방식은 특히 의심스러운 사건에 대해 시스템이 자율적인 반응을 수행하도록 구성된 경우, 임의의 복잡한 규칙을 정의할 수 있도록 완전히 구성 가능한 해결책을 제공한다.

참고 항목

참조

  1. ^ ACAM-ng 다운로드 페이지
  2. ^ Valeur, F.; Vigna, G.; Kruegel, C.; Kemmerer, R.A. (2004). "Comprehensive approach to intrusion detection alert correlation". IEEE Transactions on Dependable and Secure Computing. 1 (3): 146–169. CiteSeerX 10.1.1.60.6872. doi:10.1109/TDSC.2004.21. S2CID 2603627.
  3. ^ Bartłomiej Balcerek; Bartosz Szurgot; Wojciech Waga; Mariusz Uchroński (2012). "ACARM-ng: Next Generation Correlation Framework". In Marian Bubak; Tomasz Szepieniec; Kazimierz Wiatr (eds.). Building a National Distributed e-Infrastructure - PL-Grid. Lecture Notes in Computer Science. Vol. 7136. Springer. pp. 114–127. doi:10.1007/978-3-642-28267-6_9. ISBN 978-3-642-28266-9.
  4. ^ Balcerek, Bartłomiej; Szurgot, Bartosz; Uchroński, Mariusz; Waga, Wojciech (2012), Bubak, Marian; Szepieniec, Tomasz; Wiatr, Kazimierz (eds.), "ACARM-ng: Next Generation Correlation Framework", Building a National Distributed e-Infrastructure–PL-Grid: Scientific and Technical Achievements, Lecture Notes in Computer Science, Berlin, Heidelberg: Springer, pp. 114–127, doi:10.1007/978-3-642-28267-6_9, ISBN 978-3-642-28267-6, retrieved 2021-05-02

외부 링크