Akamai Log SIEM 포맷으로 정규화 방법

(Legacy SKU)

1. Akamai 포맷

CEF Header

CEF Field JSON Field / Value Description
Device Vendor Akamai
Device Version 1.0
Device Product akamai_siem
Device Event Class ID $eventClassId Calculated field.
Name $name Calculated field.
Severity $severity Calculated field.

CEF Extentions

CEF Extension JSON Field / Value Description
act $appliedAction 계산된 필드.
app $httpMessage.protocol
c6a2 $ipv6src 소스의 IPv6 주소. $attackData.clientIP가 IPv6 형식인 경우에만 채워짐.
c6a2Label Source IP6 Address
cs1 $attackData.rules 이 요청에서 트리거된 규칙의 Rule ID.
cs1Label $attackData.rules
cs2 $attackData.ruleMessages 이 요청에서 트리거된 규칙의 메시지.
cs2Label Rule Messages
cs3 $attackData.ruleData 이 요청에서 트리거된 규칙의 사용자 데이터.
cs3Label Rule Data
cs4 $attackData.ruleSelectors 이 요청에서 트리거된 규칙의 Selector.
cs4Label Rule Selectors
cs5 $attackData.clientReputation Client Reputation에 대한 클라이언트 IP 점수.
cs5Label Client Reputation
cs6 $attackData.apiId API Protection용 API ID.
cs6Label API ID
devicePayloadId $httpMessage.requestId 메시지의 전역 고유 ID.
dhost $httpMessage.host 수신 클라이언트 요청의 HOST 헤더 값.
dpt $httpMessage.port 수신 요청에 사용된 포트 번호. AK_IN_PORT 값과 동일해야 함.
flexString1 $attackData.configId 이 요청에 적용된 Security Configuration ID.
flexString1Label Security Config ID
flexString2 $attackData.policyId 이 요청에 적용된 Firewall Policy ID.
flexString2Label Firewall Policy Id
out $httpMessage.bytes 클라이언트 응답으로 제공된 콘텐츠 바이트 수.
request $requestURL 계산된 필드.
requestMethod $httpMessage.method 수신 요청의 HTTP 메서드.
src $attackData.clientIP 요청을 보낸 클라이언트의 IP 주소.
start $httpMessage.start 모니터링 중인 메시지 교환을 위해 Edge Server가 연결을 시작한 시간 (epoch 형식).
AkamaiSiemSlowPostAction $attackData.slowPostAction Slow POST 공격이 감지되었을 때 수행된 동작: W(경고) 또는 A(차단/중단).
AkamaiSiemSlowPostRate $attackData.slowPostRate 감지된 Slow POST 공격의 기록된 전송 속도.
AkamaiSiemRuleVersions $attackData.ruleVersions 이 요청에서 트리거된 규칙 버전의 Base64 인코딩 값.
AkamaiSiemRuleTags $attackData.ruleTags 이 요청에서 트리거된 규칙 태그의 Base64 인코딩 값.
AkamaiSiemApiKey $attackData.apiKey API Protection용 API Key.
AkamaiSiemTLSVersion $httpMessage.tls 적용되는 경우 TLS 버전.
AkamaiSiemRequestHeaders $httpMessage.requestHeaders 수집된 모든 요청 헤더.
AkamaiSiemResponseHeaders $httpMessage.responseHeaders 수집된 모든 응답 헤더.
AkamaiSiemResponseStatus $httpMessage.status 클라이언트에 전송된 HTTP 응답 상태 코드.
AkamaiSiemContinent $geo.continent 해당 IP 주소가 매핑되는 대륙의 2자리 코드.
AkamaiSiemCountry $geo.country 해당 IP 주소가 매핑되는 국가의 ISO-3166 2자리 코드.
AkamaiSiemCity $geo.city 해당 IP 주소가 매핑되는 도시.
AkamaiSiemRegion $geo.regionCode 해당 IP 주소가 매핑되는 주/도/지역의 ISO-3166 2자리 코드.
AkamaiSiemASN $geo.asn 해당 IP 주소가 속한 자율 시스템 번호(ASN).
AkamaiSiemUuid $userRiskData.uuid 위험 점수 데이터가 제공되는 사용자의 고유 식별자.
AkamaiSiemUsername $userRiskData.username 암호화되지 않은 사용자 이름 값.
AkamaiSiemEmailDomain $userRiskData.emailDomain 사용자의 이메일 주소에서 추출된 도메인 이름.
AkamaiSiemStatus $userRiskData.status 위험 점수 계산 중 발생한 오류를 나타내는 상태 코드.
AkamaiSiemScore $userRiskData.score 계산된 위험 점수. 점수 범위는 0(위험 없음)부터 100(최고 위험)까지.
AkamaiSiemRisk $userRiskData.risk 계산된 위험 점수를 증가시킨 지표.
AkamaiSiemTrust $userRiskData.trust 신뢰된 지표.
AkamaiSiemGeneral $userRiskData.general 관련 속성에 대해 관찰된 일반 행동 지표.
AkamaiSiemAllow $userRiskData.allow 사용자가 허용 목록에 있는지 여부 (0=없음, 1=있음).
AkamaiAppBundleId $clientData.appBundleId 앱 번들의 고유 식별자. 앱 번들은 소프트웨어와 관련 구성 정보를 포함함.
AkamaiAppVersion $clientData.appVersion 앱 버전 번호.
AkamaiTelemetryType $clientData.telemetryType 사용 중인 텔레메트리 유형을 지정 (0=웹 표준, 1=웹 인라인, 2=네이티브 앱 SDK).
AkamaiBotScore $botData.botScore Bot Manager가 요청에 부여한 점수.
AkamaiResponseSegment $botData.responseSegment 숫자형 응답 세그먼트 값 (0=Human, 1=Cautious, 2=Strict, 3=Aggressive, 4=Safeguard).
AkamaiSiemCustomData $custom 사용자 정의 Base64 인코딩 값 (최대 2KB).
AkamaiSiemJA4 $identity.ja4 JA4 클라이언트 TLS 지문.
AkamaiSiemAKTLSFPv2 $identity.tlsFingerprintV2 클라이언트 TLS 지문 V2.
AkamaiSiemAKTLSFPv3 $identity.tlsFingerprintV3 클라이언트 TLS 지문 V3.
AkamaiSiemRuleActions $attackData.ruleActions 이 요청에서 트리거된 규칙의 동작.

