사용자 정의 특성 표현식을 사용하여 사용자 정의 특성 정의

사용자 정의 특성 표현식을 사용하여 이벤트 페이로드에 대해 사용자 정의 특성을 정의하십시오. 유효한 JSON 오브젝트가 탐지될 때 JSON 구문 분석이 시작되므로, 전체 이벤트가 JSON 형식일 필요는 없습니다. 마찬가지로, 유효한 LEEF/CEF 메시지가 이벤트 내에서 탐지될 경우에만 LEEF 및 CEF 구문 분석이 시작됩니다. 정규식 구문 분석은 전체 페이로드를 통과합니다.

이 태스크에 대한 정보

IBM QRadar 는 다음 사용자 정의 특성 표현식 유형을 지원합니다.
  • 정규식
  • JSON
  • LEEF
  • CEF
  • 이름 값 쌍
  • 일반 목록
  • XML

동일한 이벤트에 대한 다양한 사용자 정의 특성을 캡처하기 위해 서로 다른 표현식을 사용할 수 있습니다. 여러 이벤트 형식으로부터 동일한 사용자 정의 특성을 캡처할 수 있는 경우에는 이를 캡처하기 위해 표현식 유형의 조합을 사용할 수도 있습니다.

프로시저

  1. QRadar 에 로그인하고 관리 탭을 클릭하십시오.
  2. 데이터 소스 섹션에서 사용자 정의 이벤트 특성을 클릭한 후 추가를 클릭하십시오.
  3. 특성 유형 선택 섹션에서 추출 기반을 선택하십시오.
  4. 테스트 필드에서 사용자 정의 특성을 테스트하는 데 사용할 이벤트 페이로드를 입력하십시오.
  5. 특성 정의 섹션에서 다음 단계를 완료하십시오.
    1. 기존 특성에 표현식을 추가하는 경우 기존 특성 을 선택하고 목록에서 특성을 선택하십시오.
    2. 새 특성을 정의하는 경우 새 특성 을 선택하고 특성의 이름을 입력하십시오.
    3. 규칙, 보고서 및 검색에 대한 특성을 사용하려면 규칙, 전달 프로파일 및 검색 인덱싱에서 사용 가능 선택란을 선택하십시오.
      룰 및 인덱스에 대한 특성을 사용하려면 이 선택란을 선택해야 합니다. 선택란을 선택하면 보고서 및 검색의 효율성이 향상되지만, 보고서 및 검색에 대한 특성을 사용하기 위해 이를 선택할 필요는 없습니다. 선택란을 선택하면, 이벤트가 처음에 수신되는 경우 저장하기 전에 특성이 구문 분석됩니다. 결과적으로 이벤트 수집 서비스에 로드가 적용됩니다.
    4. 특성의 필드 유형 을 선택하십시오.
      사용자 정의 특성의 유형으로 IP를 선택하는 경우 QRadar 는 IPv4만 지원합니다.
    5. 선택사항: 특성에 대한 설명을 입력하십시오.
  6. 특성 표현식 정의 섹션에서 다음 단계를 완료하십시오.
    1. 사용 가능 선택란을 선택된 상태로 유지하십시오. 그렇지 않으면 선택란을 지워 특성을 사용 불가능하게 하십시오.
    2. 로그 소스 유형 목록에서 특성의 로그 소스 유형을 선택하십시오.
    3. 특정 로그 소스의 이벤트에 대해서만 표현식을 평가하는 경우 로그 소스 목록에서 로그 소스를 선택하십시오. 모든 로그 소스에서 평가하려면 선택하지 마십시오.
    4. 표현식이 특정 이벤트 이름 또는 QID를 갖는 이벤트에 대해서만 평가되는 경우, 이벤트 이름 을 클릭하고 표현식을 연관시킬 QID를 찾아보십시오.
    5. 특정 하위 레벨 카테고리가 있는 이벤트에 대해 표현식을 평가하는 경우 카테고리를 선택하고 상위 레벨 카테고리 를 선택한 후 이벤트에 대한 하위 레벨 카테고리 를 선택하십시오.
      팁: 선택한 로그 소스 유형 및 로그 소스의 모든 이벤트에 대해 표현식을 평가하는 경우 하위 레벨 카테고리상위 레벨 카테고리임의로 설정했는지 확인하십시오.
    6. 추출 방법 필드에서 특성에 사용할 추출 방법을 선택하십시오.
      표 1. 특성 추출 방법
      추출 방법 올바른 표현식 양식
      정규식 정규식 및 캡처 그룹 번호를 입력하십시오.  
      JSON 키 경로
      유효한 JSON 표현식 양식은 다음과 같습니다.
      /"<name of top-level field>"
      중첩된 JSON 형식의 이벤트인 경우 유효한 JSON 표현식 양식은 다음과 같습니다.
      /"<name of top-level field>"/"<name of sub-level field_1>".../"<name of sub-level field_n>"

      'user' 필드를 추출하려면 JsonKeypath 필드에 /"user" 를 입력하십시오.

      'user' 서브오브젝트에서 'last_name' 값만 추출하려면 다음 표현식을 입력하십시오.
      /"user"/"last_name"
      다음 예는 플랫 JSON 레코드에 대한 단순한 이벤트 케이스입니다.
      {"action": "login", "user": "Firstname Lastname"}
      다음 예는 중첩된 오브젝트가 있는 JSON 레코드에 대한 복잡한 이벤트 케이스입니다.
      { "action": "login", "user": { "first_name": "Firstname", "last_name": "Lastname" } }
      LEEF 키 올바른 LEEF 표현식은 단일 키 참조 또는 특수 LEEF 헤더 필드 참조의 양식이어야 합니다.

      'usrName' 속성을 추출하려면 LEEF Key 필드에 usrName을 입력합니다.

      이 예에서 추출할 수 있는 키는 다음과 같습니다.
      • devTimeFormat
      • devTime
      • usrName
      • 이름
      • authType
      • src
      헤더 키 특성을 추출하려면 LEEF 키 필드에서 다음 형식으로 키를 입력하십시오.
      $eventid$
      LEEF 헤더 값은 다음 표현식을 사용하여 추출할 수 있습니다.
      • $leefversion$
      • $vendor$
      • $product$
      • $버전$
      • $eventid$
      다음 예는 LEEF V1.0으로 형식화된 단순한 이벤트 케이스입니다.
      LEEF:1.0|ABC Company|SystemDefender|1.13|console_login|
      devTimeFormat=yyyy-MM-dd'T'HH:mm:ss.SSSZ	
      devTime=2017-10-18T11:26:03.060+0200	
      usrName=flastname	name=Firstname Lastname	
      authType=interactivePassword	src=192.168.0.1
      다음 예는 캐럿(^) 구분 기호를 사용하여 LEEF V2.0으로 형식화된 단순한 이벤트 케이스이며, LEEF V1.0 예와 동일한 키를 포함합니다.
      LEEF:2.0|ABC Company|SystemDefender|1.13|console_login|^|
      devTimeFormat=yyyy-MMdd'T'HH:mm:ss.SSSZ^
      devTime=2017-10-18T11:26:03.060+0200^usrName=
      flastname^name=Firstname Lastname
      ^authType=interactivePassword^src=192.168.0.1
      CEF 키 올바른 CEF 표현식은 단일 키 참조 또는 특수 CEF 헤더 필드 참조의 양식이어야 합니다.

      'cs1' 특성을 추출하려면 CEF 키 필드에 cs1을(를) 입력하십시오.

      이 예에서 추출할 수 있는 키는 다음과 같습니다.

      • 시작
      • duser
      • cs1
      • cs1Label
      • cs2
      • cs2Label
      • src
      헤더 키 특성을 추출하려면 CEF 키 필드에서 다음 형식으로 키를 입력하십시오.
      $id$
      CEF 헤더 값은 다음 표현식을 사용하여 추출할 수 있습니다.
      • $cefversion$
      • $vendor$
      • $product$
      • $버전$
      • $ID$
      • $이름$
      • $severity$
      다음 예는 CEF 형식의 이벤트를 보여줍니다.
      CEF:0|ABC Company|SystemDefender|1.13|console_login|
      Console Login|1|start=Oct 18 2017 11:26:03 
      duser=flastname cs1=Firstname 
      Lastname cs1Label=Person 
      Name cs2=interactivePassword 
      cs2Label=authType src=192.168.0.1
      이름 값 쌍 키 올바른 이름 값 쌍 표현식은 단일 키 참조의 형식으로 되어 있습니다.
      다음 예에서는 이름 값 쌍 형식으로 된 이벤트를 보여줍니다.
      Company=ABC 
      Company;Product=SystemDefender;
      Version=1.13;EventID=console_login;
      Username=jsmith;Name=John 
      Smith;authType=interactivePassword;
      일반 목록 키 경로 올바른 일반 목록 표현식은 $<number> 표기법 형식입니다. 예를 들어 $0은 목록의 첫 번째 특성을 나타내고 $1은 두 번째 특성을 나타내는 식입니다.
      다음 예에서는 일반 목록 형식으로 된 이벤트를 보여줍니다.
      ABC Company;1.13;console_login;jsmith;
      John Smith;interactivePassword;
      XML 키 올바른 XML 표현식은 단일 키 참조 양식으로 되어 있습니다.

      XML 필드에 특성의 값을 채우는 데 사용할 경로를 입력하십시오. XML 키 경로는 XML 오브젝트의 루트를 나타내는 슬래시(/)로 시작해야 하며, 그 뒤에는 큰따옴표로 묶인 하나 이상의 XML 필드 이름이 와야 합니다.

      다음 예는 XML 형식으로 된 이벤트를 보여줍니다.
      <EPOEvent><MachineInfo>
      <MachineName>NEPTUNE</MachineName>
      <MachineName>VALUE23</MachineName><AgentGUID>
      9B-B5-A6-A8-37-B3</AgentGUID><IPAddress 
      someattrib="someattribvalue">
      192.0.2.0</IPAddress>
      <OSName>Windows 7</OSName><UserName>I 
      am a test user</UserName></MachineInfo></EPOEvent>
    7. 특성 정의 섹션에서 숫자 필드 유형 을 선택한 경우, 형식 섹션의 추출된 숫자 형식 필드에서 숫자 형식을 선택하여 사용자 정의 특성의 로케일에 대한 숫자 그룹 구분 기호를 정의하십시오.
    8. 특성 정의 섹션에서 날짜/시간 필드 유형 을 선택한 경우 형식 섹션의 추출된 날짜/시간 형식로케일 필드에 형식을 입력하여 사용자 정의 특성의 로케일에 대한 날짜 및 시간을 정의하십시오.
    9. 특성 표현식 정의를 테스트하려면 테스트 를 클릭하십시오.
  7. 저장을 클릭하십시오.