matchfeed

위협 인텔리전스 피드 데이터를 이용하여 입력 레코드의 지정된 필드 값이 피드에 포함되어 있는지 검사하고, 매칭된 레코드를 출력합니다.

명령어 속성

항목설명
명령어 유형가공 쿼리
필요 권한없음
라이선스 사용량해당 없음
병렬 실행지원
분산 실행수집 노드에서 실행 (mapper)

문법

matchfeed [name=STR] [type={URL|DOMAIN|EMAIL|IP|REGISTRY|MD5|SHA1|SHA256}] fields=STR [invert=BOOL]

옵션

name=STR
위협 인텔리전스 피드 식별자. nametype 옵션 중 하나는 반드시 지정해야 합니다.
type={URL|DOMAIN|EMAIL|IP|REGISTRY|MD5|SHA1|SHA256}
위협 인텔리전스 피드 유형. nametype 옵션 중 하나는 반드시 지정해야 합니다.
  • URL: URL
  • DOMAIN: 도메인
  • EMAIL: 이메일
  • IP: IP 주소
  • REGISTRY: 레지스트리
  • MD5: MD5 해시
  • SHA1: SHA1 해시
  • SHA256: SHA256 해시
fields=STR
매칭 대상 필드 목록. 쉼표(,)로 구분하여 여러 필드를 지정할 수 있습니다. 필드 값은 문자열 또는 IP 주소 타입이어야 합니다.
invert=BOOL
매칭 결과를 반전합니다. t로 지정하면 위협 인텔리전스 피드에 포함되지 않는 레코드를 출력합니다. (기본값: f)

입력 필드

필드타입필수 여부설명
fields로 지정한 필드문자열 또는 IP 주소필수위협 인텔리전스 피드와 비교할 값. null이거나 문자열/IP 주소 타입이 아닌 경우 해당 필드를 건너뜁니다.

출력 필드

name 옵션으로 특정 피드를 지정한 경우:

필드타입설명
feed_name문자열매칭된 위협 인텔리전스 피드 식별자
feed_invert불리언반전 여부
feed_field문자열매칭된 필드 이름 (invert=f인 경우에만 출력)

type 옵션으로 피드 유형을 지정한 경우:

필드타입설명
feed_type문자열위협 인텔리전스 피드 유형
feed_names배열매칭된 위협 인텔리전스 피드 식별자 목록 (invert=f인 경우에만 출력)
feed_invert불리언반전 여부
feed_field문자열매칭된 필드 이름 (invert=f인 경우에만 출력)

오류 코드

파싱 오류
오류 코드메시지설명
300020matchfeed 명령어의 name과 type 옵션 중 하나는 반드시 지정해야 합니다.nametype 옵션을 모두 생략한 경우
300021matchfeed 명령어에 fields 옵션을 지정하세요.fields 옵션을 지정하지 않은 경우
300022유효하지 않은 위협 인텔리전스 피드 식별자입니다.name 옵션에 존재하지 않는 피드 식별자를 지정한 경우
300023유효하지 않은 위협 인텔리전스 피드 유형입니다. URL, DOMAIN, EMAIL, IP, REGISTRY, MD5, SHA1, SHA256 중 하나를 지정하세요.type 옵션에 유효하지 않은 유형을 지정한 경우
300024위협 인텔리전스 피드 매처를 초기화하는데 실패했습니다.피드 매처 초기화에 실패한 경우
런타임 오류

해당 사항 없음

설명

matchfeed 명령어는 입력 레코드의 지정된 필드 값을 위협 인텔리전스 피드 데이터와 비교하여, 매칭 여부에 따라 레코드를 필터링합니다. fields 옵션으로 지정한 필드를 순서대로 검사하며, 첫 번째로 매칭된 필드에서 검사를 중단하고 해당 레코드를 출력합니다.

name 옵션으로 특정 피드를 지정하면 해당 피드만 대상으로 매칭하고, type 옵션으로 피드 유형을 지정하면 같은 유형의 모든 피드를 대상으로 매칭합니다. 두 옵션 중 하나는 반드시 지정해야 합니다.

invert=t를 지정하면 모든 필드를 검사한 후 어떤 필드도 매칭되지 않은 레코드만 출력합니다. 이 경우 feed_field 필드는 출력되지 않습니다.

필드 값이 null이거나 문자열 또는 IP 주소 타입이 아닌 경우 해당 필드를 건너뛰고 다음 필드를 검사합니다.

사용 예

이 사용 예에서 조회하는 WEB_APACHE_SAMPLE 테이블을 준비하려면 쿼리 실습용 데이터를 참고하세요.

  1. 특정 피드 이름으로 IP 주소 매칭

    table limit=1000 WEB_APACHE_SAMPLE
    | matchfeed name=malware_ip fields=src_ip
    

    웹 서버 접근 로그의 출발지 IP 주소를 malware_ip 피드와 대조하여 일치하는 레코드를 필터링합니다.

  2. 피드 유형으로 IP 주소 매칭

    table limit=1000 WEB_APACHE_SAMPLE
    | matchfeed type=IP fields=src_ip
    

    IP 유형의 모든 위협 인텔리전스 피드를 대상으로 출발지 IP 주소를 매칭합니다.

  3. 매칭 결과 반전

    table limit=1000 WEB_APACHE_SAMPLE
    | matchfeed name=malware_ip fields=src_ip invert=t
    

    malware_ip 피드에 포함되지 않는 출발지 IP 주소를 가진 레코드만 출력합니다.

호환성

matchfeed 명령어는 소나 4.0 이전 버전부터 제공되었습니다.