2. Datadog Cloud SIEM으로 변환 포맷


1) 필수값 세트

A. 이벤트 메타

Akamai CEF (원본 키) 의미 SIEM 정규화 추천 필드
CEF Header Severity detect=5 / mitigate=10 event.severity
CEF Header Device Event Class ID (detect/mitigate) 탐지/차단 구분 축 event.outcome 또는 event.type
act appliedAction (monitor/alert/…) event.action
start 요청 시작 epoch time @timestamp

B. HTTP / 네트워크 코어 (분석/룰의 뼈대)

Akamai CEF (원본 키) 의미 SIEM 정규화 추천 필드
src (또는 IPv6면 c6a2) 클라이언트 IP network.client.ip
dhost 목적지 호스트 network.destination.domain
dpt 목적지 포트 network.destination.port
requestMethod HTTP method http.method
request URL(계산 필드) http.url
AkamaiSiemResponseStatus HTTP status code http.status_code

C. 탐지 컨텍스트

Akamai CEF (원본 키) 의미 SIEM 정규화 추천 필드
cs1 rules (rule IDs) rule.id (배열 권장)
cs2 ruleMessages rule.name 또는 rule.message
AkamaiSiemRuleTags rule tags rule.category 또는 rule.tags
flexString1 Security Config Id akamai.security_config_id
flexString2 Firewall Policy Id akamai.firewall_policy_id

2) 필수는 아니지만 강력 추천(있으면 분석 품질 급상승)

A. 트래픽/성능·코리레이션 보강

Akamai CEF (원본 키) 의미 SIEM 정규화 추천 필드
devicePayloadId requestId http.request.id
out response bytes http.response.bytes
app protocol(h2/h3 등) network.application
cs6 API ID (API Protection) api.id 또는 akamai.api_id
AkamaiSiemRuleActions ruleActions rule.actions

B. Geo/ASN (위협 인텔/탐지에 도움)

Akamai CEF (원본 키) 의미 SIEM 정규화 추천 필드
AkamaiSiemContinent 대륙 geo.continent
AkamaiSiemCountry 국가 geo.country
AkamaiSiemCity 도시 geo.city
AkamaiSiemASN ASN network.client.asn

C. TLS/Fingerprint (봇/자동화 탐지에 매우 유용)

Akamai CEF (원본 키) 의미 SIEM 정규화 추천 필드
AkamaiSiemTLSVersion TLS version tls.version
AkamaiSiemJA4 JA4 fingerprint tls.ja4
AkamaiSiemAKTLSFPv2 TLS FP v2 tls.fingerprint.v2
AkamaiSiemAKTLSFPv3 TLS FP v3 tls.fingerprint.v3

D. 룰 상세(디버깅/포렌식에 도움)

Akamai CEF (원본 키) 의미 SIEM 정규화 추천 필드
cs3 ruleData rule.data
cs4 ruleSelectors rule.selector
cs5 clientReputation client.reputation

3) 비필수 + 대부분은 “드롭/마스킹” 권장

Akamai CEF (원본 키) 이유 권장 처리
AkamaiSiemRequestHeaders 멀티라인/초장문/이스케이프로 파싱 깨짐 + 민감정보(쿠키/토큰) 포함 드롭 또는 allowlist 추출(User-Agent/Referer/Origin 정도만) + 토큰/쿠키 마스킹
AkamaiSiemResponseHeaders 멀티라인/초장문 필요 시 일부만 추출(Content-Type 등)
AkamaiSiemCustomData(base64) 값 크고 SIEM 분석에 직접 쓸 일 적음