Azion 방화벽 로그 수집
다음에서 지원:
Google SecOps
SIEM
개요
이 파서는 Azion 방화벽 JSON 로그에서 필드를 추출하고, 데이터 유형 변환 및 보강 (예: 사용자 에이전트 파싱)을 실행하고, 추출된 필드를 UDM에 매핑합니다. 이는 사용자 및 대상 머신의 존재 여부에 따라 NETWORK_HTTP, SCAN_UNCATEGORIZED 또는 GENERIC_EVENT 이벤트를 생성합니다. 또한 WAF 관련 필드와 작업을 처리하여 UDM 보안 결과 필드에 매핑합니다.
시작하기 전에
- Google SecOps 인스턴스가 있는지 확인합니다.
- AWS IAM 및 S3에 대한 액세스 권한이 있는지 확인합니다.
- 활성 Azion 계정에 대한 액세스 권한이 있어야 합니다.
Amazon S3 버킷 구성
- 버킷 만들기 사용자 가이드에 따라 Amazon S3 버킷을 만듭니다.
- 나중에 참고할 수 있도록 버킷 이름과 리전을 저장합니다.
- IAM 사용자 만들기 사용자 가이드에 따라 사용자를 만듭니다.
- 만든 사용자를 선택합니다.
- 보안 사용자 인증 정보 탭을 선택합니다.
- 액세스 키 섹션에서 액세스 키 만들기를 클릭합니다.
- 사용 사례로 서드 파티 서비스를 선택합니다.
- 다음을 클릭합니다.
- 선택사항: 설명 태그를 추가합니다.
- 액세스 키 만들기를 클릭합니다.
- .csv 파일 다운로드를 클릭합니다. 나중에 참고할 수 있도록 액세스 키 및 보안 비밀 액세스 키를 저장합니다.
- 완료를 클릭합니다.
- 권한 탭을 선택합니다.
- 권한 정책 섹션에서 권한 추가를 클릭합니다.
- 권한 추가를 선택합니다.
- Attach policies directly(정책 직접 연결)를 선택합니다.
- AmazonS3FullAccess 정책을 검색합니다.
- 정책을 선택합니다.
- 다음을 클릭합니다.
- 권한 추가를 클릭합니다.
Amazon S3에 대한 연속 로그 전송을 위해 Azion 구성
- Azion 콘솔에서 DataStream 섹션으로 이동합니다.
- + 스트림을 클릭합니다.
- 다음 매개변수의 값을 지정합니다.
- 이름: 데이터 스트림을 식별할 수 있는 고유하고 설명적인 이름을 입력합니다.
- 소스: 데이터를 수집할 소스를 선택합니다.
- 템플릿: 특정 소스의 사전 설정된 변수 또는 변수를 선택할 수 있는 개방형 템플릿입니다. 도메인을 필터링할 수 있습니다.
- Destination(대상) 섹션에서 Connector(커넥터) > Simple Storage Service(S3)(간단한 스토리지 서비스(S3))를 클릭합니다.
- URL: 버킷 URI입니다.
s3:/BUCKET_NAME
다음을 바꿉니다.BUCKET_NAME
: 버킷의 이름입니다.
- 버킷 이름: 객체가 전송될 버킷의 이름입니다.
- 리전: 버킷이 있는 리전입니다.
- 액세스 키: S3 버킷에 대한 액세스 권한이 있는 사용자 액세스 키입니다.
- 보안 비밀 키: S3 버킷에 액세스할 수 있는 사용자 보안 비밀 키입니다.
- Content Type(콘텐츠 유형): 일반 텍스트를 선택합니다.
- URL: 버킷 URI입니다.
- 저장을 클릭합니다.
자세한 내용은 Amazon S3를 사용하여 데이터 스트림에서 데이터를 수신하는 방법을 참고하세요.
Azion 로그를 수집하도록 Google SecOps에서 피드 구성
- SIEM 설정 > 피드로 이동합니다.
- 새로 추가를 클릭합니다.
- 피드 이름 필드에 피드 이름을 입력합니다 (예: Azion Logs).
- 소스 유형으로 Amazon S3를 선택합니다.
- 로그 유형으로 Azion을 선택합니다.
- 다음을 클릭합니다.
- 다음 입력 매개변수의 값을 지정합니다.
- 리전: Amazon S3 버킷이 있는 리전입니다.
- S3 URI: 버킷 URI입니다.
s3:/BUCKET_NAME
다음을 바꿉니다.BUCKET_NAME
: 버킷의 이름입니다.
- URI는: 로그 스트림 구성 (단일 파일 | 디렉터리 | 하위 디렉터리가 포함된 디렉터리)에 따라 URI 유형을 선택합니다.
- 소스 삭제 옵션: 원하는 삭제 옵션을 선택합니다.
- 액세스 키 ID: S3 버킷에 대한 액세스 권한이 있는 사용자 액세스 키입니다.
- 보안 비밀 액세스 키: S3 버킷에 액세스할 수 있는 사용자 보안 비밀 키입니다.
- 애셋 네임스페이스: 애셋 네임스페이스입니다.
- 수집 라벨: 이 피드의 이벤트에 적용할 라벨입니다.
- 다음을 클릭합니다.
- 확정 화면에서 새 피드 구성을 검토한 다음 제출을 클릭합니다.
UDM 매핑 표
로그 필드 | UDM 매핑 | 논리 |
---|---|---|
asn |
read_only_udm.network.asn |
asn 필드에서 직접 매핑됩니다. |
bytes_sent |
read_only_udm.network.sent_bytes |
bytes_sent 필드에서 직접 매핑되며 부호 없는 정수로 변환됩니다. |
country |
read_only_udm.principal.location.country_or_region |
country 필드에서 직접 매핑됩니다. |
host |
read_only_udm.principal.hostname |
host 필드에서 직접 매핑됩니다. |
http_referer |
read_only_udm.network.http.referral_url |
http_referer 필드에서 직접 매핑됩니다. |
http_user_agent |
read_only_udm.network.http.user_agent |
http_user_agent 필드에서 직접 매핑됩니다. |
http_user_agent |
read_only_udm.network.http.parsed_user_agent |
parseduseragent 필터를 사용하여 http_user_agent 필드에서 파싱됩니다. |
read_only_udm.event_type |
principal 및 target 정보의 존재 여부에 따라 파서에서 결정합니다. NETWORK_HTTP, SCAN_UNCATEGORIZED 또는 GENERIC_EVENT일 수 있습니다. |
|
read_only_udm.metadata.product_name |
'AZION'으로 하드코딩됩니다. | |
read_only_udm.metadata.vendor_name |
'AZION'으로 하드코딩됩니다. | |
read_only_udm.metadata.product_version |
'AZION'으로 하드코딩됩니다. | |
remote_addr |
read_only_udm.principal.ip |
remote_addr 필드에서 직접 매핑됩니다. |
remote_port |
read_only_udm.principal.port |
remote_port 필드에서 직접 매핑되고 정수로 변환됩니다. |
requestPath |
read_only_udm.target.url |
request_uri 가 없는 경우 requestPath 필드에서 직접 매핑됩니다. |
request_method |
read_only_udm.network.http.method |
request_method 필드에서 직접 매핑되며 대문자로 변환됩니다. |
request_time |
read_only_udm.additional.fields |
키가 "request_time"이고 값이 request_time 필드인 키-값 쌍으로 additional.fields 배열에 추가되었습니다. |
request_uri |
read_only_udm.target.url |
있는 경우 request_uri 필드에서 직접 매핑됩니다. |
server_addr |
read_only_udm.target.ip |
server_addr 필드에서 직접 매핑됩니다. |
server_port |
read_only_udm.target.port |
server_port 필드에서 직접 매핑되고 정수로 변환됩니다. |
ssl_cipher |
read_only_udm.network.tls.cipher |
ssl_cipher 필드에서 직접 매핑됩니다. |
ssl_protocol |
read_only_udm.network.tls.version_protocol |
ssl_protocol 필드에서 직접 매핑됩니다. |
ssl_server_name |
read_only_udm.network.tls.client.server_name |
ssl_server_name 필드에서 직접 매핑됩니다. |
state |
read_only_udm.principal.location.state |
state 필드에서 직접 매핑됩니다. |
status |
read_only_udm.network.http.response_code |
status 필드에서 직접 매핑되고 정수로 변환됩니다. |
time |
read_only_udm.metadata.event_timestamp |
날짜 필터와 여러 날짜 형식을 사용하여 time 필드에서 파싱됩니다. |
upstream_addr |
read_only_udm.intermediary.ip , read_only_udm.intermediary.port |
grok를 사용하여 upstream_addr 필드에서 추출하고 IP와 포트로 분할합니다. |
upstream_status |
read_only_udm.additional.fields |
additional.fields 배열에 키-값 쌍으로 추가되었으며 키는 "upstream_status"이고 값은 upstream_status 필드의 값입니다. |
waf_args |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_attack_action |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_attack_family |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_headers |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_learning |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_match |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_score |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_server |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_total_blocked |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_total_processed |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
waf_uri |
read_only_udm.security_result.detection_fields |
security_result.detection_fields 배열에 키-값 쌍으로 추가되었습니다. |
read_only_udm.security_result.action |
waf_block 또는 blocked 필드를 기반으로 파서에서 결정합니다. 허용 또는 차단으로 설정합니다. |
변경사항
2023-09-30
- 파서를 새로 만들었습니다.