CloudTrail Insights och loggfilsintegritet
Aktivera CloudTrail Insights för att upptäcka ovanlig API-aktivitet och använd sammanfattningsfiler för att verifiera loggfilsintegriteten i kriminaltekniska syften.
CloudTrail Insights och loggfilsintegritet är en gratis lektion i Cloud & IT Cert Prep på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Cloud & IT Cert Prep, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Cloud & IT Cert Prep innehåller totalt 4 lektioner.
Vad är CloudTrail Insights?
CloudTrail Insights är en valfri funktion som använder maskininlärning för att automatiskt upptäcka ovanlig API-aktivitet i Ert AWS-konto. Den fastställer en baslinje för normala API-anropsfrekvenser och volymer av skrivande administrationshändelser för varje API och aviserar Er när aktiviteten avviker betydligt från baslinjen. Insights-händelser levereras till samma S3-bucket som Era trail-loggar och kan även utlösa EventBridge-regler för automatiserade åtgärder.
Aktivera CloudTrail Insights
CloudTrail Insights aktiveras per spår. Ni kan välja att upptäcka avvikelser i API-anropsfrekvens (ett ovanligt antal skrivande administrationshändelser per sekund) eller avvikelser i API-felfrekvens (ett ovanligt antal fel på grund av nekad åtkomst eller begränsning). Insights kräver ett aktivt spår där administrationshändelser är aktiverade. AWS tar ut avgifter för Insights-händelser utöver de vanliga avgifterna för spårhändelser. Insights behöver 24–36 timmar för att fastställa en första baslinje innan funktionen kan börja upptäcka avvikelser.
# Enable CloudTrail Insights for API call rate and error rate anomalies
aws cloudtrail put-insight-selectors \
--trail-name OrgAuditTrail \
--insight-selectors \
InsightType=ApiCallRateInsight \
InsightType=ApiErrorRateInsight
# Verify insights configuration
aws cloudtrail get-insight-selectors \
--trail-name OrgAuditTrailFörstå Insights-händelser
En Insights-händelse har en starthändelse och en sluthändelse. Starthändelsen utlöses när avvikelsen börjar — till exempel vid en ovanlig ökning av anrop till TerminateInstances — och sluthändelsen utlöses när API-anropsfrekvensen återgår till det normala. Varje Insights-händelse innehåller det berörda API:et, den normala baslinjefrekvensen, den uppmätta toppfrekvensen och varaktigheten. Det hjälper Er att avgöra om en avvikelse var en ihållande attack eller en kortvarig ökning.
# Search for Insights events in the last 30 days
aws cloudtrail lookup-events \
--lookup-attributes AttributeKey=EventCategory,AttributeValue=insight \
--start-time $(date -u -d '30 days ago' +%Y-%m-%dT%H:%M:%SZ) \
--query 'Events[].{Time:EventTime,Name:EventName,Source:EventSource}' \
--output tableVad Insights upptäcker i praktiken
Vanliga avvikelser som CloudTrail Insights flaggar är bland annat ett intrång i autentiseringsuppgifter där en angripare använder stulna nycklar för att snabbt räkna upp alla S3-buckets, ett felkonfigurerat distributionsskript som körs i en loop och anropar EC2-API:et tusentals gånger, ett insiderhot där resurser tas bort snabbare än normalt eller en försörjningskedjeattack där en Lambda-funktion plötsligt gör ovanliga STS-anrop. Insights ger ett snabbare upptäcktsfönster än manuell granskning av CloudTrail-loggar.
EventBridge-integrering för automatiserade åtgärder
CloudTrail Insights-händelser levereras automatiskt till Amazon EventBridge, vilket möjliggör automatiserade åtgärder. Ni kan skapa en EventBridge-regel som utlöser en Lambda-funktion när en Insights-händelse upptäcks — till exempel för att skicka ett Slack-meddelande, skapa ett Jira-ärende eller till och med automatiskt återkalla IAM-användarens åtkomstnycklar om avvikelsen stämmer överens med ett känt attackmönster. På så sätt skapas en säkerhetsautomatiseringspipeline i realtid kring Insights-resultat.
# EventBridge rule to trigger Lambda when a CloudTrail Insights event fires
aws events put-rule \
--name CloudTrailInsightsAlert \
--event-pattern '{
"source": ["aws.cloudtrail"],
"detail-type": ["AWS Insight via CloudTrail"]
}' \
--state ENABLED
# Add Lambda as the target
aws events put-targets \
--rule CloudTrailInsightsAlert \
--targets Id=LambdaTarget,Arn=arn:aws:lambda:us-east-1:111122223333:function:SecurityResponderValidering av loggfilsintegritet
Validering av loggfilsintegritet säkerställer att CloudTrail-loggfiler inte har ändrats, tagits bort eller förfalskats efter leveransen till S3. När funktionen är aktiverad (via --enable-log-file-validation) skapar CloudTrail varje timme en digest-fil som innehåller SHA-256-hasharna för alla loggfiler som levererats under den timmen samt hashen för föregående digest. Själva digest-filen signeras med CloudTrails privata nyckel. Ni kan validera loggar med AWS CLI:s validate-logs-kommando.
# Enable log file validation when creating or updating a trail
aws cloudtrail update-trail \
--name OrgAuditTrail \
--enable-log-file-validation
# Validate log file integrity for a specific time range
aws cloudtrail validate-logs \
--trail-arn arn:aws:cloudtrail:us-east-1:111122223333:trail/OrgAuditTrail \
--start-time 2024-01-01T00:00:00Z \
--end-time 2024-01-02T00:00:00Z \
--verboseSå fungerar digest-filer
Varje timme levererar CloudTrail en digest-fil till S3 på en sökväg som skiljer sig från loggfilerna (s3://bucket/CloudTrail-Digest/...). Digest-filen innehåller SHA-256-hashen för varje loggfil som levererats under den senaste timmen, S3-URI:n till varje fil och en hash för föregående digest (vilket skapar en hashkedja). Om en angripare ändrar en loggfil efter leveransen stämmer hashen i digest-filen inte längre överens — valideringen misslyckas och visar vilka filer som har manipulerats.
# View the structure of a CloudTrail digest file (JSON)
# {
# "digestStartTime": "2024-01-01T00:00:00Z",
# "digestEndTime": "2024-01-01T01:00:00Z",
# "logFiles": [
# {
# "s3Bucket": "my-cloudtrail-logs",
# "s3Object": "AWSLogs/.../CloudTrail/.../2024/01/01/file.json.gz",
# "hashValue": "sha256:abc123...",
# "hashAlgorithm": "SHA-256"
# }
# ],
# "previousDigestHashValue": "sha256:xyz789..."
# }Skydda granskningsspåret mot manipulering
Loggfilsintegritet är bara användbar om digest-filerna och själva loggfilerna skyddas. Bästa praxis är att aktivera S3 MFA Delete för CloudTrail-bucketen så att filer inte kan tas bort utan MFA, tillämpa en bucket-policy som nekar borttagning för att förhindra att någon principal tar bort objekt, aktivera S3 Object Lock (Compliance-läge) för oföränderlig logglagring och använda ett organisationsspår så att medlemskonton inte kan inaktivera loggning. Tillsammans gör dessa kontroller det nästan omöjligt för en insider att radera granskningsbevis.
# Deny-delete policy on the CloudTrail S3 bucket
# {
# "Sid": "DenyDeleteCloudTrailLogs",
# "Effect": "Deny",
# "Principal": {"AWS": "*"},
# "Action": [
# "s3:DeleteObject",
# "s3:DeleteObjectVersion"
# ],
# "Resource": "arn:aws:s3:::my-cloudtrail-logs-111122223333/*"
# }Insights jämfört med GuardDuty: kompletterande tjänster
CloudTrail Insights och Amazon GuardDuty kompletterar varandra och är inte dubbletter. Insights fokuserar på avvikelser i API-anropsvolym — plötsliga ökningar av specifika administrations-API-anrop. GuardDuty analyserar en bredare uppsättning datakällor, däribland CloudTrail-händelser, VPC Flow Logs och DNS-loggar, för att upptäcka hotmönster som komprometterade autentiseringsuppgifter, kryptoutvinning, dataexfiltrering och kända skadliga IP-adresser. För försvar i flera lager bör Ni aktivera båda — Insights för volymbaserade avvikelser och GuardDuty för upptäckt baserad på hotinformation.
Visa Insights i CloudTrail-konsolen
I CloudTrail-konsolen visar fliken Insights alla upptäckta avvikelser med start- och sluttider, API-namnet och ett diagram som jämför baslinjefrekvensen med den uppmätta frekvensen under avvikelsen. När Ni klickar på en Insights-händelse länkas Ni direkt till de relaterade administrationshändelserna i Event History för samma tidsintervall. Det hjälper Er att koppla samman ”det fanns en avvikelse” med ”här är de specifika API-anrop som orsakade den”. Denna möjlighet att gå ner på detaljnivå gör Insights användbart i praktiken.
Användningsområden för efterlevnad
Validering av loggfilsintegritet krävs av flera ramverk för efterlevnad: PCI-DSS kräver bevis på att granskningsloggar inte har ändrats, HIPAA kräver manipuleringssäkra granskningskontroller för hälsodata och SOC 2 kräver integritetskontroller för säkerhetsloggar. Kombinationen av CloudTrail-loggverifiering, S3 Object Lock och organisationsspår uppfyller dessa krav och nämns ofta i AWS-dokumentation om efterlevnad. När provfrågor nämner att Ni ska ”bevisa att loggarna inte har manipulerats” är validering av loggfilsintegritet svaret.
Snabb kontroll
Testa Er förståelse av AWS Solutions Architect-koncepten (SAA-C03) från den här lektionen.
Sammanfattning av lektionen
I den här lektionen lärde Ni Er att: CloudTrail Insights använder ML för att upptäcka avvikelser i API-anrops- och felfrekvenser med start- och sluthändelser, validering av loggfilsintegritet använder SHA-256-digest-filer i en hashkedja för att upptäcka manipulering eller borttagning av loggfiler, och S3 Object Lock i kombination med policyer som nekar borttagning skyddar granskningsspårets integritet. Härnäst går vi igenom AWS Config-regler och automatiserad åtgärd.
Lär dig Cloud & IT Cert Prep med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 150
- Lektioner
- 600
Vanliga frågor
Är lektionen ”CloudTrail Insights och loggfilsintegritet” gratis?
Ja – hela texten till ”CloudTrail Insights och loggfilsintegritet” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Cloud & IT Cert Prep, kan Ni uppgradera till CoddyKit PRO. Kursen i Cloud & IT Cert Prep innehåller totalt 4 lektioner.
Vad lär jag mig i ”CloudTrail Insights och loggfilsintegritet”?
Aktivera CloudTrail Insights för att upptäcka ovanlig API-aktivitet och använd sammanfattningsfiler för att verifiera loggfilsintegriteten i kriminaltekniska syften. Ni övar på Cloud & IT Cert Prep med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Cloud & IT Cert Prep?
Du behöver inga förkunskaper. Utbildningen i Cloud & IT Cert Prep på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.
Hur lång tid tar lektionen ”CloudTrail Insights och loggfilsintegritet”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Cloud & IT Cert Prep-lektionen?
Ja. Varje Cloud & IT Cert Prep-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- CloudTrail-spår och händelsehistorik
- CloudTrail Insights och loggfilsintegritet
- AWS Config-regler och åtgärder
- Conformance Packs och organisationsspår