Belajar Cloud Security Engineer - Identity Threats (AAD/Entra)
Episode 19 of 28

Belajar Cloud Security Engineer - Identity Threats (AAD/Entra)

Mengamankan identitas Microsoft 365 dan Azure: teknik serangan modern terhadap Entra ID mulai dari AiTM phishing yang melewati MFA lama, consent phishing, hingga token theft, lalu pertahannya dengan conditional access, MFA phishing-resistant, PIM, dan identity protection berbasis risiko

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 18 kita melihat attack path dan red team cloud, sekarang kita fokus ke target favorit penyerang enterprise: identitas Microsoft. Entra ID (dulu Azure AD) adalah kunci kerajaan di banyak organisasi — satu akun global admin membuka Azure, Microsoft 365, Teams, email, dan sering kali federasi ke cloud lain.

Mengapa episode ini penting? Karena mayoritas breach enterprise modern dimulai dari identitas, bukan malware: phishing AiTM yang mencuri sesi pasca-MFA, consent phishing yang menyerahkan akses aplikasi pihak ketiga, atau token yang dicuri dari browser. Kabar baiknya: Entra menyediakan senjata pertahanan kelas enterprise bawaan — conditional access, PIM, identity protection — yang sayangnya sering tidak aktif.

Anatomi Serangan Identitas Modern

Empat pola serangan yang wajib kalian kenali:

AiTM Phishing: Melewati MFA Lama

Teknik ini menjelaskan kenapa "kita sudah pakai MFA" bukan lagi jawaban. Rantainya:

  1. Korban menerima email tiruan login Microsoft.
  2. Situs phishing adalah reverse proxy nyata: korban login asli, MFA push dikirim dan disetujui korban sendiri.
  3. Proxy mencuri cookie sesi hasil login sah itu.
  4. Penyerang memakai cookie tersebut — tanpa perlu password maupun MFA.

MFA OTP/push tradisional gagal karena verifikasinya tetap berhasil dilakukan oleh korban. Pertahanannya bukan lebih banyak MFA — melainkan MFA phishing-resistant (FIDO2/passkey) yang mengikat verifikasi ke domain asli, plus token binding.

Penyerang membuat aplikasi OAuth palsu ("PDF Reader Pro") dan mengelabui user meng-klik "Accept" untuk izin seperti Mail.Read atau Files.ReadWrite.All. Tidak ada credential yang dicuri — user sendiri memberi izin. Audit aplikasi enterprise dan blokir consent ke app tak terverifikasi adalah pertahanannya.

Token Theft dan Replay

Token akses/refresh dicuri dari device terkompromi (infostealer), lalu diputar ulang dari lokasi lain. Deteksinya lewat sinyal perilaku: lokasi baru + device tidak terdaftar + pola jam aneh. Pertahanan: conditional access berisiko + continuous access evaluation yang merevoke token saat kondisi berubah.

Password Spray

Coba satu password lemah terhadap ribuan akun (kebalikan brute-force satu akun). Terbang di bawah threshold lockout. Deteksi: volume kegagalan lintas-akun dari IP/ASN tunggal — identity protection punya deteksi bawaannya.

Conditional Access: Kebijakan Inti

Conditional Access (CA) adalah mesin keputusan: Users + Apps + Conditions → Grant/Session controls. Baseline organisasi yang sehat:

#KebijakanAturan
1Admin wajib MFA kuatRole sensitif → require FIDO2/passkey
2Semua user MFALogin semua app → require authentication strength
3Blokir legacy authProtokol POP/IMAP/SMTP basic auth = block
4Risiko tinggi diblokirSign-in risk high → block; user risk high → require password change + MFA
5Device complianceAkses data sensitif → require compliant/hybrid joined device

Contoh implementasi kebijakan nomor 3 via Graph API (bisa diaudit sebagai kode):

Daftar CA policy via Microsoft Graph
az rest --method GET \
  --url "https://graph.microsoft.com/v1.0/identity/conditionalAccess/policies" \
  --query "value[].{name:displayName,state,state2:state,grant:grantControls.builtInControls}"

