Latest / The Identity Blueprint / Non-Human Identities & AI Agent Governance
Transcript
- 0:00SPEAKER_01: Welcome to season three of Identity Threat and Defense, broadcasting every Thursday.
- 0:06SPEAKER_01: This season we dismantle the illusion of the perimeter.
- 0:09SPEAKER_01: We are moving past high-level compliance checkboxes to deliver forensic autopsies of the modern era's most critical identity breaches, and blueprinting the exact protocol level defenses required to survive contact with real world adversaries.
- 0:26SPEAKER_01: In today's premiere, we dissect the January 2024 Midnight Blizzard attack against Microsoft corporate infrastructure.
- 0:34SPEAKER_01: We trace how nation-state actors weaponized a basic password spray against a legacy non-production test tenant, abused a lack of multifactor authentication, and pivoted into over-privileged OAuth application registrations to silently compromise executive mailboxes.
- 0:53SPEAKER_01: To shut down this attack surface permanently, we blueprint the deployment of Microsoft Intra application governance, strict consent policies, and privileged identity management for groups.
- 1:05SPEAKER_01: Let's dive into the protocol layer.
- 1:08SPEAKER_01: Picture a security operations center uh at two in the morning.
- 1:11SPEAKER_02: Right.
- 1:12SPEAKER_01: A tier three defender is just, you know, staring down a petabyte scale SIM dashboard, filtering through Microsoft 365 audit logs, and uh everything looks perfectly normal.
- 1:22SPEAKER_03: Yeah, completely quiet.
- 1:24SPEAKER_03: Right.
- 1:24SPEAKER_01: There's a log entry showing the chief executive officer opening an email.
- 1:28SPEAKER_01: A few milliseconds later, the CISO reads a you know highly confidential legal memo.
- 1:33SPEAKER_02: Sure.
- 1:33SPEAKER_01: A moment after that, the general counsel accesses a sensitive compliance report.
- 1:38SPEAKER_01: On the surface, it's just executives working late.
- 1:41SPEAKER_01: I mean, the logs say it's them.
- 1:43SPEAKER_03: And the IPs checkout too, right?
- 1:45SPEAKER_01: Exactly.
- 1:45SPEAKER_01: Yeah.
- 1:45SPEAKER_01: The IP address is resolved to trusted Microsoft data centers.
- 1:48SPEAKER_01: The telemetry is completely clean.
- 1:51SPEAKER_01: But here is the terrifying reality.
- 1:53SPEAKER_03: None of them are actually awake.
- 1:55SPEAKER_01: Right.
- 1:55SPEAKER_01: They are fast asleep in their beds.
- 1:57SPEAKER_01: What that SOC analyst is actually watching is an invisible, fully autonomous, state-sponsored machine identity.
- 2:03SPEAKER_03: Aaron Powell Wearing a flawless digital mask.
- 2:06SPEAKER_01: Yes, wearing a mask of those exact executives, systematically scraping the entire strategic brain of the company.
- 2:13SPEAKER_01: And the architecture itself, the way it was built, was designed to let it happen without tripping a single alarm.
- 2:20SPEAKER_03: It is uh it's the ultimate nightmare scenario for an identity architect.
- 2:24SPEAKER_03: I mean, we spend millions of dollars building these massive fortresses around our human employees, right?
- 2:30SPEAKER_02: Yeah, totally.
- 2:31SPEAKER_03: Assuming that if we protect the humans, we protect the data.
- 2:34SPEAKER_03: But the moment an adversary realizes they can just, you know, bypass the human entirely.
- 2:39SPEAKER_01: Just step right around them.
- 2:40SPEAKER_03: Exactly.
- 2:41SPEAKER_03: And operate as a ghost in the machine's infrastructure, at that point, those human-centric fortresses become completely irrelevant.
- 2:47SPEAKER_01: Aaron Powell And that invisible digital mask is exactly what we are tearing down today.
- 2:52SPEAKER_01: Welcome to this deep dive.
- 2:54SPEAKER_01: Our mission today is uh highly specific and incredibly urgent for you.
- 2:59SPEAKER_03: Aaron Powell Yeah, we have a very dense stack of source material today.
- 3:03SPEAKER_01: Aaron Powell We do.
- 3:04SPEAKER_01: And the goal is to equip you, whether you're a principal identity architect, uh CISO, or you know, an enterprise security engineer, with a truly granular, intellectually rigorous architectural understanding of a very specific structural vulnerability.
- 3:20SPEAKER_03: Aaron Powell We're mapping out exactly how legacy machine identities fail, and uh more importantly, how modern enterprise agent platforms are being engineered at the foundational level to fix them.
- 3:30SPEAKER_01: Aaron Powell Right.
- 3:31SPEAKER_01: And we need to establish the ground rules right now.
- 3:34SPEAKER_01: This is not, you know, high-level tech news.
- 3:36SPEAKER_02: No, definitely not.
- 3:37SPEAKER_01: And it is certainly not surface commentary.
- 3:40SPEAKER_01: We are not going to insult your intelligence with generic security platitudes about uh training your employees to spot phishing.
- 3:46SPEAKER_03: Aaron Powell or making sure your systems are patched.
- 3:48SPEAKER_03: I mean, if you're in the position to architect an enterprise identity framework, you are way past that.
- 3:53SPEAKER_01: Aaron Powell Way past it.
- 3:54SPEAKER_01: Today is about the plumbing.
- 3:56SPEAKER_01: It's about the API calls, the protocol handshakes, and the cryptographic primitives.
- 4:01SPEAKER_03: Aaron Powell We are going deep into the documentation.
- 4:03SPEAKER_03: We're pulling from uh Microsoft's threat intelligence reports on the Midnight Blizzard compromise, plus highly technical intra-architectural documentation, CISA advisories covering the Dark Side Ransomware incident, and the Ivanti Connect secure vulnerabilities.
- 4:18SPEAKER_01: Also a pretty sobering 8K filing from T-Mobile and extensive threat research on golden SAML attacks.
- 4:24SPEAKER_03: And you know, the connective tissue between all of those sources is the realization that the perimeter is no longer the primary battleground.
- 4:30SPEAKER_01: It's just not.
- 4:31SPEAKER_03: The identity infrastructure is.
- 5:11SPEAKER_01: And they chained that with CVE-2024-21887 and CVE-2024-21893, which allowed for command injection and server-side request forgery.
- 5:23SPEAKER_03: So they just smashed right through?
- 5:25SPEAKER_01: They smashed through the front door so effectively that they were able to deploy web shells and completely deceive Avonti's internal and external integrity checker tool.
- 5:33SPEAKER_02: The ICT.
- 5:34SPEAKER_01: Yeah.
- 5:34SPEAKER_01: The ICT was supposed to be the fail safe.
- 5:37SPEAKER_01: It's the internal camera watching the door.
- 5:39SPEAKER_01: And the attackers figured out how to feed it a looped tape, so it reported everything was fine.
- 5:45unknown: Wow.
- 5:45SPEAKER_01: It was such a catastrophic perimeter collapse that SCISA literally told network defenders to assume every single user and service account credential stored on those appliances was burned.
- 5:55SPEAKER_03: Yeah.
- 5:55SPEAKER_03: And they noted the attackers could maintain root level persistence even if you factory reset the box.
- 6:01SPEAKER_01: Right.
- 6:01SPEAKER_01: So it's a textbook, highly sophisticated perimeter breach.
- 6:05SPEAKER_01: But it still relies on exploiting a flaw in the software guarding the perimeter.
- 6:09SPEAKER_01: The defenders built a wall and the attackers found a crack in the mortar.
- 6:13SPEAKER_03: But the attack we are focusing on today didn't smash anything.
- 6:17SPEAKER_01: Nothing.
- 6:17SPEAKER_03: They didn't need a zero-day vulnerability.
- 6:20SPEAKER_03: They quietly walked in through an unmonitored side door.
- 6:23SPEAKER_01: Aaron Ross Powell Using perfectly legitimate, mathematically sound, but entirely ungoverned machine identities.
- 6:29SPEAKER_03: Right.
- 6:29SPEAKER_03: And to understand how we cure this fundamental architectural flaw, we first have to perform a forensic autopsy on the disease itself.
- 6:36SPEAKER_01: Let's do it.
- 6:37SPEAKER_03: We need to dissect one of the most sophisticated identity compromises in recent history, the Midnight Blizzard attack against Microsoft.
- 6:44SPEAKER_01: Aaron Ross Powell Let's get the context on the table.
- 6:46SPEAKER_01: Midnight Blizzard, uh which is tracked by various security vendors as APT-29, UNC 2452, or Cozy Bear.
- 6:55SPEAKER_03: Right.
- 6:55SPEAKER_03: Highly capable.
- 6:56SPEAKER_01: Yeah.
- 6:56SPEAKER_01: Widely understood to be a highly capable threat actor operating in support of Russian foreign policy interests.
- 7:03SPEAKER_01: But what's fascinating about this breach isn't just who did it.
- 7:07SPEAKER_03: It's the astonishingly simple way they gained their initial foothold.
- 7:10SPEAKER_01: Exactly.
- 7:11SPEAKER_01: It wasn't a zero day, it wasn't a complex supply chain poisoning.
- 7:16SPEAKER_01: It was a password spray.
- 7:17SPEAKER_03: Yes.
- 7:18SPEAKER_03: But you know, the nuance is in the target of that password spray.
- 7:23SPEAKER_03: They did not target a high-value human.
- 7:25SPEAKER_02: Right.
- 7:25SPEAKER_03: They didn't target a global administrator or lead engineer.
- 7:29SPEAKER_03: They targeted a legacy, non-production test tenant account.
- 7:33SPEAKER_01: Aaron Ross Powell A test account.
- 7:35SPEAKER_03: Like the kind of thing an engineer spins up on a Tuesday afternoon to test an API integration and completely forgets about by Friday.
- 7:42SPEAKER_01: Trevor Burrus, Jr.
- 7:43SPEAKER_03: And the single reason this password spray succeeded against this specific legacy account is the absolute crux of the issue.
- 7:50SPEAKER_03: It lacked multi-factor authentication.
- 7:52SPEAKER_03: Trevor Burrus, Jr.
- 7:52SPEAKER_01: No MFA.
- 7:53SPEAKER_03: There was no MFA enabled.
- 7:55SPEAKER_03: If you contrast this with the Avanti VPN situation you just outlined.
- 7:58SPEAKER_03: Aaron Powell Right.
- 7:59SPEAKER_01: The Avanti breach was a complex exploitation of memory and authentication logic.
- 8:03SPEAKER_03: Aaron Ross Powell Exactly.
- 8:04SPEAKER_03: The Midnight Blizzard initial access was a pure identity posture failure.
- 8:09SPEAKER_03: It was an environment that someone somewhere in the organization deemed non-production.
- 8:14SPEAKER_01: Aaron Powell Which is such a dangerous phrase.
- 8:16SPEAKER_03: Aaron Powell It really is.
- 8:18SPEAKER_03: And therefore it was exempted from the baseline security policies that require MFA.
- 8:22SPEAKER_01: Aaron Powell I have to say non-production might be the most dangerous phrase in enterprise IT.
- 8:27SPEAKER_01: In my experience, non-production almost always translates directly to unmonitored, forgotten, and highly privileged.
- 8:35SPEAKER_02: Absolutely.
- 8:36SPEAKER_01: But I want to dig into the mechanics of the password spray itself.
- 8:40SPEAKER_01: Because this wasn't a script, kitty, blasting 10,000 passwords a second.
- 8:43SPEAKER_03: No, not at all.
- 8:44SPEAKER_01: Password sprays are inherently noisy.
- 8:47SPEAKER_01: I mean, if you try hundreds of passwords against a single account, you hit a rate limit.
- 8:52SPEAKER_01: The identity provider flags the anomaly, smart lockout policies are triggered, SOC dashboards light up red.
- 8:58SPEAKER_03: Right.
- 8:59SPEAKER_01: How did Midnight Blizzard evade all of that legacy brute force detection?
- 9:03SPEAKER_03: Because they fundamentally understood how legacy anomaly detection works, and they engineered a routing mechanism to bypass it entirely.
- 9:12SPEAKER_01: Okay, break that down.
- 9:14SPEAKER_03: They utilized a highly sophisticated evasion mechanic.
- 9:17SPEAKER_03: It was a low-volume authentication burst routed across a massive distributed residential proxy infrastructure.
- 9:25SPEAKER_01: Let's explain how residential proxies actually defeat the math of traditional detection.
- 9:29SPEAKER_01: If I'm a defender, I rely on indicators of compromise or IOCs.
- 9:33SPEAKER_01: Sure.
- 9:34SPEAKER_01: My SIM sees 100 failed logins from an IP address in St.
- 9:37SPEAKER_01: Petersburg.
- 9:38SPEAKER_01: So I write a rule to drop all traffic from that IP.
- 9:41SPEAKER_03: Aaron Powell Right.
- 9:42SPEAKER_03: That's traditional volume-based IP blocking.
- 9:44SPEAKER_03: Aaron Powell But residential proxy networks don't use data center IPs.
- 9:48SPEAKER_03: They utilize a vast decentralized network of IP addresses that belong to everyday, legitimate users.
- 9:56SPEAKER_03: We are talking about someone's home router in Ohio, a smart TV in London, a compromised IoT refrigerator in Tokyo.
- 10:04SPEAKER_03: Trevor Burrus, Jr.
- 10:04SPEAKER_01: So to the identity provider, the authentication request doesn't look like it's coming from a known bad server farm or a Tor exit node.
- 10:11SPEAKER_03: Exactly.
- 10:12SPEAKER_01: It looks like it's coming from a standard ATT or Comcast residential broadband connection.
- 10:16SPEAKER_03: Exactly.
- 10:17SPEAKER_03: And the changeover rate, the rotation of those IPs is incredibly high.
- 10:21SPEAKER_03: Midnight Blizzard might send exactly one password guess from that IP address in Ohio.
- 10:26SPEAKER_03: Trevor Burrus, Jr.
- 10:26SPEAKER_03: Just one.
- 10:26SPEAKER_03: Just one.
- 10:27SPEAKER_03: And the very next guess, ten minutes later, comes from the IP address in London.
- 10:31SPEAKER_00: Wow.
- 10:31SPEAKER_03: Because they kept the volume of attempts to an absolute trickle, just a slow drip over a long period of time, and distributed those attempts across thousands of clean, rotating residential IPs.
- 10:42SPEAKER_01: Aaron Powell They completely bypassed volume-based lockouts.
- 10:44SPEAKER_03: Trevor Burrus Mathematically, traditional IOC detection becomes infeasible.
- 10:48SPEAKER_03: You cannot just block those residential ASNs or IP subnets.
- 10:52SPEAKER_01: Aaron Powell Well, because you would simultaneously block thousands of your own legitimate customers or remote employees who happen to share those IP ranges.
- 10:59SPEAKER_02: Aaron Powell Exactly.
- 11:00SPEAKER_01: It's brilliant in a terrifying way.
- 11:02SPEAKER_01: I mean, you can't find the needle because the needle is actively disguising itself as a piece of hay and it keeps teleporting.
- 11:08SPEAKER_03: Aaron Powell That's a great way to put it.
- 11:10SPEAKER_01: So through sheer patience and distributed routing, they successfully guess the password for this MFA-less non-production test account.
- 11:19SPEAKER_01: They are officially inside the side door.
- 11:22SPEAKER_02: Yep, they are in.
- 11:23SPEAKER_01: But a test account usually doesn't have the keys to the kingdom.
- 11:26SPEAKER_01: They can maybe read a few test directories.
- 11:29SPEAKER_01: What was their privilege escalation path?
- 11:31SPEAKER_01: How do they move from a low-level test account to executing a massive espionage operation against corporate emails?
- 11:38SPEAKER_03: Well, this is the exact moment where the attack transitions from a human identity failure, the lack of MFA on the test account, to a machine identity failure.
- 11:49SPEAKER_00: Okay, here we go.
- 11:50SPEAKER_03: Once they had interactive access to that test tenant, the threat actor began mapping the directory.
- 11:56SPEAKER_03: They identified and hijacked an existing legacy test OAuth application.
- 12:00SPEAKER_01: Aaron Powell An OAuth app.
- 12:02SPEAKER_03: Yes.
- 12:02SPEAKER_03: And crucially, this specific OAuth application had been previously granted highly elevated rights within the tenant, presumably for whatever testing it was originally designed to do years ago.
- 12:14SPEAKER_01: Aaron Ross Powell Wait, I want to stop here and get really granular on the intra documentation.
- 12:19SPEAKER_01: Because hijacking an OAuth application isn't like logging into a user account.
- 12:23SPEAKER_01: You don't just type in a password and see a desktop.
- 12:26SPEAKER_03: Aaron Powell No, it's very different.
- 12:27SPEAKER_01: Aaron Ross Powell How do you technically hijack an application object?
- 12:30SPEAKER_03: Aaron Powell Right.
- 12:31SPEAKER_03: So the intra documentation on built-in roles highlights a very specific, very dangerous role called the application administrator, or similarly the cloud application administrator.
- 12:43SPEAKER_03: This role grants a user the ability to manage the credentials of an application object.
- 12:49SPEAKER_03: When an attacker compromises an account that either holds this role or they find an application object where their compromised user is listed as an owner.
- 12:57SPEAKER_01: They gain the ability to modify the application's configuration.
- 13:00SPEAKER_03: Aaron Powell Precisely.
- 13:02SPEAKER_01: And modifying the configuration means they can append their own keys to the lock.
- 13:06SPEAKER_03: Aaron Powell Yes.
- 13:07SPEAKER_03: They generate a new client secret, or more commonly for sophisticated actors, a new X.509 certificate.
- 13:14SPEAKER_03: And they append that credential to the existing application object.
- 13:17SPEAKER_01: Aaron Powell So it's the equivalent of finding an old unused API key for a cloud service.
- 13:22SPEAKER_01: But instead of using the old key, you just use your administrative rights to mint a brand new key for the same service.
- 13:28SPEAKER_03: Yes.
- 13:29SPEAKER_03: And the moment you add your own credential to that application, you can authenticate directly to the Microsoft Graph API as that application.
- 13:36SPEAKER_03: Wow.
- 13:37SPEAKER_03: You are no longer logging in as the human test user, you are impersonating the application service principle.
- 13:43SPEAKER_01: Aaron Powell So you wear the app's identity.
- 13:45SPEAKER_03: Exactly.
- 13:46SPEAKER_03: And here is the kicker.
- 13:47SPEAKER_03: If that application was historically granted high-level directory access, say the ability to read all user mailboxes or the ability to grant consent to other applications.
- 13:57SPEAKER_01: The attacker inherits all of those permissions instantaneously.
- 14:00SPEAKER_03: Aaron Powell Instantly.
- 14:01SPEAKER_03: The entrance documentation explicitly warns architects about this.
- 14:05SPEAKER_03: It states that the ability to manage an application's credentials creates a massive elevation of privilege because you can execute actions far beyond what your original user account could natively do simply by wearing the application's identity.
- 14:20SPEAKER_01: So Midnight Blizzard uses this forgotten test app to elevate their privileges.
- 14:24SPEAKER_01: They are now operating as a highly trusted machine identity.
- 14:28SPEAKER_01: What do they do with that power?
- 14:29SPEAKER_03: Aaron Ross Powell Well, they use those elevated privileges to construct their own bespoke attack infrastructure entirely inside the Microsoft environment.
- 14:36SPEAKER_01: Aaron Powell Inside the House.
- 14:37SPEAKER_03: Aaron Powell Inside the House.
- 14:38SPEAKER_03: They began creating brand new rogue OAuth applications.
- 14:42SPEAKER_03: And to make those applications functional, they provisioned a brand new user account within the tenant.
- 14:46SPEAKER_01: Aaron Powell Wait, a new human user account?
- 14:49SPEAKER_03: Aaron Ross Powell Well, technically, yes, but its sole dedicated purpose was to log in and grant administrative consent in the corporate environment to their newly minted rogue applications.
- 14:58SPEAKER_01: Aaron Powell They essentially built a shadow IT department.
- 15:01SPEAKER_01: They created the apps and they created the fake human required to authorize the apps.
- 15:05SPEAKER_03: Aaron Powell Exactly.
- 15:06SPEAKER_03: And this infrastructure is what enabled the data exfiltration phase.
- 15:10SPEAKER_03: To execute the exfiltration, they relied heavily on the abuse of exchange web services or EWS permissions.
- 15:15SPEAKER_03: Aaron Powell Okay.
- 15:16SPEAKER_01: EWS.
- 15:17SPEAKER_03: We need to tear down these specific EWS permissions because understanding the difference between them highlights the exact blind spots in legacy identity logging that I mentioned at the very beginning of our conversation.
- 15:28SPEAKER_01: I completely agree.
- 15:29SPEAKER_01: Let's look at the Microsoft Threat Intelligence Report.
- 15:31SPEAKER_01: It specifically calls out three distinct permissions that Midnight Blizzard targeted.
- 15:36SPEAKER_02: Right.
- 15:36SPEAKER_01: Full access as app, eWS.accessasuser.all, and application impersonation.
- 15:44SPEAKER_01: Let's start with full access as app.
- 15:46SPEAKER_01: What does that API permission actually allow a machine identity to do?
- 15:51SPEAKER_03: So full access as app is what we call an application-only permission or an app role.
- 15:56SPEAKER_03: It allows an application to interact with the exchange APIs directly as itself without any signed-in human user context whatsoever.
- 16:03SPEAKER_01: Aaron Powell Okay, so it's a machine talking to a machine.
- 16:05SPEAKER_03: Right.
- 16:06SPEAKER_03: If an application is granted this permission in Exchange Online, it essentially has a skeleton key.
- 16:10SPEAKER_03: It allows for bulk, unattended mailbox access across the entire tenant.
- 16:15SPEAKER_01: Aaron Powell So Midnight Blizzard uses the compromised legacy test app, which had the power to grant consent to grant this full access as app role to their new rogue applications.
- 16:26SPEAKER_03: Yes.
- 16:27SPEAKER_03: And once those rogue apps held that permission, they could silently scrape email telemetry, attachments, and sensitive correspondence from senior leadership, cybersecurity staff, and legal teams.
- 16:38SPEAKER_01: Just pulling everything.
- 16:39SPEAKER_03: And they could do it entirely in the background.
- 16:41SPEAKER_03: There is no interactive user session, there is no MFA prompt, there is no anomalous browser user agent string to flag.
- 16:48SPEAKER_03: It is a pure machine-to-machine data heist occurring via API calls.
- 16:53SPEAKER_01: Okay, that's brutal.
- 16:54SPEAKER_01: But at least Full Access as app leaves an audit trail that says application X accessed mailbox Y, right?
- 17:01SPEAKER_03: Aaron Powell Generally, yes.
- 17:02SPEAKER_01: Aaron Powell But what about the other two permissions?
- 17:04SPEAKER_01: The guidance notes that Midnight Blizzard and other APTs frequently target EWS.access as user.all and application impersonation.
- 17:13SPEAKER_01: How do these differ mechanically from the skeleton key approach?
- 17:16SPEAKER_03: Aaron Powell Oh, these are known as delegated permissions, and impersonation is arguably the trickiest mechanism for a defender to untangle.
- 17:23SPEAKER_01: Aaron Powell How so?
- 17:23SPEAKER_03: Aaron Powell When a service principal is granted application impersonation, it literally grants the machine account the ability to access a mailbox and act exactly as the mailbox owner.
- 17:33SPEAKER_01: Aaron Powell It puts on the human's face.
- 17:34SPEAKER_03: And the mask is mathematically flawless as far as traditional log aggregation is concerned.
- 17:39SPEAKER_03: This is the scenario I described in the introduction.
- 17:41SPEAKER_03: When a machine account uses impersonation to read a mail item, Exchange Online records the action as being performed directly by the impersonated user.
- 17:48SPEAKER_01: Aaron Powell Wait, really?
- 17:49SPEAKER_01: The log doesn't say service principal A acting as user B.
- 17:53SPEAKER_01: It just says user B.
- 17:54SPEAKER_01: Exactly.
- 17:55SPEAKER_03: In standard exchange logging, there is no clearly delineated artifact that says impersonation is actively being used for a specific read action.
- 18:02SPEAKER_00: That's insane.
- 18:03SPEAKER_03: You might see an initial user logged in event for the service principle itself, but all the subsequent high-volume malicious actions, the reading, the downloading, the scraping, are recorded under the target user's name.
- 18:15SPEAKER_01: So it's totally hidden.
- 18:16SPEAKER_03: It creates a massive structural logging blind spot because the actor column and the target object column in your SIM look absolutely identical.
- 18:24SPEAKER_01: Aaron Powell If I'm a SOC analyst relying on basic logs, I have absolutely zero visibility.
- 18:29SPEAKER_01: I just see my CEO reading 10,000 of their own emails in an hour, which I might write off as, you know, a male client syncing issue.
- 18:38SPEAKER_01: How do you even detect that?
- 18:39SPEAKER_03: Aaron Powell You cannot detect it with standard logs.
- 18:42SPEAKER_03: It is nearly invisible unless your architecture utilizes highly specific advanced telemetry.
- 18:48SPEAKER_01: Which is what?
- 18:49SPEAKER_03: This ties directly into the critical necessity of Microsoft Purview Audit, which was formerly known as advanced audit.
- 18:55SPEAKER_03: Specifically, you have to look at the mail items accessed log.
- 18:58SPEAKER_01: Aaron Powell What makes the mail items access log different from the standard exchange mailbox audit logs?
- 19:04SPEAKER_03: The mail items accessed audit is a specialized high fidelity logging mechanism.
- 19:10SPEAKER_03: It records the exact user agent string, the precise timestamp, the IP address, and the routing context every single time a mail item is accessed.
- 19:18SPEAKER_02: Okay.
- 19:18SPEAKER_03: Regardless of whether that access occurs through the modern graph API, an Outlook desktop client, Outlook on the web, or a legacy protocol like EWS using application impersonation.
- 19:28SPEAKER_01: It catches everything.
- 19:29SPEAKER_03: It is practically the only reliable artifact an incident response team has to detect when a threat actor is scraping mailboxes via APIs using application impersonation.
- 19:40SPEAKER_03: If your enterprise does not have that specific purview telemetry enabled and actively feeding into your SIM, you simply do not have the architectural visibility required to see machine identity data exfiltration.
- 19:52SPEAKER_01: As you explain this, I can't help but compare it to another massive identity compromise vector we've seen, golden SAML.
- 19:58SPEAKER_03: Oh, yes, the solar winds breach.
- 20:01SPEAKER_01: Right.
- 20:01SPEAKER_01: We have sources here from Netrix detailing how golden SAML attacks work.
- 20:05SPEAKER_01: In a golden SAML attack, the attackers compromise the on-premises Active Directory infrastructure.
- 20:11SPEAKER_01: They steal the ADFS token signing certificate.
- 20:14SPEAKER_02: Right.
- 20:14SPEAKER_01: And once they have that certificate, they can forge the VIP pass from scratch.
- 20:19SPEAKER_01: They generate entirely fake, mathematically valid SAML assertions to impersonate any global administrator they want in the cloud, bypassing passwords and MFA entirely.
- 20:29SPEAKER_03: That is the ultimate cryptographic bypass, yes.
- 20:32SPEAKER_01: Right.
- 20:32SPEAKER_01: But Midnight Blizzard's approach here feels fundamentally different.
- 20:36SPEAKER_01: In Golden SAML, they are stealing the cryptographic printing press to forge the VIP pass from scratch.
- 20:42SPEAKER_01: Yes.
- 20:43SPEAKER_01: But Midnight Blizzard didn't forge anything.
- 20:45SPEAKER_01: They just found an old, forgotten, highly privileged VIP pass lying in an unlocked desk drawer, that legacy test OAuth app, and they just picked it up and used it to print their own customized all access badges.
- 20:57SPEAKER_03: That is a phenomenal architectural analogy.
- 21:00SPEAKER_03: A golden SAML attack requires a highly complex, multi-stage compromise of the core on-premises Active Directory Federation Services infrastructure just to steal the cryptographic keys.
- 21:11SPEAKER_01: It's a lot of work.
- 21:12SPEAKER_03: It is.
- 21:13SPEAKER_03: And it is incredibly loud if you are monitoring the ADFS servers.
- 21:18SPEAKER_03: Midnight Blizzard bypassed all of that cryptographic heavy lifting.
- 21:22SPEAKER_03: They didn't need to break the cryptography.
- 21:24SPEAKER_03: They simply walked through an unmonitored directory, found an over-privileged machine credential that a human engineer forgot to delete, and appended a new key to it.
- 21:34SPEAKER_01: Which begs a massive billion-dollar architectural question.
- 21:38SPEAKER_01: This leads us directly to the fundamental structural failure of traditional service principles.
- 21:43SPEAKER_03: Let's get into it.
- 21:45SPEAKER_01: Why on earth was a highly privileged legacy test OAuth app just sitting there, fully operational, with no oversight, waiting to be hijacked?
- 21:54SPEAKER_01: How does our current identity architecture even allow this state of affairs to exist?
- 22:00SPEAKER_03: That we have to conduct a fundamental teardown of what traditional Microsoft intra service principles and legacy application registrations actually are, and more importantly, what they were originally engineered to do.
- 22:12SPEAKER_01: Let's do it.
- 22:13SPEAKER_01: Tear it down.
- 22:14SPEAKER_01: What is the foundational flaw in the primitive itself?
- 22:17SPEAKER_03: The flaw is rooted in their original design intent from over a decade ago.
- 22:21SPEAKER_03: Service principles were engineered for static, deterministic daemon workloads.
- 22:26SPEAKER_01: Aaron Powell Give me an example of a deterministic daemon workload.
- 22:29SPEAKER_03: Think of a background service running on a rigid on-premises server that executes a database backup every single night at 2 a.m.
- 22:37SPEAKER_01: Okay.
- 22:38SPEAKER_03: It does the exact same thing at the exact same time, originating from the exact same static IP address using the exact same API calls every single day for five years.
- 22:49SPEAKER_03: It is perfectly predictable.
- 22:50SPEAKER_01: Right.
- 22:50SPEAKER_01: It's a robot doing a highly repetitive task.
- 22:53SPEAKER_03: Exactly.
- 22:54SPEAKER_03: And because it was predictable, we gave it a static client secret.
- 22:58SPEAKER_03: Basically a password that lasts for two years, and we left it alone.
- 23:01SPEAKER_01: Set it and forget it.
- 23:02SPEAKER_03: Yes.
- 23:03SPEAKER_03: But traditional service principles were never engineered for the dynamic, highly targeted reality of modern cloud espionage.
- 23:10SPEAKER_03: And they are certainly not equipped to handle the complex, autonomous, variable behavior AI agents we are seeing deployed across the enterprise today.
- 23:18SPEAKER_01: Aaron Powell The AI agents change everything.
- 23:20SPEAKER_01: Trevor Burrus, Jr.
- 23:20SPEAKER_03: They do.
- 23:21SPEAKER_03: We are trying to use a primitive built for a simple cron job to secure complex, autonomous systems that can read data, make decisions, and interact with external APIs.
- 23:31SPEAKER_01: Aaron Powell So the tool doesn't match the workload anymore.
- 23:35SPEAKER_01: What does that mean in practice for an enterprise security engineer?
- 23:39SPEAKER_01: Let's contrast how we govern human users versus how we govern these machine identities.
- 23:43SPEAKER_03: Aaron Powell Oh, the difference is staggering.
- 23:46SPEAKER_01: Because if I'm a human employee, the enterprise has an incredibly tight grip on my digital identity.
- 23:51SPEAKER_03: Aaron Powell Absolut.
- 23:52SPEAKER_03: Think about the layers of human-centric zero trust policies applied to your account.
- 23:56SPEAKER_03: We have identity protection heuristics that constantly monitor your behavior.
- 24:00SPEAKER_01: Aaron Powell Right, like where I log in from.
- 24:02SPEAKER_03: Exactly.
- 24:03SPEAKER_03: The system knows your typical typing speed, your standard login locations, the managed devices you use, the times of day you normally work.
- 24:10SPEAKER_02: Yeah.
- 24:11SPEAKER_03: If you suddenly log in from an unmanaged device in a new country at 3 a.m., conditional access policies immediately calculate that risk.
- 24:19SPEAKER_03: They challenge you for a biometric MFA prompt, or they block the session entirely.
- 24:24SPEAKER_01: It's very reactive.
- 24:25SPEAKER_03: Furthermore, we have identity governance and administration, or IGA tools.
- 24:30SPEAKER_03: Your access is tied directly to a human heartbeat via your HR profile in workday or success factors.
- 24:36SPEAKER_03: Sure.
- 24:37SPEAKER_03: When you get promoted, your access automatically changes.
- 24:40SPEAKER_03: When you leave the company, HR changes your status and your identity is instantly terminated.
- 24:44SPEAKER_01: Aaron Powell It's a continuous closed loop lifecycle.
- 24:47SPEAKER_03: And none of that applies to a service principle.
- 24:49SPEAKER_01: Aaron Ross Powell Almost none of it applies cleanly because applying human behavioral models to non-human accounts fundamentally breaks the math.
- 24:57SPEAKER_01: Aaron Powell How so Human-centric conditional access policies degrade instantly when applied to service principles because machines cannot interact with a multi-factor authentication prompt on a mobile phone.
- 25:09SPEAKER_03: Right.
- 25:09SPEAKER_03: A robot doesn't have an authenticator app.
- 25:12SPEAKER_01: Exactly.
- 25:12SPEAKER_03: Identity protection heuristics get confused because a machine's behavior executing 10,000 API calls in three seconds would be flagged as highly malicious for a human, but it's perfectly normal for a data pipeline.
- 25:24SPEAKER_01: That makes sense.
- 25:25SPEAKER_03: But the most critical failure is governance.
- 25:28SPEAKER_03: Traditional service principles lack enforced human accountability, they lack agent-aware audit trails, as we saw with the EWS impersonation, and they possess absolutely zero native lifecycle management tied to an authoritative HR source.
- 25:41SPEAKER_01: This brings us right back to that forgotten VIP pass in the drawer.
- 25:45SPEAKER_01: The orphaned application vulnerability.
- 25:48SPEAKER_01: I want to detail the mechanical reality of this because it is the silent killer of cloud environments.
- 25:54SPEAKER_03: It really is.
- 25:55SPEAKER_01: Walk me through exactly what happens in an Azure Active Directory tenant when the identity engineer who created that high-privileged test app moves to a different department or leaves the company entirely.
- 26:07SPEAKER_03: Mechanically.
- 26:08SPEAKER_03: Absolutely nothing happens, and that is the exact problem.
- 26:12SPEAKER_01: Walk me through it.
- 26:13SPEAKER_03: Let's trace the life cycle of a failure.
- 26:16SPEAKER_03: An identity engineer is tasked with building a proof-of-concept integration.
- 26:21SPEAKER_03: To make it work quickly and bypass red tape, they create an OAuth application registration.
- 26:27SPEAKER_01: Standard procedure.
- 26:28SPEAKER_03: They grant it broad API permissions, maybe directory read-write access or full mailbox access.
- 26:34SPEAKER_03: They generate a client secret that is valid for 24 months.
- 26:39SPEAKER_03: Six months later, that engineer leaves the enterprise.
- 26:44SPEAKER_03: Yes.
- 26:45SPEAKER_03: HR disables their human user account immediately.
- 26:48SPEAKER_03: But the application registration they created, the corresponding service principal object, the 24-month client secret, the high-privilege API permissions.
- 26:58SPEAKER_00: They just sit there.
- 27:00SPEAKER_03: They all remain perfectly intact, fully operational, and entirely unmonitored within the directory.
- 27:06SPEAKER_01: Aaron Powell It becomes an orphan credential.
- 27:09SPEAKER_03: A ghost in the machine.
- 27:10SPEAKER_01: It has no owner.
- 27:12SPEAKER_03: No one is reviewing its access logs.
- 27:14SPEAKER_03: No one remembers what it does.
- 27:16SPEAKER_03: But it still holds a valid cryptographic key to the kingdom.
- 27:20SPEAKER_01: When I was reading the sources for this deep dive, my mind immediately went to the 8K filing from T-Mobile regarding their massive 2023 API breach.
- 27:28SPEAKER_03: Aaron Powell Oh, that's a perfect parallel.
- 27:31SPEAKER_01: In that incident, a bad actor obtained data on approximately 37 million customer accounts.
- 27:36SPEAKER_01: And how did they do it?
- 27:38SPEAKER_01: They didn't burn a zero day, they found a single application programming interface, an API endpoint, that was left exposed to the internet without proper authorization checks.
- 27:47SPEAKER_02: Right.
- 27:48SPEAKER_01: It wasn't the API that provided access to highly sensitive PCI data or social security numbers, but it leaked 37 million records of basic account telemetry.
- 27:58SPEAKER_01: Whether it's an unauthenticated API endpoint left open on a forgotten server or an orphaned, overprivileged machine credential sitting quietly in a cloud directory, static forgotten access points are the ultimate vulnerabilities in enterprise architecture.
- 28:13SPEAKER_01: They don't decay, they just wait to be found.
- 28:16SPEAKER_03: That is a highly accurate architectural comparison.
- 28:19SPEAKER_03: Both the T-Mobile API breach and the Midnight Blizzard OWATH hijack represent a fundamental failure of continuous visibility and lifecycle governance over non-human access points.
- 28:30SPEAKER_01: But I'm going to push back on this idea of visibility for a second.
- 28:33SPEAKER_01: We are operating in the late 2020s.
- 28:36SPEAKER_01: Enterprises spend millions on massively complex identity governance and administration tools.
- 28:41SPEAKER_02: Yes, they do.
- 28:42SPEAKER_01: We have next generation SIMS pulling in petabytes of logs per day.
- 28:46SPEAKER_01: We have cloud security posture management or CSPM tools mapping our entire cloud footprint.
- 28:53SPEAKER_01: Given all that tooling, how does an application with global mailbox access just vanish from the radar?
- 29:00SPEAKER_01: Why are traditional, expensive identity platforms fundamentally blind to this machine credential sprawl?
- 29:07SPEAKER_03: Aaron Powell Because traditional identity platforms were architected from the ground up to track people, not things.
- 29:13SPEAKER_00: Oh, I see.
- 29:14SPEAKER_03: An IGA tool looks at the HR database as its ultimate source of truth.
- 29:18SPEAKER_03: If a record does not exist in the HR database, the IGA tool largely ignores it because it doesn't know how to map it to a manager for an access review.
- 29:26SPEAKER_01: Aaron Powell Because service principles don't have an employee ID.
- 29:29SPEAKER_03: Aaron Powell Exactly.
- 29:30SPEAKER_03: Service principles do not have HR records.
- 29:33SPEAKER_03: Seams are great at catching known bad signatures or high-volume anomalies, but as we discussed with the EWS impersonation logs, if the malicious action looks identical to a legitimate human action, the seam doesn't flag it.
- 29:46SPEAKER_00: Aaron Powell It just blends in.
- 29:48SPEAKER_03: We are blind because our entire multimillion dollar governance infrastructure relies on the assumption that every active identity has a human heartbeat attached to it.
- 29:57SPEAKER_03: When we create identities without heartbeats, they fall straight through the architectural gaps.
- 30:02SPEAKER_01: Aaron Powell Which means buying a better SIEM or tweaking a conditional access policy isn't going to fix this.
- 30:10SPEAKER_01: We need a fundamentally new primitive for non-human identities.
- 30:14SPEAKER_03: Aaron Powell Exactly.
- 30:15SPEAKER_03: The industry has collectively realized that traditional service principles are structurally unfit for dynamic modern workloads.
- 30:22SPEAKER_01: Aaron Powell Especially with AI.
- 30:23SPEAKER_03: Aaron Powell And with the incoming tidal wave of autonomous AI agents, agents that need to read your emails, query your CRM, and execute financial transactions autonomously, using legacy service principles is architectural suicide.
- 30:36SPEAKER_03: This realization has forced a massive paradigm shift across the industry toward dedicated enterprise agent identity platforms.
- 30:43SPEAKER_01: Aaron Powell Which brings us to the modern remediation.
- 30:46SPEAKER_01: How do we build an identity framework that assumes these non-human entities require as much, if not more, strict governance than a human employee?
- 30:54SPEAKER_03: Aaron Powell We have to start fresh.
- 30:57SPEAKER_01: Let's deep dive into the Microsoft Intra Agent ID platform, which the intra documentation notes is slated for general availability in April 2026.
- 31:06SPEAKER_03: Aaron Powell To understand Microsoft Intra Agent ID, we have to meticulously define the exact new primitives they are introducing because they are fundamentally replacing the traditional application registration and service principle model for these specific workloads.
- 31:20SPEAKER_02: Okay.
- 31:20SPEAKER_03: The entire architecture revolves around a new concept, the agent identity blueprint.
- 31:26SPEAKER_00: Okay.
- 31:27SPEAKER_00: What exactly is an agent identity blueprint, mechanically speaking?
- 31:32SPEAKER_03: Aaron Powell According to the architectural documentation, an agent identity blueprint is a centralized object in Microsoft Entra ID that serves as the cryptographic template and authentication foundation for one or more agent identities.
- 31:44SPEAKER_01: Aaron Powell, okay.
- 31:46SPEAKER_03: In the legacy model, if you had 10 AI agents, you created 10 separate service principles, which meant you had 10 separate raw credentials, client secrets or certificates floating around in your environment, usually hard-coded in scripts or configuration files.
- 32:00SPEAKER_01: Aaron Powell Right, which led directly to secret sprawl and the orphaned account problem.
- 32:04SPEAKER_03: Aaron Powell Exactly.
- 32:05SPEAKER_03: The Blueprint solves this by centralized credential holding.
- 32:08SPEAKER_03: The blueprint holds the core credentials.
- 32:10SPEAKER_03: It uses those credentials to securely acquire tokens on behalf of all the downstream agent identities that are spawned from it.
- 32:17SPEAKER_01: So instead of a dozen scattered keys, you have one highly secure centralized vault template.
- 32:22SPEAKER_03: Aaron Powell Yes.
- 32:23SPEAKER_03: And it's not just for credentials.
- 32:24SPEAKER_03: It dictates the baseline security policies.
- 32:27SPEAKER_03: Any conditional access policies, IP restrictions, or routing requirements applied to the blueprint instantly and automatically cascade down to every single agent instance spawned from it.
- 32:37SPEAKER_01: Oh, that's smart.
- 32:38SPEAKER_03: It's a hierarchical, tightly controlled model enabling centralized governance over decentralized agents.
- 32:43SPEAKER_01: So if the blueprint is the template holding the secret, how does it actually manifest and operate within the tenant?
- 32:50SPEAKER_01: Does it just sit in the directory?
- 32:52SPEAKER_03: Aaron Powell Its presence is established by the agent identity blueprint principle.
- 32:56SPEAKER_03: When an architect adds a blueprint to a tenant, entra instantiates a corresponding principal object.
- 33:02SPEAKER_03: This blueprint principle establishes the actual tenant level presence and identity.
- 33:06SPEAKER_03: But crucially, its primary engineering directive is to ensure that every single action taken by any agent spawned from it is explicitly tied to an agent-aware audit trail.
- 33:16unknown: Trevor Burrus, Jr.
- 33:17SPEAKER_01: Addressing the Midnight Blizzard problem.
- 33:19SPEAKER_03: Exactly.
- 33:20SPEAKER_03: This is Microsoft's direct engineering response to the EWS logging blind spots exploited by Midnight Blizzard.
- 33:26SPEAKER_03: The new platform is designed so the audit logs forcefully delineate between the autonomous agents' actions and human actions.
- 33:33SPEAKER_03: It rips away that opaque impersonation layer and replaces it with explicit logging.
- 33:38SPEAKER_01: Okay, so we've solved the logging blind spot and we have a secure template.
- 33:43SPEAKER_01: But how do these agents actually authenticate on a day-to-day basis?
- 33:46SPEAKER_01: Because an AI agent helping me draft an email is very different from an AI agent scanning my network at 3 a.m.
- 33:53SPEAKER_03: Aaron Powell They operate very differently, yes.
- 33:55SPEAKER_01: Aaron Powell The entry documentation differentiates between interactive agents and autonomous agents.
- 34:01SPEAKER_01: Let's break down the operational patterns and the exact authentication flows for both.
- 34:05SPEAKER_03: This is a critical distinction for identity architects to grasp.
- 34:09SPEAKER_03: Let's start with interactive agents.
- 34:11SPEAKER_03: These are designed to work synchronously alongside a human user.
- 34:14SPEAKER_00: Aaron Powell Like a copilot.
- 34:16SPEAKER_03: Exactly.
- 34:16SPEAKER_03: Think of an AI co-pilot summarizing a complex Excel document while you are actively logged into your machine.
- 34:22SPEAKER_03: For these interactive workloads, the intra platform leverages OAuth on behalf of or OBO flows.
- 34:29SPEAKER_01: Let's unpack the cryptographic handshake of an OBO flow.
- 34:33SPEAKER_01: How does the agent get the token to act on my behalf without just, you know, stealing my password?
- 34:38SPEAKER_03: In an OBO flow, the human user first authenticates to a client application, say a web portal, and receives an initial access token.
- 34:47SPEAKER_03: The human then asks the AI agent in the portal to perform a task, like querying a back-end graph API.
- 34:54SPEAKER_00: Right.
- 34:54SPEAKER_03: The web portal takes the human's access token and presents it to the identity provider, essentially saying, I am the agent.
- 35:02SPEAKER_03: Here is proof that the human user authenticated to me.
- 35:05SPEAKER_03: Please issue me a new access token that allows me to call the graph API on behalf of this specific human.
- 35:11SPEAKER_00: Oh, I see.
- 35:12SPEAKER_03: The identity provider validates the request and issues a new token to the agent.
- 35:17SPEAKER_03: The critical security boundary here is that the agent's access is strictly bounded by the human user's active session and their specific delegated permissions.
- 35:27SPEAKER_03: When the human logs out, the agent loses its ability to act on their behalf.
- 35:30SPEAKER_01: Aaron Powell That makes perfect sense for an assistant.
- 35:33SPEAKER_01: It rides in the passenger seat.
- 35:35SPEAKER_01: But what about autonomous agents, the ones that operate in the background without a human present?
- 35:40SPEAKER_03: Autonomous agents operate asynchronously.
- 35:43SPEAKER_03: They run independently using their own distinct identity without a human user's token to piggyback on.
- 35:49SPEAKER_01: Give me an example.
- 35:50SPEAKER_03: A classic example would be an automated SecOps agent that monitors network traffic logs 24-7 and automatically isolates compromised endpoints.
- 36:00SPEAKER_03: Because there is no human session, these agents must use the OAuth client credentials flow.
- 36:05SPEAKER_01: But wait, didn't you just say that the traditional client credentials flow using static secrets is exactly what caused the Midnight Blizzard problem?
- 36:13SPEAKER_03: Aaron Powell Yes, which is why the modern platform completely overhauls how the client credentials flow is executed.
- 36:19SPEAKER_03: Instead of using a static, unmanaged service principle secret that an engineer pasted into a configuration file, the autonomous agent authenticates directly with the Intra ID platform using highly secure, dynamic tokens issued by their parent blueprint.
- 36:34SPEAKER_01: Okay, here is where the architecture gets really technical and where I have a lot of questions.
- 36:38SPEAKER_02: Lay them on me.
- 36:39SPEAKER_01: If the autonomous agent is running on a virtual machine or in a Kubernetes container in Azure or AWS, how does the agent physically get that token from the blueprint without exposing a raw credential somewhere in its own code?
- 36:52SPEAKER_02: Right.
- 36:53SPEAKER_01: One of the most prevalent vulnerabilities we see in cloud security is developers accidentally hard-coding secrets into source code repositories like GitHub.
- 37:01SPEAKER_01: How does intra agent ID mathematically solve the hard-coded secret problem?
- 37:06SPEAKER_03: They solve it by completely decoupling the authentication logic from the application logic using the Microsoft Intra ID auth SDK, which is implemented via a sidecar architecture.
- 37:17SPEAKER_01: A sidecar architecture?
- 37:19SPEAKER_01: Let's break that down mechanically for the listeners.
- 37:21SPEAKER_01: What does a sidecar look like in a containerized environment?
- 37:25SPEAKER_03: In modern microservices, a pod in Kubernetes can hold multiple containers that share the same local network and storage.
- 37:32SPEAKER_03: In a sidecar architecture, the primary application, the actual Python or Go code of your AI agent, runs in one container.
- 37:40SPEAKER_02: Okay.
- 37:40SPEAKER_03: The auth SDK runs in an adjacent, tightly coupled but isolated container, the sidecar.
- 37:46SPEAKER_03: The sidecar's entire exclusive job is to handle the complex cryptographic heavy lifting of token acquisition, token caching, and token validation.
- 37:55SPEAKER_01: So the sidecar acts as an authentication proxy.
- 37:58SPEAKER_01: Exactly.
- 37:59SPEAKER_03: The agent code itself never touches a raw credential.
- 38:01SPEAKER_03: It doesn't know the client secret, it doesn't hold the X.509 certificate.
- 38:06SPEAKER_03: Never.
- 38:07SPEAKER_03: Never.
- 38:08SPEAKER_03: When the agent needs to make an API call to a protected resource, it doesn't try to authenticate to Entra ID.
- 38:14SPEAKER_03: Instead, it sends a simple local request over the loopback interface to the sidecar, essentially asking, please give me a valid access token for the graph API.
- 38:24SPEAKER_01: That's brilliant.
- 38:25SPEAKER_03: The sidecar, which securely interfaces with the agent identity blueprint, negotiates the token exchange with Entra ID, caches the resulting token securely in its isolated memory space, and passes it back to the agent.
- 38:37SPEAKER_01: This is a massive architectural shift.
- 38:40SPEAKER_01: By offloading the authentication to the sidecar, you remove the raw credential handling from the application code entirely.
- 38:46SPEAKER_01: It drastically reduces the risk of hard-coded credentials being scraped from GitHub repositories by threat actors because the developers literally don't have the credentials to hard code in the first place.
- 38:56SPEAKER_03: Aaron Powell Precisely.
- 38:58SPEAKER_03: It enforces a strict separation of concerns at the container level.
- 39:16SPEAKER_03: Right, ping identity.
- 39:18SPEAKER_01: How does Ping One's architectural approach to this problem contrast with Microsoft's Blueprint model?
- 39:23SPEAKER_03: It's a fascinating comparison because they are tackling the exact same structural vulnerability but approaching it with different architectural philosophies.
- 39:31SPEAKER_03: While Microsoft is utilizing the centralized blueprint template model to govern downstream instances, Ping One structurally treats autonomous agents as standalone first-class identities from the ground up.
- 39:43SPEAKER_00: Okay.
- 39:44SPEAKER_03: They provide them with dedicated machine credentials, but pair them with extremely clear, mandatory system ownership requirements.
- 39:51SPEAKER_03: But the most significant contrast is how Ping One handles the authorization layer.
- 39:55SPEAKER_03: Ping One heavily emphasizes a fine-grained entitlement governance model that mandates strict, explicit delegation.
- 40:02SPEAKER_01: What exactly do you mean by mandating strict delegation?
- 40:06SPEAKER_01: How is that different from what Microsoft was doing with legacy apps?
- 40:10SPEAKER_03: It's a direct, engineered countermeasure to the EWS abuse we analyzed with Midnight Blizzard.
- 40:15SPEAKER_03: Remember how Midnight Blizzard used application impersonation to wear the human's mask, making the machine's actions look identical to the human's actions in the logs?
- 40:23SPEAKER_01: Right, the logging blind spot.
- 40:25SPEAKER_03: Ping One's architecture is built to explicitly forbid that kind of opaque impersonation.
- 40:30SPEAKER_03: Instead of allowing a machine to act as the user, Ping One forces explicit delegation.
- 40:36SPEAKER_01: How does that look in practice?
- 40:38SPEAKER_03: Their authorization models require the system to explicitly declare to the resource server, I am agent X, I am operating on behalf of user Y, and I am explicitly authorized to perform action Z.
- 40:50SPEAKER_03: The entitlements are fine-grained, explicitly bound to the agent's identity, and most importantly, they are explicitly logged as delegated actions.
- 40:59SPEAKER_01: Closing the loop.
- 41:14SPEAKER_03: Non-human identities require purpose-built, highly restrictive, explicitly logged identity primitives.
- 41:21SPEAKER_01: Okay.
- 41:21SPEAKER_01: I see the architectural elegance here.
- 41:24SPEAKER_01: We have centralized blueprints, we have explicit delegation logging, and we have sidecar containers isolating the credentials.
- 41:30SPEAKER_01: It's a beautiful system.
- 41:31SPEAKER_02: It is.
- 41:32SPEAKER_01: But I'm going to throw a major architectural pushback at you.
- 41:35SPEAKER_02: Go ahead.
- 41:37SPEAKER_01: If we rely on a sidecar architecture, aren't we just moving the target?
- 41:41SPEAKER_01: Let's say I'm an APT29 level threat actor.
- 41:45SPEAKER_01: I compromise the host virtual machine where this Kubernetes pod is running.
- 41:50SPEAKER_02: Okay.
- 41:50SPEAKER_01: Instead of scraping GitHub for a hard-coded secret in the app code, I just execute a memory dump on the sidecar container.
- 41:57SPEAKER_01: Or I intercept the blueprint issued access token as it's passed over the loopback interface.
- 42:03SPEAKER_03: Right.
- 42:03SPEAKER_01: If I steal that valid unexpired access token from the sidecar's memory, I can just replay it from my own residential proxy network.
- 42:11SPEAKER_01: So how does this sidecar actually stop an advanced persistent threat?
- 42:16SPEAKER_01: Have we actually solved the problem, or have we just added a fancy layer of abstraction?
- 42:20SPEAKER_03: Aaron Powell That is exactly the right question an identity architect should be asking.
- 42:24SPEAKER_03: You are absolutely correct.
- 42:26SPEAKER_03: If an adversary gains root execution on the host, they can scrape the token from memory.
- 42:31SPEAKER_03: And the honest answer is that the architecture alone, the blueprint, the sidecar, the explicit delegation, does not stop the threat.
- 42:39SPEAKER_01: Aaron Powell Wait, really?
- 42:40SPEAKER_01: It doesn't stop it?
- 42:41SPEAKER_03: Aaron Powell Architecture merely isolates the credential, which raises the cost and complexity for the attacker, but it is not a silver bullet.
- 42:48SPEAKER_03: The architecture is just the engine.
- 42:50SPEAKER_03: Life cycle governance is the brakes.
- 42:52SPEAKER_03: And governance is what actually neutralizes the threat.
- 42:56SPEAKER_01: Ah, governance.
- 42:58SPEAKER_03: Even the most perfectly architected blueprint and sidecar implementation will instantly become a critical vulnerability if the human overseeing them vanishes and the agent is left to run indefinitely in the shadows.
- 43:12SPEAKER_01: We are right back to the orphaned application problem.
- 43:15SPEAKER_03: Aaron Powell Exactly.
- 43:16SPEAKER_03: The sidecar protects the token from accidental developer exposure in the moment, but rigorous life cycle governance protects the enterprise over time.
- 43:25SPEAKER_03: Furthermore, modern identity platforms paired this architecture with capabilities like continuous access evaluation or CAE.
- 43:34SPEAKER_01: Let's briefly explain CAE, because that directly answers my token theft scenario.
- 43:39SPEAKER_03: In traditional OAuth, an access token is valid for a set time, say one hour.
- 43:43SPEAKER_03: If an attacker steals it, they have one hour to use it, and the identity provider can't stop them because the resource server, like Exchange, is just validating the token's signature, not checking back with enter ID.
- 43:55SPEAKER_03: Continuous access evaluation changes that.
- 43:57SPEAKER_03: It creates a real time pub sub model.
- 44:00SPEAKER_03: Model between Intra ID and the resource provider.
- 44:03SPEAKER_03: If Intra ID detects a critical security event, like the human sponsor's account being disabled, or a sudden change in network location, it instantly pushes an alert to Exchange.
- 44:13SPEAKER_03: Exchange then immediately rejects the access token, even if it has 50 minutes of validity left.
- 44:19SPEAKER_01: So even if the attacker scrapes the token from the sidecar's memory, the moment they try to use it from a residential proxy IP, CAE flags the location anomaly and kills the token.
- 44:29SPEAKER_03: Exactly.
- 44:30SPEAKER_03: And this reliance on continuous governance leads us directly into the final and arguably most crucial piece of the modern identity puzzle: automated life cycle governance, succession, and session control.
- 44:41SPEAKER_01: Let's dive in.
- 44:43SPEAKER_01: How do we permanently structurally solve the orphaned identity problem?
- 44:48SPEAKER_01: If we've established that a machine identity is only safe if it has a human heartbeat tied to it, how do we enforce that across an enterprise with tens of thousands of agents?
- 44:58SPEAKER_03: We enforce it through a rigorous, non-bypassable mechanism called agent sponsorship, which is built directly into Microsoft Intra ID governance and lifecycle workflows.
- 45:08SPEAKER_01: Agent sponsorship.
- 45:10SPEAKER_03: Yes.
- 45:10SPEAKER_03: This mechanism fundamentally cures the orphaned app vulnerability by declaring a simple, unbreakable, programmatic rule.
- 45:18SPEAKER_03: Every single non-human identity in the tenant must have an accountable human sponsor.
- 45:24SPEAKER_03: Period.
- 45:24SPEAKER_01: No exceptions.
- 45:25SPEAKER_03: No more ghost applications created by an intern three years ago to test an integration.
- 45:29SPEAKER_01: Aaron Ross Powell Zero exceptions.
- 45:31SPEAKER_03: The creation of an agent identity primitive literally requires a designated human sponsor.
- 45:36SPEAKER_03: That human sponsor is cryptographically and administratively bound to that specific machine workload.
- 45:41SPEAKER_01: Aaron Powell And they are responsible for it.
- 45:43SPEAKER_03: Aaron Powell They are personally responsible for reviewing its access logs, responding to anomaly alerts, and periodically justifying its continued existence to the business.
- 45:51SPEAKER_01: Okay.
- 45:52SPEAKER_01: That sounds great in theory.
- 45:53SPEAKER_01: But humans are incredibly messy.
- 45:56SPEAKER_01: We are the weak link in the chain.
- 45:58SPEAKER_03: Aaron Powell We always are.
- 45:59SPEAKER_01: Aaron Powell What happens when that designated sponsor quits or gets fired or transfers to a completely different department?
- 46:06SPEAKER_01: This is exactly where the old service principle model fell apart and created the orphans.
- 46:12SPEAKER_01: Walk me through the exact mechanical flow of succession in this new governance paradigm.
- 46:17SPEAKER_03: This is where the true power of lifecycle workflows comes into play because they integrate deeply with the organization's HR information systems or HRIS.
- 46:26SPEAKER_03: Think workday, success factors, or whatever authoritative system the company uses.
- 46:30SPEAKER_03: Let's walk through a scenario.
- 46:32SPEAKER_03: Let's say our lead identity sponsor, Alice, puts in her two weeks' notice and leaves the organization on a Friday.
- 46:38SPEAKER_01: Right.
- 46:38SPEAKER_01: So on Friday at 5 p.m., HR updates her status to terminated in workday.
- 46:44SPEAKER_03: Exactly.
- 46:44SPEAKER_03: That HR status update instantly pushes a signal via automated provisioning to entra ID governance.
- 46:51SPEAKER_03: The lifecycle workflows engine detects that Alice is departing the enterprise.
- 46:55SPEAKER_01: Instantly.
- 46:56SPEAKER_03: Instantly.
- 46:57SPEAKER_03: The system queries the centralized agent registry to find every single blueprint and agent identity that Alice is currently sponsoring.
- 47:04SPEAKER_01: It maps her entire machine identity blast radius.
- 47:07SPEAKER_03: Yes.
- 47:08SPEAKER_03: And because the core rule of the system mandates absolute continuity of ownership, it automatically triggers a succession workflow.
- 47:15SPEAKER_03: It doesn't wait for a help desk ticket, it doesn't wait for an access review.
- 47:18SPEAKER_01: Wow.
- 47:19SPEAKER_03: It notifies any pre-configured co-sponsors, and simultaneously, it programmatically reassigns sponsorship accountability to Alice's direct manager, as defined in the Azure AD hierarchy.
- 47:31SPEAKER_01: So the manager's phone buzzes on Friday night.
- 47:33SPEAKER_03: Exactly.
- 47:34SPEAKER_03: The manager receives an automated alert stating, you are now the accountable sponsor for these five highly privileged autonomous agents previously managed by Alice.
- 47:43SPEAKER_03: Please review their access and business justification immediately.
- 47:47SPEAKER_01: That is robust.
- 47:49SPEAKER_03: The absolute key here is maintaining unbroken chains of custody.
- 47:53SPEAKER_03: No machine identity is ever left floating in the directory without an active, employed human owner.
- 48:00SPEAKER_01: That is brilliant.
- 48:01SPEAKER_01: It uses the organizational hierarchy to enforce accountability.
- 48:05SPEAKER_01: But let me throw another human problem at you.
- 48:08SPEAKER_01: What if an AI agent just stops being used?
- 48:11SPEAKER_03: Dormancy.
- 48:12SPEAKER_01: Right, dormancy.
- 48:14SPEAKER_01: What if a project ends, but no one remembers to decommission the agent?
- 48:18SPEAKER_01: Even with an active manager as a sponsor, humans suffer from massive alert fatigue.
- 48:23SPEAKER_01: The manager might just blindly click approve on the quarterly access review because they are too busy to investigate what the agent actually does.
- 48:31SPEAKER_03: That is a very real operational reality, and it's exactly why the platform includes automated dormancy detection and session revocation.
- 48:39SPEAKER_03: Lifecycle workflows don't just sit around waiting for a human manager to make a decision.
- 48:43SPEAKER_03: They actively track the sign-in inactivity thresholds of every single agent identity.
- 48:49SPEAKER_01: How does that work mechanically at the token level?
- 48:52SPEAKER_03: The system actively monitors the telemetry of token acquisition from the blueprints.
- 48:56SPEAKER_03: If an autonomous agent hasn't authenticated or requested a fresh access token in, say 30 days, or whatever specific threshold the enterprise security team sets, lifecycle workflows automatically triggers a remediation action.
- 49:10SPEAKER_01: Automatically?
- 49:11SPEAKER_03: Automatically.
- 49:12SPEAKER_03: It doesn't ask the sponsor for permission.
- 49:15SPEAKER_03: It programmatically disables the agent's account, strips its roles, and initiates offboarding tasks.
- 49:20SPEAKER_03: Its access is severed automatically, purely due to dormancy.
- 49:24SPEAKER_03: It enforces least privilege over time.
- 49:27SPEAKER_01: Okay, let's talk about the sharp end of the spear, the actual remediation action.
- 49:32SPEAKER_01: When a threat is detected by the SIEM, say a massive anomaly in how an agent is querying the graph API, or when a lifecycle event mandates an immediate emergency shutdown.
- 49:43SPEAKER_01: How is the access actually killed?
- 49:46SPEAKER_01: Detail the exact API mechanics for session invalidation for me.
- 49:50SPEAKER_03: The heavy hitter in the intra toolkit for this is a highly specific, highly destructive API endpoint.
- 49:56SPEAKER_03: Microsoft.directoryagent slash user slash invalidate all refresh tokens.
- 50:02SPEAKER_01: Invalidate all refresh tokens.
- 50:04SPEAKER_01: That sounds highly definitive.
- 50:05SPEAKER_03: It is the ultimate cryptographic kill switch.
- 50:08SPEAKER_03: When an automated task from a lifecycle workflow or a SOC analyst triggering an incident response playbook hits that endpoint, it instantly terminates all active sessions globally associated with that specific agent identity.
- 50:22SPEAKER_00: Instantly.
- 50:23SPEAKER_03: Instantly.
- 50:24SPEAKER_03: It cryptographically invalidates any active OAuth 2.0 refresh tokens held by the sidecar or the attacker.
- 50:30SPEAKER_01: So let's tie this back to the sidecar vulnerability scenario we debated earlier.
- 50:35SPEAKER_01: If an adversary like Midnight Blizzard has compromised the host, dumped the sidecar's memory, stolen a valid refresh token, and is currently attempting to replay it from their untraceable residential proxy network.
- 50:55SPEAKER_00: Wow.
- 50:55SPEAKER_03: The identity provider will outright reject any attempt to use it to mint new access tokens.
- 51:00SPEAKER_03: It prevents the replay of stolen tokens instantaneously across the entire global infrastructure, regardless of where the attacker is routing their traffic from.
- 51:14SPEAKER_01: Let's contrast this automated instant cryptographic revocation with the mitigations we saw during the 2021 Darkseid ransomware attack on the Colonial Pipeline, which we have the CISA advisory for right here.
- 51:36SPEAKER_01: Aaron Powell Yeah, it really is.
- 51:38SPEAKER_01: When the Dark Side affiliate gained access to Colonial Pipeline's corporate IT network and successfully deployed the ransomware payload, the pipeline company's leadership lacked confidence in their ability to cryptographically isolate the breach.
- 51:51SPEAKER_02: Right.
- 51:52SPEAKER_01: They were terrified the ransomware would laterally move across the boundary from the corporate IT network into the operational technology network, the OT network, which controls the actual physical flow of the gas pipeline.
- 52:03SPEAKER_03: Aaron Powell Exactly.
- 52:04SPEAKER_03: Because their identity and network architecture couldn't instantly and reliably revoke access across that IT OT boundary, the incident responders had to make a drastic physical choice.
- 52:16SPEAKER_03: They had to proactively manually disconnect the OT networks from the IT networks.
- 52:21SPEAKER_03: They literally sent engineers to physically pull the network cables and power down switches to ensure the ransomware couldn't bridge the gap.
- 52:28SPEAKER_03: That manual severing is what caused the massive business disruption and the subsequent gas shortages across the eastern seaboard.
- 52:40SPEAKER_01: And today, with these modern platforms.
- 52:42SPEAKER_03: Today's modern identity platforms aim to replace that manual network severing with automated, instantaneous identity token revocation.
- 52:50SPEAKER_03: If an anomaly is detected on an IT-side autonomous agent calling invalidate all refresh tokens, isolates that workload cryptographically in milliseconds.
- 53:00SPEAKER_01: That's incredible.
- 53:00SPEAKER_03: You sever the access mathematically without having to send an engineer in a truck to unplug a physical switch.
- 53:07SPEAKER_03: We are even seeing this push for automated, cryptographically enforced lifecycle management trickling down into legacy hybrid environments.
- 53:14SPEAKER_01: Like what?
- 53:15SPEAKER_03: For instance, look at the intra Kerberos Trust key rotation enforcement that Microsoft is slating to roll out in June 2026.
- 53:22SPEAKER_03: Microsoft is actually forcing baseline scope enforcement to ensure that even legacy on-premises active directory referral flows maintain strict, automated cryptographic hygiene.
- 53:33SPEAKER_03: The era of static keys is ending everywhere.
- 53:37SPEAKER_01: Okay.
- 53:37SPEAKER_01: I want to stress test this entire architecture one last time.
- 53:41SPEAKER_01: I want to build a highly specific edge case that combines the succession mechanic, the sidecar architecture, and the cryptographic kill switch.
- 53:50SPEAKER_01: Let's walk through exactly what happens when an autonomous agent attempts an out-of-band administrative call exactly after its human sponsor is flagged as departed in the HR data.
- 54:02SPEAKER_01: Walk me through the precise execution path, step by step with the timestamps.
- 54:07SPEAKER_03: This edge case is where the entire architectural symphony plays together.
- 54:10SPEAKER_03: Let's trace it.
- 54:11SPEAKER_03: Step one it's 5 p.m.
- 54:13SPEAKER_03: on Friday.
- 54:14SPEAKER_03: The HR system flags the sponsor.
- 54:16SPEAKER_03: Let's call him Bob as departed.
- 54:18SPEAKER_00: Okay, Bob is out.
- 54:20SPEAKER_03: Step two.
- 54:21SPEAKER_03: That HR data sinks instantly to ENTRA.
- 54:23SPEAKER_03: Entra lifecycle workflows trigger immediately.
- 54:26SPEAKER_03: The workflow recognizes Bob is gone, sees that he is the sole sponsor of a critical database reading agent, and instantly calls the invalidate all refresh tokens endpoint for all agents associated with Bob.
- 54:38SPEAKER_01: So the kill switch is flipped.
- 54:39SPEAKER_03: Step three, it is now 5.01 p.m.
- 54:42SPEAKER_03: Bob's autonomous agent, which is happily running in a background container in Azure, attempts to make a scheduled administrative API call to read a sensitive customer database.
- 54:52SPEAKER_03: Right.
- 54:52SPEAKER_03: Step four, the agent code, acting exactly as it was programmed, asks its tightly coupled off SDK sidecar for an access token for the database API.
- 55:02SPEAKER_03: The sidecar attempts to use its currently cached token.
- 55:05SPEAKER_01: Makes sense.
- 55:06SPEAKER_03: Step five, the sidecar presents the access token to the resource server guarding the database.
- 55:11SPEAKER_03: Because of continuous access evaluation policies, the resource server demands a fresh token validation.
- 55:17SPEAKER_03: The sidecar, realizing it needs a new token, attempts to use its cached refresh token to negotiate with intra ID.
- 55:23SPEAKER_01: And here's the catch.
- 55:24SPEAKER_03: Step six, the refresh attempt hits the intra ID endpoints.
- 55:29SPEAKER_03: It is explicitly, cryptographically denied because that specific refresh token was invalidated in step two by the lifecycle workflow.
- 55:36SPEAKER_02: Boom.
- 55:37SPEAKER_03: Step seven, the API call is hard blocked.
- 55:40SPEAKER_03: The sidecar logs a terminal authentication failure.
- 55:43SPEAKER_03: The agent is halted in its tracks.
- 55:45SPEAKER_01: The risk of a departed employee's orphaned workload going rogue and leaking 37 million records is completely, utterly neutralized.
- 55:54SPEAKER_03: Completely neutralized autonomously within seconds of the HR system updating, without a single human SOC analyst having to write a block rule.
- 56:03SPEAKER_01: I have to note the elegance of this design.
- 56:06SPEAKER_01: It is almost philosophical, but highly technical in its execution.
- 56:11SPEAKER_01: We are essentially building a cryptographic dead man switch into the very fabric of our infrastructure.
- 56:17SPEAKER_01: If the human pulse stops, meaning the employee leaves the company or transitions roles, the machine's access dies with it instantly.
- 56:26SPEAKER_01: Unless it is explicitly passed on to another living human via the succession workflow.
- 56:32SPEAKER_01: Is this the definitive end of the set it and forget it era of IT?
- 56:37SPEAKER_03: It absolutely has to be.
- 58:26SPEAKER_03: Which logically led us to the modern architectural remediation.
- 58:30SPEAKER_03: Enterprise agent identity platforms like Microsoft Entra Agent ID and Ping One's identity for AI.
- 58:37SPEAKER_00: Right.
- 58:38SPEAKER_03: We analyzed the massive shift to centralized blueprints, the critical importance of explicit delegation over opaque impersonation, and how the sidecar auth SDK physically isolates raw credentials from application code.
- 58:50SPEAKER_01: And finally, we covered the governance engine that makes it all actually work: agent sponsorship, HR-driven lifecycle workflows, dormancy detection, and the automated cryptographic kill switch of invalidate all refresh tokens.
- 59:06SPEAKER_01: Understanding these underlying API mechanics and architectural paradigms isn't just theory anymore.
- 59:12SPEAKER_01: If you are listening to this, it is absolutely non-negotiable for securing the modern enterprise.
- 59:18SPEAKER_01: You cannot protect what you cannot see, and you cannot govern an identity that lacks a life cycle.
- 59:24SPEAKER_02: Exactly.
- 59:25SPEAKER_02: The paradigm has shifted, and the architecture must follow.
- 59:28SPEAKER_01: Which leaves us with a final highly provocative thought to mull over.
- 59:33SPEAKER_01: We are fundamentally shifting our entire defensive architecture.
- 59:37SPEAKER_01: We are inextricably binding our highly privileged machine identities to human sponsors, and we are automating the cryptographic death of those machines via HR data.
- 59:47SPEAKER_02: Right.
- 59:47SPEAKER_01: So think about this.
- 59:49SPEAKER_01: What happens when highly capable threat actors like APT-29 realize they can no longer easily breach the sidecars?
- 59:57SPEAKER_01: They can't effectively steal the tokens because of continuous access evaluation, and they can no longer hide in the impersonation logs.
- 1:00:05SPEAKER_02: Oh wow.
- 1:00:06SPEAKER_01: What happens when they stop targeting the machine identities directly and instead focus their entire espionage apparatus purely on compromising the HR information systems like workday or success factors, to manipulate the lifecycle workflows themselves?
- 1:00:22SPEAKER_01: If HR data now controls the cryptographic kill switches for your entire AI agent workforce, isn't the HR database the new domain controller?
- 1:00:32SPEAKER_03: That is the next great frontier of identity threat architecture.
- 1:00:35SPEAKER_01: Something for you to explore on your own.
- 1:00:37SPEAKER_01: Thanks for joining us on this deep dive.
- 1:00:41SPEAKER_01: The forensic reality of the Midnight Blizzard compromise demonstrates that an enterprise identity boundary is only as strong as its least governed service principle.
- 1:00:51SPEAKER_01: Mitigating machine level privilege escalation requires shifting from static application secrets to continuous posture enforcement.
- 1:00:59SPEAKER_01: Join us next Thursday for Episode 2, Slack AI, Model Context Protocol, and Indirect Prompt Injection.
- 1:01:07SPEAKER_01: We will dissect how untrusted context inside enterprise collaboration channels can hijack autonomous tool calling, and how principal architects deploy transaction tokens and strict MCP authorization boundaries to prevent agentic data exfiltration.
- 1:01:24SPEAKER_01: Tune in next Thursday for episode two and catch our companion series, Season 3, the Non Human Identity Blueprint, every Tuesday.
- 1:01:33SPEAKER_01: I'm Ernie Prescott.
- 1:01:35SPEAKER_01: Connect with me on LinkedIn at www.linkedin.com forward slash IN slash Ernie Prescott.