표현식 빌더 사용 사례

다음에서 지원:

이 문서에서는 Google Security Operations 플랫폼 전반에서 플레이북 작업 내에 동적 표현식을 빌드하고 구현하는 방법을 자세히 설명하는 사용 사례를 제공합니다. 이 섹션에서는 표현식 빌더를 사용하여 목록 데이터, 항목 세부정보, 스캔 보고서와 같은 이전 작업 결과에서 특정 데이터를 파싱, 필터링, 추출하여 후속 플레이북 단계에서 복잡한 자동화 로직을 실행하는 데 중점을 둡니다.

시작하기 전에

시작하기 전에 다음 제안사항을 따르세요.

  • Qualys – List Scans를 사용하여 Qualys의 최신 스캔을 모두 가져옵니다 (30일 하드 코딩).
  • 표현식 빌더를 사용하여 최신 스캔의 ID (REF)를 자리표시자로 추출하여 VM 스캔 결과를 다운로드합니다. VM 스캔 결과에서 관련 보고서를 다운로드합니다.
  • 작업 목록을 사용하여 보고서에서 네트워크의 일반적인 취약점 및 노출 (CVE)에 대해 발견된 취약점 식별자 목록을 추출하고 케이스의 CVE와 비교합니다.
  • IPS 알림을 사용하여 플레이북을 트리거합니다.

사용 사례: 침입 방지 시스템 IPS

이 사용 사례에서는 네트워크에서 악성 흐름을 발견한 플레이북을 빌드한다고 가정합니다.
Qualys와 같은 취약점 관리 도구에서 일일 검사를 예약했다고 가정해 보겠습니다.

자리표시자 만들기

자리표시자를 만들려면 다음 단계를 따르세요.

  1. Active Directory_Enrich Entities 작업으로 시작하여 영향을 받을 수 있는 모든 항목을 보강합니다.
  2. Qualys VM – List Scans를 사용하여 네트워크 머신의 최신 스캔 결과를 가져옵니다.
  3. 결과 중 감지된 흐름에 취약한 결과가 있는지 확인합니다.
  4. QualysVM_Download VM Scan Results_1를 참고하세요. 자리표시자와 추가된 표현식 빌더가 표시됩니다.

자리표시자 추가

자리표시자를 추가하려면 다음 단계를 따르세요.

  1. [ ] 자리표시자를 클릭합니다. 자리표시자 삽입 대화상자가 표시됩니다.
  2. Playbook > QualysVM_list_Scans_1_JSONResult를 선택합니다.
  3. 표현식 빌더 아이콘을 클릭합니다. 표현식 빌더 페이지가 표시됩니다.
  4. 표현식 필드에 다음을 추가합니다. 표현식은 MAX를 사용하여 날짜 LAUNCH_DATETIME별로 최신 결과를 가져온 다음 REF가 스캔 ID인 관련 스캔의 특정 스캔 ID를 추출합니다.
    예: | max(LAUNCH_DATETIME) | REF
  5. 실행을 클릭합니다. 예상 결과가 표시됩니다.
  6. 삽입을 클릭하여 표현식 빌더를 자리표시자의 일부로 포함합니다.
  7. 케이스의 CVE와 표현식 빌더를 사용하여 작업 > 목록 작업을 클릭합니다.
  8. 플레이북이 실시간으로 트리거되면 PDF 파일로 된 특정 스캔을 비롯한 스캔 결과를 측면 창에서 확인할 수 있습니다.

사용 사례: 로그인 시도 실패 횟수가 너무 많음

이 사용 사례는 엔티티 데이터를 보강하여 알림 심각도를 파악함으로써 로그인 실패 시도를 해결합니다. 목표는 사용자의 부서와 마지막 비밀번호 변경 날짜를 빠르게 찾는 것입니다.

  1. ActiveDirectory_Enrich entities 작업으로 시작하여 알림과 연결된 모든 내부 항목에 관한 세부정보를 수집합니다.
  2. 후속 통계 메시지에서 표현식 빌더를 사용하여 타겟 사용자와 마지막 로그인 시간을 추출합니다.

자리표시자 추가

이러한 자리표시자를 추가하려면 다음 단계를 따르세요.

  1. 메시지 필드에서 [ ] 자리표시자를 클릭합니다.
  2. 자리표시자 삽입 페이지에서 ActiveDirectory_Enrich entities_JSONResult 옆에 있는 표현식 빌더 아이콘을 클릭합니다.
  3. 표현식 필드에 다음을 추가합니다. 이렇게 하면 항목 식별자가 선택됩니다. 결과를 반환한 항목이 두 개 이상인 경우 쉼표로 구분된 목록으로 가져옵니다.
    | 항목
  4. 실행을 클릭하면 샘플 결과가 표시됩니다. 이 경우 user@domain.com입니다.
  5. 삽입을 클릭하여 이를 자리표시자 메시지의 일부로 사용합니다. 메일에 관련 자유 형식 텍스트를 추가합니다.
  6. [ ] 자리표시자를 클릭한 다음 ActiveDirectory_Enrich entities_JSONResult 옆에 있는 표현식 빌더 아이콘을 클릭합니다.
  7. 다음 표현식을 추가합니다. 이는 지정된 사용자의 마지막 로그온 시간을 캡처합니다. | EntityResult.lastLogon
  8. 삽입을 클릭한 다음 저장을 클릭합니다.
  9. 플레이북이 실시간으로 트리거되면 통계 창에 사용자 이름과 마지막 로그인 시간이 표시된 메시지가 표시됩니다.

사용 사례: VirusTotal 해시 분석

이 사용 사례에서는 Kaspersky와 같은 특정 스캔 엔진에서 파일 해시의 평판을 추출하여 파일이 악성인지 확인하고 해당 엔티티를 만드는 방법을 보여줍니다.

  • VirusTotal_Scan Hash 작업을 사용하여 파일 보고서를 가져옵니다.

후속 작업인 Siemplify_Create 또는 Update Entity Properties는 스캔 결과를 기반으로 Detected by Kaspersky와 같은 항목 속성을 생성하거나 수정합니다.

이 자리표시자를 추가하려면 다음 단계를 따르세요.

  1. '필드 값' 필드에서 [] 자리표시자를 클릭합니다.
  2. 자리표시자 삽입 페이지에서 VirusTotal_ScanHash_JSONResult 옆에 있는 표현식 빌더 아이콘을 클릭합니다.

  3. | filter(EntityResult.scans.Kaspersky.detected, "=", "true") | Entity
    표현식을 추가합니다.

    해시를 두 개 이상 스캔한 경우 Kaspersky에서 악성으로 표시한 모든 항목 객체로 결과를 필터링한 다음 항목 이름만 반환합니다.

  4. 삽입을 클릭하고 > 저장을 클릭합니다. 결과는 런타임에 표시됩니다.

도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가로부터 답변을 받으세요.