맞춤 풍부화 사용: 1Password UUIDs

Panther의 맞춤 풍부화를 사용하여 1Password UUID를 친숙한 이름으로 변환하기

개요

기본적으로 1Password 로그에는 볼트(vault)나 로그인 자격 증명과 같은 객체의 사람이 읽을 수 있는 값이 포함되어 있지 않습니다. 대신 각 객체는 범용 고유 식별자(UUID)로 참조됩니다. Panther에서 커스텀 인리치먼트를 사용하여 UUID를 친숙한 이름으로 변환할 수 있습니다. 우리는 명령줄 인터페이스(CLI)를 사용하는 것을 권장하지만 API를 사용하는 것도 가능합니다.

다음 예에서는 CLI를 통해 1Password 항목 및 해당 UUID 목록을 추출한 다음, UUID를 사람이 읽을 수 있는 친숙한 이름으로 변환하는 커스텀 인리치먼트를 생성했습니다.

사전 요구 사항

관련 UUID와 함께 1Password 항목 목록을 얻기

  1. CLI를 통해 1Password에 로그인합니다.

  2. 다음 함수를 사용하여 관련 UUID를 포함한 1Password 항목 목록을 추출하고 1password_enrichment.json: op item list --format json | jq -c '.[] | {uuid:.id,title:.title,updatedAt:.updatedat}' >> 1password_enrichment.json

    또는 1Password CLI v1을 사용 중인 경우 다음 명령을 사용하세요:

    • op list items | jq -c '.[] | {uuid:.uuid,title:.overview.title,updatedAt:.updatedAt}' >> 1password_enrichment.json

circle-info

나중 단계에서 이 1password_enrichment.json을 사용하여 스키마를 생성해야 한다는 점에 유의하세요.

스키마 생성에 대한 자세한 내용은 맞춤 로그.

Panther에서 커스텀 인리치먼트 생성

  1. Panther 콘솔에 로그인합니다. 왼쪽 탐색에서 클릭하세요 선택적으로 사용자 정의 인리치먼트만 업로드하도록 지정할 수 있습니다:.

  2. 오른쪽 상단에서 클릭하세요 새로 만들기.

  3. 을 클릭하세요 사용자 정의 인리치먼트 Panther 콘솔 또는 PAT를 통해 S3 버킷에서 데이터 동기화를 설정할 수 있습니다:

  4. 페이지에서 인리치먼트 기본 정보 페이지에서, 인리치먼트 이름를 추가하고 선택적으로 설명과 참고를 추가합니다. The image shows the Lookup Table Basic Information form. The Lookup Name is set to "1Password Translation."

    • 이 예에서 이름은 “1Password Translation”이고 설명은 “1Password UUID를 사람이 읽을 수 있는 이름으로 변환합니다.”입니다.

    • 참고(Reference) 필드는 일반적으로 관련 내부 리소스에 대한 하이퍼링크를 저장하는 데 사용됩니다.

  5. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. 계속.

  6. 연관된 로그 유형 페이지에서 로그 유형을 선택하세요 OnePassword.ItemUsage. 선택자(Selectors) 아래에 item_uuid. On the Associated Log Types page, the Log Type is set to OnePassword.ItemUsage and the Selectors field is set to item_uuid.

  7. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. 계속.

  8. 테이블 스키마 페이지에서 1Password JSON 파일을 기반으로 생성한 스키마를 추가합니다. 기본 키 이름(Primary Key Name)으로 uuid.

  9. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. 계속.

  10. 데이터 가져오기(Import Data) 페이지에서 클릭하세요 Panther 콘솔의 왼쪽에서, 오른쪽 상단의 그런 다음 OnePasswordItems JSON 파일을 선택합니다.

  11. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. 설정 완료 인리치먼트 목록으로 돌아가려면.

이제 커스텀 인리치먼트를 생성했으므로 인리치먼트의 추가 컨텍스트를 기반으로 디텍션을 작성할 수 있습니다. 다음 섹션에서는 이러한 새 값을 사용하여 디텍션을 작성하는 방법을 다룹니다.

디텍션 작성하기

디텍션을 위한 데이터 얻기

  1. Panther 계정에 로그인한 후 왼쪽 탐색에서 클릭하세요 조사 > 데이터 탐색기(Investigate > Data Explorer).

  2. OnePassword 항목의 처음 10줄을 추출하는 새 쿼리를 작성하세요: select * from your_company_logs.public.onepassword_itemusage limit 10

  3. 페이지 하단의 "결과(Results)" 테이블에서 클릭하세요 JSON 보기(View JSON) 레코드 중 하나 옆에 있는

  4. JSON 텍스트를 클립보드에 복사합니다.

아래 예에서는 특정 1Password 볼트의 로그인 자격 증명 집합에 부여된 이름을 기반으로 디텍션을 작성합니다. 이 경우 1Password의 로그인 이름은 “Sensitive Password”로 표시되어 있습니다.

디텍션 작성

  1. Panther 계정의 왼쪽 탐색에서 클릭하세요 Build > Detections.

  2. 오른쪽 상단에서 새로 만들기.

  3. 페이지 상단에서 클릭 .

  4. 로그 유형 필드에서 "OnePasswordItems."를 선택합니다.

  5. 에서 테스트인 경우 JSON 로그를 업로드했다면 클릭하세요 새로 추가. Data Explorer에서 복사한 JSON 텍스트를 붙여넣습니다.

  6. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. Enrich Test Data 그리고 제목이 p_enrichment 필드 아래에 친숙한 이름으로 나열되어 있는지 확인합니다: The image shows a section of the test data, including the p_enrichment field which contains the title "Sensitive Password."

  7. Python 룰 로직 편집기에 다음을 붙여넣습니다:

    • 다음을 사용하는 경우, 심플 디텍션, YAML 텍스트 편집기에는 다음을 붙여넣습니다:

  8. 테스트 실행(Run tests)arrow-up-right 새 디텍션에서. 테스트가 완료되면 페이지 오른쪽 상단의 "Resource": "<secret ARN>" 을(를) 클릭하세요.

마지막 업데이트

도움이 되었나요?