Amazon Web Services 프로토콜 및 Kinesis 데이터 스트림을 사용하여 Amazon CloudFront 로그 소스 추가
Amazon Kinesis 데이터 스트림에서 AWS CloudTrail 로그를 수집하려면 Amazon Web Services 프로토콜을 사용하여 Amazon AWS CloudTrail 이 QRadar 와 통신할 수 있도록 QRadar Console 에 로그 소스를 추가하십시오.
프로시저
- 다음 표에서는 Amazon Web Services 프로토콜을 사용하여 Amazon AWS CloudTrail 에서 감사 이벤트를 수집하기 위해 특정 값이 필요한 매개변수를 설명합니다.
표 1. Amazon Kinesis 데이터 스트림을 위한 Amazon Web Services 로그 소스 매개변수 매개변수 설명 프로토콜 구성 프로토콜 구성 목록에서 Amazon Web Services를 선택하십시오. 인증 메소드 - 액세스 키 ID/비밀 키
- 어디서든 사용할 수 있는 표준 인증입니다.
- EC2 인스턴스 IAM 역할
- QRadar 관리 호스트가 AWS EC2 인스턴스에서 실행 중인 경우 이 옵션을 선택하면 인증을 위해 인스턴스에 지정된 메타데이터의 IAM 역할이 사용됩니다. 키가 필요하지 않습니다. 이 방법은 AWS EC2 컨테이너에서 실행 중인 관리 호스트의 경우에만 작동합니다.
액세스 키 AWS 사용자 계정에 대한 보안 신임 정보를 구성할 때 생성된 액세스 키 ID입니다.
액세스 키 ID/비밀키 또는 IAM 역할 가정을 선택한 경우 액세스 키 매개변수가 표시됩니다.
시크릿 키 AWS 사용자 계정에 대한 보안 신임 정보를 구성할 때 생성된 비밀 키입니다.
액세스 키 ID/비밀키 또는 IAM 역할 가정을 선택한 경우 비밀 키 매개변수가 표시됩니다.
IAM 역할 가정 액세스 키 또는 EC2 인스턴스 IAM 역할로 인증하려면 이 옵션을 사용으로 설정하십시오. 그런 다음 액세스를 위해 IAM 역할을 임시로 가정할 수 있습니다. 가정 역할 ARN 가정할 역할의 전체 ARN입니다. arn:
로 시작해야 하며 ARN내에 선행 또는 후행 공백 또는 공백을 포함할 수 없습니다.IAM 역할 가정을 사용으로 설정한 경우 역할 가정 ARN 매개변수가 표시됩니다.
역할 세션 이름 가정 가정할 역할의 세션 이름입니다. 기본값은 QRadarAWSSession입니다. 이를 변경할 필요가 없으면 기본값으로 두십시오. 이 매개변수에는 대소문자 영숫자 문자, 밑줄 또는 다음 문자만 사용할 수 있습니다. =,.@- IAM 역할 가정을 사용으로 설정한 경우 역할 가정 세션 이름 매개변수가 표시됩니다.
역할 외부 ID 가정 역할 외부 ID 가정 은 다른 계정의 역할을 가정하는 데 필요한 선택적 ID입니다.
역할이 속한 계정 관리자가 외부 ID를 제공하는 경우 역할 외부 ID 가정 매개변수에 해당 값을 삽입하십시오.
이 값은 문자열, 비밀번호 문구, GUID 또는 계정 번호일 수 있습니다. 자세한 정보는 AWS 문서 써드파티 액세스를 위해 외부 ID 사용을 참조하십시오.
지역 로그를 수집하려는 Amazon Web Service와 연관되는 각 지역을 전환하십시오. AWS 서비스 AWS 서비스 목록에서 Kinesis 데이터 스트림을 선택하십시오. Kinesis 데이터 스트림 데이터를 사용하는 Kinesis 데이터 스트림입니다.
Kinesis 고급 옵션 사용 다음 선택적 고급 구성 값을 사용으로 설정하십시오. 고급 옵션 값은 이 옵션이 선택된 경우에만 사용됩니다. 그렇지 않으면 기본값이 사용됩니다. - 스트림에서의 초기 위치
- 이 옵션은 새로 구성된 로그 소스에서 가져올 데이터를 제어합니다. 사용 가능한 최신 데이터를 가져오려면 최신을 선택하십시오. 사용 가능한 가장 오래된 데이터를 가져오려면 수평 정리를 선택하십시오.
- Kinesis 작업자 스레드 수
- Kinesis 데이터 스트림 처리를 위해 사용하는 작업자 스레드 수입니다. 각 작업자 스레드는 레코드 크기 및 시스템 로드에 따라 초당 대략적으로 10000 - 20000개 이벤트를 처리할 수 있습니다. 로그 소스가 스트림에서 새 데이터를 처리할 수 없으면 여기서 스레드 수를 최대 16까지 늘릴 수 있습니다. 허용되는 범위는 1 - 16입니다. 기본값은 2입니다.
- 체크포인트 간격
- 데이터 순서 번호를 체크포인트하는 간격(초)입니다. Kinesis 데이터 스트림의 샤드에 있는 각 레코드에는 순서 번호가 있습니다. 위치에 체크포인트를 수행하면 처리가 실패하거나 서비스가 다시 시작되는 경우 샤드가 동일한 위치에서 처리를 재개할 수 있습니다. 간격이 줄어들면 데이터 중복이 줄어들지만 Amazon Dynamo DB 사용량은 증가합니다. 허용되는 범위는 1 - 3600초입니다. 기본값은 10초입니다.
- Kinesis 애플리케이션
- 이 로그 소스가 Kinesis 데이터 스트림에서 사용 가능한 모든 샤드의 데이터를 이용하도록 하려면 이 옵션을 공백으로 두십시오. 여러 이벤트 프로세서에서 여러 로그 소스를 사용하여 손실이나 중복 없이 로그 소비를 확장하려면 해당 로그 소스에서 공통 Kinesis 애플리케이션을 사용하세요(예: ProdKinesisConsumers).
- 파티션
- 파티션 이름을 지정하여 Kinesis 데이터 스트림의 특정 파티션에서 데이터를 수집하려면 이 옵션을 선택하십시오.
원래 이벤트 추출 Kinesis 데이터 스트림에 추가된 원래 이벤트만 전달합니다.
Kinesis 로그는 수신한 이벤트를 추가 메타데이터로 랩핑합니다. Kinesis를 통하는 추가 스트림 메타데이터를 사용하지 않고 AWS에 전송된 원래 이벤트만 전달하려는 경우 이 옵션을 선택하십시오.
원래 이벤트는 Kinesis 로그에서 추출된 메시지 키 값입니다. 다음 Kinesis 로그 이벤트 예제에서는 Kinesis 로그에서 추출되는 원래 이벤트를 강조표시된 텍스트로 표시합니다.
{"owner":"123456789012","subscriptionFilters":["allEvents"], "logEvents":[{"id":"35093963143971327215510178578576502306458824699048362100", "message":"{\"eventVersion\":\"1.05\",\"userIdentity\":{\"type\":\"AssumedRole\", \"principalId\":\"ARO1GH58EM3ESYDW3XHP6:test_session\",\"arn\":\"arn:aws:sts::123456789012:assumed-role\/CVDevABRoleToBeAssumed\/test_visibility_session\", \"accountId\":\"123456789012\",\"accessKeyId\":\"ASIAXXXXXXXXXXXXXXXX\",\"sessionContext\":{\"sessionIssuer\":{\"type\":\"Role\",\"principalId\":\"AROAXXXXXXXXXXXXXXXXX\", \"arn\":\"arn:aws:iam::123456789012:role\/CVDevABRoleToBeAssumed\",\"accountId\":\"123456789012\", \"userName\":\"CVDevABRoleToBeAssumed\"},\"webIdFederationData\":{},\"attributes\":{\"mfaAuthenticated\":\"false\", \"creationDate\":\"2019-11-13T17:01:54Z\"}}},\"eventTime\":\"2019-11-13T17:43:18Z\",\"eventSource\":\"cloudtrail.amazonaws.com\", \"eventName\":\"DescribeTrails\",\"awsRegion\":\"ap-northeast-1\",\"sourceIPAddress\":\"192.0.2.1\",\"requestParameters\":null,\"responseElements\":null, \"requestID\":\"41e62e80-b15d-4e3f-9b7e-b309084dc092\",\"eventID\":\"904b3fda-8e48-46c0-a923-f1bb2b7a2f2a\",\"readOnly\":true,\"eventType\":\"AwsApiCall\", \"recipientAccountId\":\"123456789012\"}","timestamp":1573667733143}],"messageType":"DATA_MESSAGE","logGroup":"CloudTrail\/DefaultLogGroup","logStream":"123456789012_CloudTrail_us-east-2_2"}게이트웨이 로그 소스로 사용 수집된 이벤트가 QRadar 트래픽 분석 엔진을 통해 플로우되고 QRadar 가 하나 이상의 로그 소스를 자동으로 발견하도록 하려면 이 옵션을 선택하십시오.
이 옵션을 선택하면 로그 소스 ID 패턴 을 선택적으로 사용하여 처리 중인 이벤트에 대한 사용자 정의 로그 소스 ID 를 정의할 수 있습니다.
로그 소스 ID 패턴 게이트웨이 로그 소스로 사용을 선택한 경우, 처리 중인 이벤트에 대한 사용자 정의 로그 소스 ID를 정의하고 적용 가능한 경우 자동으로 발견되는 로그 소스에 대해 사용자 정의 로그 소스 ID를 정의할 수 있습니다. 로그 소스 ID 패턴을 구성하지 않으면 QRadar 는 알 수 없는 일반 로그 소스로 이벤트를 수신합니다.
키-값 쌍을 사용하여 사용자 정의 로그 소스 ID를 정의하십시오. 키는 ID 형식 문자열이며 이는 결과로 생성되는 소스 또는 오리진 값입니다. 값은 현재 페이로드를 평가하는 데 사용되는 연관된 정규식 패턴입니다. 이 값은 키를 추가로 사용자 정의하는 데 사용할 수 있는 캡처 그룹도 지원합니다.
새로운 행에 각각의 패턴을 입력하여 여러 키-값 쌍을 정의하십시오. 여러 패턴은 나열되는 순서대로 평가됩니다. 일치하는 내용을 발견하면 사용자 정의 로그 소스 ID가 표시됩니다.
다음 예제에서는 다중 키-값 쌍 함수를 보여줍니다.- 패턴
VPC=\sREJECT\sFAILURE$1=\s(REJECT)\sOKVPC-$1-$2=\s(ACCEPT)\s(OK)
- 이벤트
{LogStreamName: LogStreamTest,Timestamp: 0,Message: ACCEPT OK,IngestionTime: 0,EventId: 0}
- 결과로 생성되는 사용자 정의 로그 소스 ID
- VPC-ACCEPT-OK
예측 구문 분석 사용 이 매개변수를 사용으로 설정하면 알고리즘이 모든 이벤트에 대해 정규식을 실행하지 않고 이벤트에서 로그 소스 ID 패턴을 추출하여 구문 분석 속도를 높입니다. 팁: 드문 상황에서 알고리즘이 잘못된 예측을 할 수 있습니다. 높은 이벤트 비율을 수신할 것으로 예상되고 더 빠른 구문 분석이 필요한 로그 소스 유형에 대해서만 예측 구문 분석을 사용으로 설정하십시오.프록시 사용 QRadar 가 프록시를 사용하여 Amazon Web Service에 액세스하는 경우 이 옵션을 선택하십시오.
프록시에 인증이 필요한 경우 프록시 서버, 프록시 포트, 프록시 사용자 이름 및 프록시 비밀번호 필드를 구성하십시오.
프록시에 인증이 필요하지 않은 경우 프록시 IP 또는 호스트 이름 필드를 구성하십시오.
EPS 제한 QRadar 가 수집하는 초당 최대 이벤트 수입니다.
데이터 소스가 EPS 제한을 초과하면 데이터 콜렉션이 지연됩니다. 데이터는 여전히 수집된 후 데이터 소스가 EPS 제한을 초과하는 것을 중지할 때 수집됩니다.
기본값은 5000입니다.
- QRadar 가 올바르게 구성되었는지 확인하려면 다음 표를 검토하여 구문 분석된 이벤트 메시지의 예제를 확인하십시오.
실제 CloudTrail 로그는 Kinesis Data Streams JSON 페이로드에서 랩핑됩니다.
표 2. Amazon AWS CloudTrail DSM에서 지원되는 kinesis 데이터 스트림 샘플 메시지 이벤트 이름 하위 레벨 카테고리 샘플 로그 메시지 추적 설명 읽기 활동 시도 {"owner":"123456789012","subscriptionFilters":["allEvents"], "logEvents":[{"id":"35101382794889527301913782399021634305485606205478862909", "message":"{\"eventVersion\":\"1.05\",\"userIdentity\":{\"type\":\ "AssumedRole\",\"principalId\":\"AROA3GFMEP3ESYDW3XHP6: cloud_visibility_session\",\"arn\":\"arn:aws:sts::123456789012: assumed-role\/CVDevABRoleToBeAssumed\/cloud_visibility_session\", \"accountId\":\"123456789012\",\"accessKeyId\": \"ASIA3ABCDE3E6ZUV7IF5\",\"sessionContext\":{\"sessionIssuer\": {\"type\":\"Role\",\"principalId\":\"AROA3GABCD3ESYDW3XHP6\",\"arn\ ":\"arn:aws:iam::123456789012:role\/CVDevABRoleToBeAssumed\", \"accountId\":\"123456789012\"\"userName\":\ "CVDevABRoleToBeAssumed\"},\"webIdFederationData\":{},\ "attributes\":{\"mfaAuthenticated\":\"false\",\"creationDate\":\ "2019-11-17T13:34:07Z\"}}},\"eventTime\":\"2019-11-17T14:10:48Z\", \"eventSource\":\"cloudtrail.amazonaws.com\",\"eventName\":\ "DescribeTrails\",\"awsRegion\":\"ap-northeast-3\", \"sourceIPAddress\":\"192.0.2.1\",\"requestParameters\":null, \"responseElements\":null,\"requestID\":\ "31afb5b7-6857-467a-bce4-835ee7d02ad2\",\"eventID\": \"26caf544-010c-423a-88a1-ca71cbd243ca\",\"readOnly\" :true,\"eventType\":\"AwsApiCall\",\"recipientAccountId\":\ "123456789012\"}","timestamp":1574000441797}],"messageType": "DATA_MESSAGE","logGroup":"CloudTrail\/DefaultLogGroup", "logStream":"123456789012_CloudTrail_us-east-2"}