Kunskapsbank

Azure Activity Log – spåren efter förändringar i molnmiljön

I Azure uppstår många säkerhetsproblem genom konfiguration snarare än genom en klassisk programvarubugg. Behörigheter, nätverk, lagring och hemligheter måste därför granskas som en sammanhängande modell.

Ämnesspecifik teknisk illustration för artikeln Azure Activity Log – spåren efter förändringar i molnmiljön

Här går jag igenom området ur ett praktiskt Microsoft- och säkerhetsperspektiv, med fokus på vilken evidens man behöver, hur en förändring påverkar miljön och hur resultatet kan verifieras.

Varför detta spelar roll

I Azure uppstår många säkerhetsproblem genom konfiguration snarare än genom en klassisk programvarubugg. Behörigheter, nätverk, lagring och hemligheter måste därför granskas som en sammanhängande modell.

Teknisk modell

Jag tittar på identitet/RBAC, nätverksexponering, dataåtkomst, secrets och loggning. Activity Log och resurskonfiguration ger olika delar av bilden.

Minsta privilegium
Det här avgränsar vilken tillgång, datakälla eller konfiguration som ska undersökas först. Med ett tydligt scope blir det lättare att skilja relevant evidens från närliggande brus.

Nätverks-/resurskonfiguration
Nästa fråga är vilken påverkan observationen har på miljön och vilka beroenden som berörs. Innan en förändring görs behöver man förstå blast radius och vilken ytterligare evidens som krävs.

Loggning och verifiering
Här kopplas observationen till ett konkret tekniskt arbetsmoment. Beroende på miljö kan det innebära en portal, query, API, CLI eller loggkälla, men steget ska vara reproducerbart och möjligt att granska.

Praktiskt arbetsflöde

  1. Inventera resurs och ägare.
  2. Kontrollera RBAC och privilegier.
  3. Granska nätverksregler och publik exponering.
  4. Kontrollera storage/secrets och åtkomstmetod.
  5. Säkerställ relevant logging.
  6. Gör förändringen minimalt och verifiera resultat.

Konkret exempel

Vid en policyförändring försöker jag arbeta med en begränsad scope först. En Conditional Access- eller RBAC-förändring bör exempelvis ha en tydlig testgrupp, dokumenterad nuvarande konfiguration och ett förväntat resultat.

Ett eftertest kan bestå av både en legitim användare som fortfarande ska få åtkomst och ett scenario som nu ska blockeras. På så sätt verifierar man både säkerhetseffekten och att förändringen inte skapade ett onödigt driftproblem.

Vad jag vill kunna verifiera

Efter en cloud-förändring behöver man kontrollera både resursens konfiguration och den faktiska åtkomsten. En policy kan se korrekt ut utan att det validerar hela dataflödet.

Man kan använda följande kontrollfrågor:

  • Vilken rådata eller konfiguration stödjer slutsatsen?
  • Vilket resultat förväntas efter en förändring?
  • Finns ett negativt test som visar att en förbjuden väg verkligen är stängd?
  • Kan man återgå säkert om förändringen ger en oväntad sidoeffekt?

Vanliga fallgropar

  • För breda RBAC-roller.
  • Publik exponering som lämnas kvar efter test.
  • Secrets i kod eller config.
  • Avsaknad av Activity Log/diagnostic data.

Koppling till yrkesrollen

För mig är värdet i ämnet att det går att koppla till ett verkligt analyst- eller engineeringflöde. Man behöver kunna förklara varför kontrollen finns, vad som ska mätas och hur resultatet verifieras.

Frågor jag tar med till en verklig miljö

När jag lämnar labbet och tänker på en riktig verksamhet försöker jag alltid ställa några kontrollfrågor innan samma metod används skarpt:

  • Vilken tillgång eller affärsprocess påverkas om kontrollen fungerar fel?
  • Vilken person eller funktion äger systemet och kan bekräfta legitimt beteende?
  • Vilken telemetry finns redan, och vilken datakälla saknas för att slutsatsen ska bli tillräckligt stark?
  • Vilken del kan testas i begränsad scope innan förändringen breddas?
  • Hur dokumenteras expected result, efterkontroll och rollback så att nästa tekniker kan förstå vad som gjordes?

Sammanfattning

Azure Activity Log – spåren efter förändringar i molnmiljön handlar för mig ytterst om att göra säkerhetsarbetet begripligt och verifierbart. Man får ett bättre resultat när analysten kan gå från observation till evidens, från evidens till avgränsad åtgärd och från åtgärd till ett kontrollerat eftertest.