Aturan legacy auth bisa juga ditegakkan cepat lewat CA klasik "block legacy authentication". Kenapa penting? Karena IMAP/SMTP basic auth tidak mendukung MFA sama sekali — pintu samping permanen.

Important

Selalu sediakan dua akun break-glass yang dikecualikan dari SEMUA CA policy, dipantau alert real-time, dan kredensialnya disimpan offline. Tanpa itu, satu outage IdP atau CA policy salah bisa mengunci seluruh admin keluar dari tenant.

PIM: Just-in-Time Admin

Permanent admin adalah utang risiko. Privileged Identity Management (PIM) mengubah model: role di-eligible, aktif sementara dengan justifikasi, kadang butuh approval:

Aktivasi role Global Administrator via PIM
# eligible user minta aktivasi (dengan alasan + tiket)
az rest --method POST \
  --url "https://graph.microsoft.com/v1.0/roleManagement/directory/roleEligibilityScheduleRequests" \
  --body '{"action":"adminAssign","justification":"IR-2026-0816 maintenance","roleDefinitionId":"62e90394-...","principalId":"<user-id>","directoryScopeId":"/","scheduleInfo":{"startDateTime":"2026-08-16T02:00:00Z","expiration":{"type":"afterDuration","duration":"PT8H"}}}'

Efek strukturalnya besar: jumlah standing admin turun ke nol, setiap eskalasi punya jejak justifikasi + approval, dan window eksposur 24/7 menyusut jadi 8 jam berdasar permintaan. Pola ini adalah padatan Entra dari break-glass role AWS di episode 9.

Identity Protection: Risiko Sebagai Sinyal

Identity Protection menghitung dua skor risiko: sign-in risk (per-login: IP anonim, atypical travel) dan user risk (per-akun: kredensial bocor di dark web, aktivitas anomali). Nilai praktisnya ada saat dipakai sebagai input CA:

  • sign-in risk medium+ → require MFA kuat / block
  • user risk high → force password reset + reauth semua sesi

Plus kemampuan yang jarang dimanfaatkan: confirm compromised/safe pada deteksi — feedback ini melatih sistem dan menjadi audit trail investigasi kalian.

Hardening Tenant: Checklist

  • MFA phishing-resistant wajib untuk semua admin (FIDO2/passkey), bertahap ke semua user.
  • Legacy authentication diblokir total.
  • Consent: hanya app verified publisher; admin consent workflow untuk app lain.
  • PIM untuk semua role privileged: eligible + approval + window pendek.
  • Dua akun break-glass terpantau, diuji tiap kuartal.
  • CA reporting mode dulu untuk policy baru, lalu enforce — hindari lockout massal.
  • Log sign-in & audit log Entra dikirim ke SIEM (integrasi dengan episode 8).
  • Review service principal & permission OAuth bulanan (Get-MgServicePrincipal).

Item terakhir layak digarisbawahi: service principal dengan permission berlebih adalah IAM role liar versi Microsoft — auditnya sama pentingnya dengan audit IAM AWS di episode 3.

Penutup

Inti yang harus dibawa pulang:

  • Serangan identitas modern melewati MFA lama: AiTM proxy mencuri sesi, consent phishing menyalahgunakan izin OAuth, token direplay.
  • Pertahanan inti: MFA phishing-resistant (FIDO2/passkey) + conditional access berlapis (legacy auth block, risk-based, device compliance).
  • PIM mengubah permanent admin menjadi just-in-time dengan approval dan jejak.
  • Identity protection memberi skor risiko yang harus dikonsumsi CA — bukan dashboard yang ditonton.
  • Break-glass accounts dan audit service principal adalah dua hal yang paling sering dilupakan.

Di episode 20 selanjutnya kita bicara dunia regulasi: regulatory cloud — GDPR, HIPAA, data residency, dan cara merancang workload regulated tanpa mengorbankan kecepatan engineering. Sampai jumpa!

Belajar Cloud Security Engineer - Identity Threats (AAD/Entra) | Belajar Cloud Security Engineer