사용자 정의 룰 작성

IBM QRadar 에는 과도한 방화벽 거부, 여러 번의 실패한 로그인 시도 및 잠재적인 봇넷 활동을 포함하여 광범위한 활동을 발견하는 규칙이 포함되어 있습니다. 또한 비정상적인 활동을 발견하기 위해 사용자의 자체 룰을 작성할 수도 있습니다.

시작하기 전에

새 룰을 작성하기 전에 오펜스 > 사용자 정의 룰 유지보수 권한이 있어야 합니다.

이 태스크에 대한 정보

룰 테스트를 정의하는 경우 가능한 가장 작은 데이터에 대해 테스트하십시오. 이러한 방식으로 테스트하면 룰 테스트 성능에 도움이 되며 많은 비용이 필요한 룰의 작성을 방지할 수 있습니다. 성능을 최적화하려면 룰 테스트를 통해 평가되는 데이터를 세분화하는 넓은 카테고리로 시작하십시오. 예를 들어, 특정 로그 소스 유형, 네트워크 위치, 플로우 소스 또는 컨텍스트(R2L, L2R, L2L)에 대한 룰 테스트로 시작하십시오. 중간 레벨 테스트에는 IP 주소, 포트 트래픽 또는 기타 연관된 테스트가 포함될 수 있습니다. 룰은 페이로드 및 정규식 표현식을 마지막에 테스트해야 합니다.

유사한 룰은 카테고리별로 그룹화됩니다. 예를 들면 감사, 악용, DDoS, 탐색 등입니다. 그룹에서 항목을 삭제하는 경우 룰 또는 빌딩 블록이 그룹에서만 삭제되며 페이지에서는 여전히 사용 가능합니다. 그룹을 삭제하는 경우 해당 그룹의 룰 또는 빌딩 블록은 페이지에서 사용 가능하게 남아 있습니다.

