matchioc()

matchioc() 함수는 지정한 침해 지표(IOC) 유형의 위협 인텔리전스 피드에 특정 값이 포함되어 있는지 확인합니다.

문법

matchioc(STR_FEED_TYPE, STR_EXPR)

매개변수

STR_FEED_TYPE
검색할 침해 지표(IOC) 피드 유형입니다. 문자열 리터럴로 지정하며, 대소문자를 구분하지 않습니다. 유효하지 않은 유형을 지정하면 쿼리 파싱 단계에서 오류가 발생합니다.
STR_FEED_TYPE설명
URLURL 침해 지표 피드
DOMAIN도메인 침해 지표 피드
EMAIL이메일 침해 지표 피드
IPIP 주소 침해 지표 피드
REGISTRY레지스트리 침해 지표 피드
MD5MD5 해시 침해 지표 피드
SHA1SHA1 해시 침해 지표 피드
SHA256SHA256 해시 침해 지표 피드
STR_EXPR
피드에서 검색할 값을 포함하는 필드 또는 표현식입니다. 문자열, IP 주소 타입을 지원합니다.

설명

matchioc() 함수는 지정한 침해 지표(IOC) 유형의 위협 인텔리전스 피드에 STR_EXPR 값이 존재하면 true, 존재하지 않으면 false를 반환합니다.

STR_EXPR 값이 null이면 false를 반환합니다. STR_EXPR 값이 IP 주소 타입이면 문자열로 변환한 후 피드에서 검색합니다.

matchioc() 함수는 matchfeed() 함수와 달리 피드 이름 대신 침해 지표 유형으로 피드를 선택합니다. 유형에 해당하는 피드 매처(matcher)를 찾을 수 없으면 쿼리 파싱 단계에서 오류가 발생합니다.

오류 코드

해당 사항 없음

사용 예

  1. src_ip 필드 값이 IP 침해 지표 피드에 존재하는지 확인합니다.

    json "{'src_ip': '192.0.2.1'}"
    | eval result = matchioc("IP", src_ip)
    | # result: false
    
  2. MD5 해시 값이 악성코드 침해 지표 피드에 존재하는지 확인합니다.

    json "{'file_md5': 'd41d8cd98f00b204e9800998ecf8427e'}"
    | eval result = matchioc("MD5", file_md5)
    | # result: false
    
  3. 도메인이 침해 지표 피드에 존재하는지 확인합니다.

    json "{'dst_domain': 'example.com'}"
    | eval result = matchioc("DOMAIN", dst_domain)
    | # result: false
    
  4. STR_EXPR 값이 null인 경우

    json "{'src_ip': null}"
    | eval result = matchioc("IP", null)
    | # result: false
    

호환성

matchioc() 함수는 소나 4.0 이전 버전부터 제공되었습니다.