프로시저

  1. 오펜스, 로그 보기또는 네트워크 보기 탭에서 을 클릭하십시오.
  2. 표시 목록에서 규칙 을 선택하여 새 규칙을 작성하십시오.
  3. 선택사항: 표시 목록에서 빌딩 블록 을 선택하여 빌딩 블록을 사용하여 새 룰을 작성하십시오.
  4. 조치 목록에서 규칙 유형을 선택하십시오.

    각 룰 유형은 실시간으로 여러 소스에서 수신되는 데이터에 대해 테스트합니다. 예를 들어, 이벤트 룰은 수신되는 로그 소스 데이터를 테스트하고 오펜스 룰은 오펜스의 매개변수를 테스트하여 더 많은 응답을 트리거합니다.

  5. 규칙 마법사 창에서 이 규칙 마법사 실행 시 이 페이지 건너뛰기 선택란을 선택하고 다음을 클릭하십시오.
    이 룰 마법사의 실행 시에 이 페이지 건너뛰기 선택란을 선택하면, 시작 페이지가 매번 시작할 때마다 표시되지 않습니다.
  6. 규칙 테스트 스택 편집기 페이지의 규칙 분할창에서 적용 텍스트 상자에 이 규칙에 지정할 고유 이름을 입력하십시오.
  7. 목록 상자에서 로컬 또는 글로벌을 선택하십시오.
    • 로컬을 선택하면 모든 룰이 수신된 이벤트 프로세서 에서 처리되고 로컬로 처리되는 이벤트에 대해서만 오펜스가 작성됩니다.
    • 글로벌을 선택하면 일치하는 모든 이벤트가 처리를 위해 QRadar Console 에 전송되므로 QRadar Console 는 더 많은 대역폭 및 처리 자원을 사용합니다.
    로컬 및 글로벌 규칙에 대해 자세히 알아보십시오.
    글로벌 룰 테스트
    글로벌 룰을 사용하여 해당 사용자의 이벤트가 여러 이벤트 프로세서에 나타날 수 있는 "다중 사용자 로그인 실패" 등의 항목을 발견할 수 있습니다. 예를 들어, 동일한 사용자 이름에서 10분 이내에 5개의 로그인 실패에 대해 로컬 규칙을 구성한 경우 해당 로그인 실패 5개모두 동일한 이벤트 프로세서에 표시되어야 합니다. 따라서 한 이벤트 프로세서 에 세 번의 로그인 실패가 있고 다른 이벤트 프로세서 에 두 번의 로그인 실패가 있는 경우 오펜스가 생성되지 않습니다. 하지만 이 룰을 글로벌로 설정한 경우에는 오펜스가 생성됩니다.
  8. 테스트 그룹 목록에서 이 규칙에 추가할 하나 이상의 테스트를 선택하십시오. CRE는 룰 테스트를 한 라인씩 순서대로 평가합니다. 첫 번째 테스트를 평가하여 참인 경우 마지막 테스트에 도달할 때까지 그 다음 라인을 평가합니다.
    새 이벤트 룰에 대해 이벤트가 이 AQL 필터 조회와 일치하는 경우 테스트를 선택하려면, 추가(+) 아이콘을 클릭하십시오. 분할창에서, 이 항목을 클릭하고 AQL 필터 조회 입력 텍스트 상자에 AQL WHERE절 조회를 입력하십시오.
    발견되지 않는 이벤트에 대한 규칙 사용에 대해 자세히 알아보십시오.

    다음 룰 테스트는 개별적으로 트리거할 수 있지만 동일한 룰 테스트 스택에서의 룰 테스트는 작동하지 않습니다.

    • 이벤트가 다음 시간 동안 하나 이상의 해당 로그 소스 유형에 의해 발견되지 않는 경우
    • 이벤트가 다음 시간 동안 하나 이상의 해당 로그 소스에 의해 발견되지 않는 경우
    • 이벤트가 다음 시간 동안 하나 이상의 해당 로그 소스 그룹에 의해 발견되지 않는 경우

    이러한 룰 테스트는 들어오는 이벤트에 의해 활성화되지 않지만 대신 특정 이벤트가 사용자가 구성한 특정 시간 간격 동안 표시되지 않는 경우 활성화됩니다. QRadar 는 이벤트가 마지막으로 표시된 시간 (마지막으로 표시된 시간) 을 주기적으로 조회하고 각 로그 소스에 대해 이벤트에 대해 이 시간을 저장하는 watcher 태스크 를 사용합니다. 이 마지막 표시 시간과 현재 시간 사이의 차이가 룰에 구성된 초 수를 초과하는 경우 룰이 트리거됩니다.

  9. 구성된 규칙을 다른 규칙과 함께 사용할 빌딩 블록으로 내보내려면 빌딩 블록으로 내보내기를 클릭하십시오.
  10. 규칙 응답 페이지에서 이 규칙이 생성할 응답을 구성하십시오.
    규칙 응답 페이지 매개변수에 대해 자세히 알아보십시오.
    표 1. 이벤트, 플로우, 이벤트+플로우 룰 및 오펜스 룰 응답 페이지 매개변수
    매개변수 설명
    심각도(Severity) 이벤트에 심각도 레벨을 지정하려면 이 선택란을 선택하십시오. 여기서 0은 최저값이며, 10은 최고값입니다. 심각도는 이벤트 세부사항의 어노테이션 분할창에 표시됩니다.
    신뢰성 로그 소스에 신뢰성을 지정하려면 이 선택란을 선택하십시오. 예를 들어 로그 소스가 번잡한가 또는 비싼가 하는 것입니다. 범위는 0(가장 낮음) - 10(가장 높음)이고 기본값은 10입니다. 신뢰성은 이벤트 세부사항의 어노테이션 분할창에 표시됩니다.
    관련성 자산의 가중치에 관련성을 지정하려면 이 선택란을 선택하십시오. 예를 들어, 자산을 어느 정도 관리하는가 하는 것입니다. 범위는 0(가장 낮음) - 10(가장 높음)이고 기본값은 10입니다. 관련성은 이벤트 세부사항의 어노테이션 분할창에 표시됩니다.
    추가 룰 상관 이벤트 무시

    이벤트 또는 플로우를 일치시켜서 룰 엔진의 다른 모든 룰을 무시하고 오펜스의 작성을 방지하려면 이 선택란을 선택하십시오. 이벤트가 검색 및 보고를 위해 스토리지에 작성됩니다.

    새 이벤트 디스패치

    시스템에서 다른 모든 이벤트처럼 처리되는 원래 이벤트 또는 플로우 외에 새 이벤트를 디스패치하려면 이 선택란을 선택하십시오.

    시스템의 다른 모든 이벤트처럼 처리되는 새 이벤트를 원래 이벤트와 함께 디스패치합니다.

    이 선택란을 선택하면 새 이벤트 디스패치 매개변수가 표시됩니다. 기본적으로, 선택란은 선택되어 있지 않습니다.

    이메일 관리 탭의 시스템 설정에서 이메일 로케일 설정을 변경하려면 이 선택란을 선택하십시오.
    로컬 Syslog에 전송

    이벤트 또는 플로우를 로컬로 로깅하려면 이 선택란을 선택하십시오.

    기본적으로, 이 선택란은 선택되어 있지 않습니다.

    참고: 정규화된 이벤트만 어플라이언스에서 로컬로 로그할 수 있습니다. 원시 이벤트 데이터를 전송하려는 경우, 전달 대상에 전송 옵션을 사용하여 원격 SysLog 호스트에 데이터를 전송해야 합니다.
    전달 대상에 전송

    전달 대상에서 이벤트 또는 플로우의 로깅을 수행하려면 이 선택란을 선택하십시오.

    전달 대상은 공급업체 시스템(예: SIEM, 티켓팅 또는 경보 시스템)입니다. 이 선택란을 선택하면 전달 대상의 목록이 표시됩니다.

    전달 대상을 추가, 편집 또는 삭제하려면 대상 관리 링크를 클릭하십시오.

    알림

    대시보드 탭의 시스템 알림 항목에서 이 룰의 결과로 생성된 이벤트를 표시하려면 이 선택란을 선택하십시오.

    알림을 사용하도록 설정한 경우 응답 리미터 매개변수를 구성하십시오.

    참조 세트에 추가

    이 룰의 결과로 생성된 이벤트를 참조 세트에 추가하려면 이 선택란을 선택하십시오. 데이터를 참조 세트에 추가하려면 관리자여야 합니다.

    참조 세트에 데이터를 추가하려면 다음 단계를 따르십시오.

    1. 첫 번째 목록에서 추가할 이벤트 또는 플로우의 특성을 선택하십시오.
    2. 두 번째 목록에서 지정된 데이터를 추가하려는 참조 세트를 선택하십시오.
    참조 데이터에 추가

    이 룰 응답을 사용하려면 먼저 참조 데이터 콜렉션을 작성해야 합니다.

    참조 세트에서 제거

    참조 세트에서 데이터를 제거하려면 이 선택란을 선택하십시오.

    참조 세트에서 데이터를 제거하려면 다음을 수행하십시오.

    1. 첫 번째 목록 상자에서 제거할 이벤트 또는 플로우의 특성을 선택하십시오. 옵션에는 모든 정규화된 데이터 또는 사용자 정의 데이터가 포함됩니다.
    2. 두 번째 목록 상자에서 지정된 데이터를 제거하려는 참조 세트를 선택하십시오.
    참조 세트에서 제거 룰 응답은 다음 기능을 제공합니다.
    새로 고침
    첫 번째 목록 상자를 새로 고쳐서 목록이 최신 상태가 되게 하려면 새로 고치기를 클릭하십시오.
    참조 데이터에서 제거

    이 룰 응답을 사용하려면 참조 데이터 콜렉션이 있어야 합니다.

    사용자 정의 조치 실행 네트워크 이벤트에 대한 응답으로 특정 조치를 수행하는 스크립트를 작성하려면 이 선택란을 선택하십시오. 예를 들어, 반복되는 로그인 실패에 대한 응답으로 특정 소스 IP 주소를 네트워크에서 차단하는 방화벽 룰을 작성하도록 스크립트를 작성할 수 있습니다.

    관리 탭의 조치 정의 아이콘을 사용하여 사용자 정의 조치를 추가하고 구성할 수 있습니다.

    응답 리미터 이 룰이 응답하는 빈도를 구성하려면 이 선택란을 선택하십시오.

    SNMP 알림은 다음 예제와 유사할 수 있습니다.

    "Wed Sep 28 12:20:57 GMT 2005, Custom Rule Engine Notification -
     Rule 'SNMPTRAPTst' Fired. 172.16.20.98:0 -> 172.16.60.75:0 1, Event Name:
     ICMP Destination Unreachable Communication with Destination Host is
     Administratively Prohibited, QID: 1000156, Category: 1014, Notes:
     Offense description"

    syslog 출력은 다음 예제와 유사할 수 있습니다.

    Sep 28 12:39:01 localhost.localdomain ECS:
     Rule 'Name of Rule' Fired: 172.16.60.219:12642
     -> 172.16.210.126:6666 6, Event Name: SCAN SYN FIN, QID:
     1000398, Category: 1011, Notes: Event description 

다음에 수행할 작업

규칙을 테스트하려면 히스토리 상관을 실행하십시오.

빌딩 블록을 기반으로 이벤트가 규칙 테스트를 트리거하는지 확인하기 위해 이메일 응답을 작성할 수 있습니다. 이메일 알림 전송을 참조하십시오.