{
  "schemaVersion": "1.0",
  "generatedAt": "2026-11-08T15:15:25.046Z",
  "name": "AADSTS code pages on brambrinkmeier.com",
  "description": "One entry per published AADSTS code page, with the links to its HTML page, its Markdown twin and its JSON record. labReproduced is true only when the page records a lab reproduction (date and scenario in the JSON record).",
  "license": "CC BY 4.0",
  "licenseUrl": "https://creativecommons.org/licenses/by/4.0/",
  "attribution": "Bram Brinkmeier, https://brambrinkmeier.com/ (Bram Brinkmeier), CC BY 4.0",
  "documentation": "https://brambrinkmeier.com/for-agents/",
  "count": 118,
  "labReproducedCount": 35,
  "codes": [
    {
      "code": "16000",
      "title": "AADSTS16000: Account isn't in the tenant the app uses (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/16000/",
      "json": "https://brambrinkmeier.com/api/aadsts/16000.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/16000.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50001",
      "title": "AADSTS50001 fix: resource disabled or doesn't exist",
      "url": "https://brambrinkmeier.com/entra/aadsts/50001/",
      "json": "https://brambrinkmeier.com/api/aadsts/50001.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50001.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "50011",
      "title": "AADSTS50011: Reply URL does not match",
      "url": "https://brambrinkmeier.com/entra/aadsts/50011/",
      "json": "https://brambrinkmeier.com/api/aadsts/50011.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50011.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "50013",
      "title": "AADSTS50013 fix: invalid assertion in on-behalf-of flow",
      "url": "https://brambrinkmeier.com/entra/aadsts/50013/",
      "json": "https://brambrinkmeier.com/api/aadsts/50013.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50013.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "50020",
      "title": "AADSTS50020: Account from identity provider not in tenant",
      "url": "https://brambrinkmeier.com/entra/aadsts/50020/",
      "json": "https://brambrinkmeier.com/api/aadsts/50020.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50020.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-25"
    },
    {
      "code": "50027",
      "title": "AADSTS50027: JWT token is invalid or malformed (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/50027/",
      "json": "https://brambrinkmeier.com/api/aadsts/50027.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50027.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50034",
      "title": "AADSTS50034 fix: user account not found in the tenant",
      "url": "https://brambrinkmeier.com/entra/aadsts/50034/",
      "json": "https://brambrinkmeier.com/api/aadsts/50034.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50034.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "50052",
      "title": "AADSTS50052: Password exceeds the maximum length (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/50052/",
      "json": "https://brambrinkmeier.com/api/aadsts/50052.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50052.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50053",
      "title": "AADSTS50053: Account locked or sign-in blocked",
      "url": "https://brambrinkmeier.com/entra/aadsts/50053/",
      "json": "https://brambrinkmeier.com/api/aadsts/50053.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50053.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "high",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50054",
      "title": "AADSTS50054: Old password used for sign-in (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/50054/",
      "json": "https://brambrinkmeier.com/api/aadsts/50054.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50054.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50055",
      "title": "AADSTS50055: Password expired",
      "url": "https://brambrinkmeier.com/entra/aadsts/50055/",
      "json": "https://brambrinkmeier.com/api/aadsts/50055.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50055.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50057",
      "title": "AADSTS50057 fix: the user account is disabled",
      "url": "https://brambrinkmeier.com/entra/aadsts/50057/",
      "json": "https://brambrinkmeier.com/api/aadsts/50057.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50057.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "50058",
      "title": "AADSTS50058: Session information isn't sufficient for single sign-on",
      "url": "https://brambrinkmeier.com/entra/aadsts/50058/",
      "json": "https://brambrinkmeier.com/api/aadsts/50058.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50058.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-24"
    },
    {
      "code": "50059",
      "title": "AADSTS50059: No tenant-identifying information in the request (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/50059/",
      "json": "https://brambrinkmeier.com/api/aadsts/50059.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50059.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50072",
      "title": "AADSTS50072: User needs to enroll for second factor authentication",
      "url": "https://brambrinkmeier.com/entra/aadsts/50072/",
      "json": "https://brambrinkmeier.com/api/aadsts/50072.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50072.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-25"
    },
    {
      "code": "50074",
      "title": "AADSTS50074: strong authentication is required (MFA)",
      "url": "https://brambrinkmeier.com/entra/aadsts/50074/",
      "json": "https://brambrinkmeier.com/api/aadsts/50074.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50074.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "50076",
      "title": "AADSTS50076: MFA required to access the resource",
      "url": "https://brambrinkmeier.com/entra/aadsts/50076/",
      "json": "https://brambrinkmeier.com/api/aadsts/50076.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50076.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "50079",
      "title": "AADSTS50079: User must register for MFA",
      "url": "https://brambrinkmeier.com/entra/aadsts/50079/",
      "json": "https://brambrinkmeier.com/api/aadsts/50079.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50079.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "high",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "50089",
      "title": "AADSTS50089: Flow token expired, sign in again (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/50089/",
      "json": "https://brambrinkmeier.com/api/aadsts/50089.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50089.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50097",
      "title": "AADSTS50097 fix: device authentication is required",
      "url": "https://brambrinkmeier.com/entra/aadsts/50097/",
      "json": "https://brambrinkmeier.com/api/aadsts/50097.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50097.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "50105",
      "title": "AADSTS50105: User not assigned to a role for the app",
      "url": "https://brambrinkmeier.com/entra/aadsts/50105/",
      "json": "https://brambrinkmeier.com/api/aadsts/50105.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50105.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-25"
    },
    {
      "code": "50125",
      "title": "AADSTS50125: Password reset registration interrupt",
      "url": "https://brambrinkmeier.com/entra/aadsts/50125/",
      "json": "https://brambrinkmeier.com/api/aadsts/50125.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50125.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "50126",
      "title": "AADSTS50126: Invalid username or password",
      "url": "https://brambrinkmeier.com/entra/aadsts/50126/",
      "json": "https://brambrinkmeier.com/api/aadsts/50126.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50126.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "high",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50133",
      "title": "AADSTS50133: Session invalid after password change or expiry",
      "url": "https://brambrinkmeier.com/entra/aadsts/50133/",
      "json": "https://brambrinkmeier.com/api/aadsts/50133.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50133.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "50140",
      "title": "AADSTS50140: Keep me signed in interrupt",
      "url": "https://brambrinkmeier.com/entra/aadsts/50140/",
      "json": "https://brambrinkmeier.com/api/aadsts/50140.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50140.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "50146",
      "title": "AADSTS50146 fix: custom claims need an app signing key",
      "url": "https://brambrinkmeier.com/entra/aadsts/50146/",
      "json": "https://brambrinkmeier.com/api/aadsts/50146.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50146.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "50155",
      "title": "AADSTS50155: Device authentication failed (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/50155/",
      "json": "https://brambrinkmeier.com/api/aadsts/50155.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50155.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50158",
      "title": "AADSTS50158: External security challenge not satisfied",
      "url": "https://brambrinkmeier.com/entra/aadsts/50158/",
      "json": "https://brambrinkmeier.com/api/aadsts/50158.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50158.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "50173",
      "title": "AADSTS50173: Grant expired because it was revoked",
      "url": "https://brambrinkmeier.com/entra/aadsts/50173/",
      "json": "https://brambrinkmeier.com/api/aadsts/50173.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50173.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "50194",
      "title": "AADSTS50194 fix: single-tenant app used the /common endpoint",
      "url": "https://brambrinkmeier.com/entra/aadsts/50194/",
      "json": "https://brambrinkmeier.com/api/aadsts/50194.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50194.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "50196",
      "title": "AADSTS50196: App is stuck in a sign-in loop (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/50196/",
      "json": "https://brambrinkmeier.com/api/aadsts/50196.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/50196.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "51004",
      "title": "AADSTS51004 fix: user account not in the directory",
      "url": "https://brambrinkmeier.com/entra/aadsts/51004/",
      "json": "https://brambrinkmeier.com/api/aadsts/51004.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/51004.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "53000",
      "title": "AADSTS53000: Device not compliant",
      "url": "https://brambrinkmeier.com/entra/aadsts/53000/",
      "json": "https://brambrinkmeier.com/api/aadsts/53000.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/53000.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "53001",
      "title": "AADSTS53001: Device not domain joined",
      "url": "https://brambrinkmeier.com/entra/aadsts/53001/",
      "json": "https://brambrinkmeier.com/api/aadsts/53001.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/53001.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "53003",
      "title": "AADSTS53003: Access blocked by Conditional Access",
      "url": "https://brambrinkmeier.com/entra/aadsts/53003/",
      "json": "https://brambrinkmeier.com/api/aadsts/53003.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/53003.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-11-06"
    },
    {
      "code": "54005",
      "title": "AADSTS54005: Authorization code already used (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/54005/",
      "json": "https://brambrinkmeier.com/api/aadsts/54005.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/54005.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "65001",
      "title": "AADSTS65001: User or admin has not consented to the app",
      "url": "https://brambrinkmeier.com/entra/aadsts/65001/",
      "json": "https://brambrinkmeier.com/api/aadsts/65001.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/65001.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "65002",
      "title": "AADSTS65002 fix: Microsoft app not preauthorized for API",
      "url": "https://brambrinkmeier.com/entra/aadsts/65002/",
      "json": "https://brambrinkmeier.com/api/aadsts/65002.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/65002.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "65004",
      "title": "AADSTS65004: User declined to consent to access the app",
      "url": "https://brambrinkmeier.com/entra/aadsts/65004/",
      "json": "https://brambrinkmeier.com/api/aadsts/65004.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/65004.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-25"
    },
    {
      "code": "65005",
      "title": "AADSTS65005 fix: app asks for a resource it didn't register",
      "url": "https://brambrinkmeier.com/entra/aadsts/65005/",
      "json": "https://brambrinkmeier.com/api/aadsts/65005.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/65005.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "70002",
      "title": "AADSTS70002 fix: error validating client credentials",
      "url": "https://brambrinkmeier.com/entra/aadsts/70002/",
      "json": "https://brambrinkmeier.com/api/aadsts/70002.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/70002.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "70008",
      "title": "AADSTS70008: The refresh token has expired or was revoked (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/70008/",
      "json": "https://brambrinkmeier.com/api/aadsts/70008.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/70008.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "70016",
      "title": "AADSTS70016: Device code authorization is pending (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/70016/",
      "json": "https://brambrinkmeier.com/api/aadsts/70016.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/70016.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-31"
    },
    {
      "code": "70021",
      "title": "AADSTS70021: No matching federated identity credential (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/70021/",
      "json": "https://brambrinkmeier.com/api/aadsts/70021.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/70021.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "70025",
      "title": "AADSTS70025: App has no federated identity credentials (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/70025/",
      "json": "https://brambrinkmeier.com/api/aadsts/70025.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/70025.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "70043",
      "title": "AADSTS70043: Refresh token expired due to sign-in frequency checks",
      "url": "https://brambrinkmeier.com/entra/aadsts/70043/",
      "json": "https://brambrinkmeier.com/api/aadsts/70043.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/70043.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-25"
    },
    {
      "code": "70044",
      "title": "AADSTS70044: Session expired by sign-in frequency checks (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/70044/",
      "json": "https://brambrinkmeier.com/api/aadsts/70044.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/70044.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "75011",
      "title": "AADSTS75011: Sign-in method doesn't match what the app asked for (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/75011/",
      "json": "https://brambrinkmeier.com/api/aadsts/75011.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/75011.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "76021",
      "title": "AADSTS76021 fix: SAML request not signed but required",
      "url": "https://brambrinkmeier.com/entra/aadsts/76021/",
      "json": "https://brambrinkmeier.com/api/aadsts/76021.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/76021.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "90002",
      "title": "AADSTS90002: Tenant not found (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/90002/",
      "json": "https://brambrinkmeier.com/api/aadsts/90002.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90002.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "90009",
      "title": "AADSTS90009 fix: app requests a token for itself",
      "url": "https://brambrinkmeier.com/entra/aadsts/90009/",
      "json": "https://brambrinkmeier.com/api/aadsts/90009.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90009.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "90014",
      "title": "AADSTS90014 fix: required field missing from the request",
      "url": "https://brambrinkmeier.com/entra/aadsts/90014/",
      "json": "https://brambrinkmeier.com/api/aadsts/90014.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90014.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "90015",
      "title": "AADSTS90015 fix: sign-in request URL is too long",
      "url": "https://brambrinkmeier.com/entra/aadsts/90015/",
      "json": "https://brambrinkmeier.com/api/aadsts/90015.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90015.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "90019",
      "title": "AADSTS90019 fix: no tenant found in the sign-in request",
      "url": "https://brambrinkmeier.com/entra/aadsts/90019/",
      "json": "https://brambrinkmeier.com/api/aadsts/90019.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90019.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "90023",
      "title": "AADSTS90023: Entra rejected the request as invalid (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/90023/",
      "json": "https://brambrinkmeier.com/api/aadsts/90023.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90023.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-31"
    },
    {
      "code": "90072",
      "title": "AADSTS90072: External account doesn't exist in the tenant, MFA can't be satisfied",
      "url": "https://brambrinkmeier.com/entra/aadsts/90072/",
      "json": "https://brambrinkmeier.com/api/aadsts/90072.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90072.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-24"
    },
    {
      "code": "90094",
      "title": "AADSTS90094: \"Need admin approval\" screen (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/90094/",
      "json": "https://brambrinkmeier.com/api/aadsts/90094.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90094.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "90095",
      "title": "AADSTS90095: \"Approval required\" screen (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/90095/",
      "json": "https://brambrinkmeier.com/api/aadsts/90095.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90095.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "90133",
      "title": "AADSTS90133: Device code flow not supported on /common or /consumers (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/90133/",
      "json": "https://brambrinkmeier.com/api/aadsts/90133.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/90133.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "135011",
      "title": "AADSTS135011: Device used during authentication is disabled",
      "url": "https://brambrinkmeier.com/entra/aadsts/135011/",
      "json": "https://brambrinkmeier.com/api/aadsts/135011.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/135011.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "165000",
      "title": "AADSTS165000: User session context is missing (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/165000/",
      "json": "https://brambrinkmeier.com/api/aadsts/165000.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/165000.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "500011",
      "title": "AADSTS500011: The resource principal was not found in the tenant",
      "url": "https://brambrinkmeier.com/entra/aadsts/500011/",
      "json": "https://brambrinkmeier.com/api/aadsts/500011.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500011.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "500014",
      "title": "AADSTS500014 fix: resource service principal is disabled",
      "url": "https://brambrinkmeier.com/entra/aadsts/500014/",
      "json": "https://brambrinkmeier.com/api/aadsts/500014.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500014.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "500021",
      "title": "AADSTS500021 fix: tenant blocked by tenant restrictions",
      "url": "https://brambrinkmeier.com/entra/aadsts/500021/",
      "json": "https://brambrinkmeier.com/api/aadsts/500021.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500021.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "500031",
      "title": "AADSTS500031: Signing certificate for the app not found (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/500031/",
      "json": "https://brambrinkmeier.com/api/aadsts/500031.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500031.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "500113",
      "title": "AADSTS500113: No reply address is registered for the app (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/500113/",
      "json": "https://brambrinkmeier.com/api/aadsts/500113.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500113.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "500121",
      "title": "AADSTS500121: User didn't complete the MFA prompt",
      "url": "https://brambrinkmeier.com/entra/aadsts/500121/",
      "json": "https://brambrinkmeier.com/api/aadsts/500121.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500121.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "500200",
      "title": "AADSTS500200: Personal Microsoft account not supported by this app (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/500200/",
      "json": "https://brambrinkmeier.com/api/aadsts/500200.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500200.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "500341",
      "title": "AADSTS500341: User account has been deleted from the directory (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/500341/",
      "json": "https://brambrinkmeier.com/api/aadsts/500341.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500341.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "500571",
      "title": "AADSTS500571: The guest user account is disabled (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/500571/",
      "json": "https://brambrinkmeier.com/api/aadsts/500571.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/500571.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "501051",
      "title": "AADSTS501051: Client app isn't assigned to a role for the API (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/501051/",
      "json": "https://brambrinkmeier.com/api/aadsts/501051.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/501051.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "530002",
      "title": "AADSTS530002: Your device is required to be compliant (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/530002/",
      "json": "https://brambrinkmeier.com/api/aadsts/530002.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/530002.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "530003",
      "title": "AADSTS530003: Your device is required to be managed (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/530003/",
      "json": "https://brambrinkmeier.com/api/aadsts/530003.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/530003.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "530004",
      "title": "AADSTS530004: AcceptCompliantDevice setting isn't configured (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/530004/",
      "json": "https://brambrinkmeier.com/api/aadsts/530004.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/530004.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "530031",
      "title": "AADSTS530031: Access policy does not allow token issuance (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/530031/",
      "json": "https://brambrinkmeier.com/api/aadsts/530031.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/530031.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "530032",
      "title": "AADSTS530032: Blocked by a tenant security policy",
      "url": "https://brambrinkmeier.com/entra/aadsts/530032/",
      "json": "https://brambrinkmeier.com/api/aadsts/530032.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/530032.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-11"
    },
    {
      "code": "650052",
      "title": "AADSTS650052 fix: app needs a service your tenant lacks",
      "url": "https://brambrinkmeier.com/entra/aadsts/650052/",
      "json": "https://brambrinkmeier.com/api/aadsts/650052.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/650052.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "650056",
      "title": "AADSTS650056: Misconfigured application (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/650056/",
      "json": "https://brambrinkmeier.com/api/aadsts/650056.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/650056.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700003",
      "title": "AADSTS700003: Device object was not found in the tenant (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700003/",
      "json": "https://brambrinkmeier.com/api/aadsts/700003.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700003.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700016",
      "title": "AADSTS700016: Application not found in the directory",
      "url": "https://brambrinkmeier.com/entra/aadsts/700016/",
      "json": "https://brambrinkmeier.com/api/aadsts/700016.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700016.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700024",
      "title": "AADSTS700024: Client assertion is not within its valid time range (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700024/",
      "json": "https://brambrinkmeier.com/api/aadsts/700024.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700024.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700051",
      "title": "AADSTS700051: Access tokens not enabled for the app (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700051/",
      "json": "https://brambrinkmeier.com/api/aadsts/700051.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700051.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700054",
      "title": "AADSTS700054: ID tokens not enabled for the app (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700054/",
      "json": "https://brambrinkmeier.com/api/aadsts/700054.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700054.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700081",
      "title": "AADSTS700081: Refresh token reached its maximum lifetime (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700081/",
      "json": "https://brambrinkmeier.com/api/aadsts/700081.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700081.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700082",
      "title": "AADSTS700082: The refresh token has expired due to inactivity",
      "url": "https://brambrinkmeier.com/entra/aadsts/700082/",
      "json": "https://brambrinkmeier.com/api/aadsts/700082.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700082.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-25"
    },
    {
      "code": "700211",
      "title": "AADSTS700211: Federated credential issuer doesn't match (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700211/",
      "json": "https://brambrinkmeier.com/api/aadsts/700211.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700211.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700212",
      "title": "AADSTS700212: Federated credential audience doesn't match (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700212/",
      "json": "https://brambrinkmeier.com/api/aadsts/700212.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700212.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700213",
      "title": "AADSTS700213: Federated credential subject doesn't match (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700213/",
      "json": "https://brambrinkmeier.com/api/aadsts/700213.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700213.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "700226",
      "title": "AADSTS700226: Only managed identity tokens work with the Entra ID issuer (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/700226/",
      "json": "https://brambrinkmeier.com/api/aadsts/700226.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/700226.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "750054",
      "title": "AADSTS750054 fix: SAML request missing from the sign-in URL",
      "url": "https://brambrinkmeier.com/entra/aadsts/750054/",
      "json": "https://brambrinkmeier.com/api/aadsts/750054.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/750054.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "900023",
      "title": "AADSTS900023: Tenant identifier is not a valid tenant ID or domain (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/900023/",
      "json": "https://brambrinkmeier.com/api/aadsts/900023.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/900023.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "900144",
      "title": "AADSTS900144: Request body is missing a required parameter (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/900144/",
      "json": "https://brambrinkmeier.com/api/aadsts/900144.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/900144.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "900439",
      "title": "AADSTS900439: Azure Government app signed in on the public endpoint (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/900439/",
      "json": "https://brambrinkmeier.com/api/aadsts/900439.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/900439.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "900561",
      "title": "AADSTS900561 fix: endpoint only accepts POST, got GET",
      "url": "https://brambrinkmeier.com/entra/aadsts/900561/",
      "json": "https://brambrinkmeier.com/api/aadsts/900561.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/900561.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "901002",
      "title": "AADSTS901002 fix: resource parameter sent to v2.0 endpoint",
      "url": "https://brambrinkmeier.com/entra/aadsts/901002/",
      "json": "https://brambrinkmeier.com/api/aadsts/901002.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/901002.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "1002016",
      "title": "AADSTS1002016: Client uses TLS 1.0, 1.1 or 3DES (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/1002016/",
      "json": "https://brambrinkmeier.com/api/aadsts/1002016.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/1002016.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "1003031",
      "title": "AADSTS1003031: Admin consent failed, app lists no API permissions (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/1003031/",
      "json": "https://brambrinkmeier.com/api/aadsts/1003031.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/1003031.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "5000211",
      "title": "AADSTS5000211: Blocked by a tenant restrictions policy (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/5000211/",
      "json": "https://brambrinkmeier.com/api/aadsts/5000211.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/5000211.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "5000224",
      "title": "AADSTS5000224 fix: tenant blocked for suspected fraud",
      "url": "https://brambrinkmeier.com/entra/aadsts/5000224/",
      "json": "https://brambrinkmeier.com/api/aadsts/5000224.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/5000224.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-11-01"
    },
    {
      "code": "5000225",
      "title": "AADSTS5000225: Tenant blocked due to inactivity (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/5000225/",
      "json": "https://brambrinkmeier.com/api/aadsts/5000225.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/5000225.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "5000611",
      "title": "AADSTS5000611: Key Derivation Function version 1 is invalid (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/5000611/",
      "json": "https://brambrinkmeier.com/api/aadsts/5000611.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/5000611.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "5002730",
      "title": "AADSTS5002730: Unsupported key for the JWT signing algorithm (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/5002730/",
      "json": "https://brambrinkmeier.com/api/aadsts/5002730.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/5002730.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "7000014",
      "title": "AADSTS7000014: Device code value isn't valid (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/7000014/",
      "json": "https://brambrinkmeier.com/api/aadsts/7000014.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7000014.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "7000110",
      "title": "AADSTS7000110: Code or refresh token used by a different app (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/7000110/",
      "json": "https://brambrinkmeier.com/api/aadsts/7000110.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7000110.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "7000112",
      "title": "AADSTS7000112: The application is disabled (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/7000112/",
      "json": "https://brambrinkmeier.com/api/aadsts/7000112.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7000112.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "7000215",
      "title": "AADSTS7000215: Invalid client secret is provided",
      "url": "https://brambrinkmeier.com/entra/aadsts/7000215/",
      "json": "https://brambrinkmeier.com/api/aadsts/7000215.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7000215.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "medium",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "7000216",
      "title": "AADSTS7000216: No client credential in a client_credentials request (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/7000216/",
      "json": "https://brambrinkmeier.com/api/aadsts/7000216.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7000216.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "7000218",
      "title": "AADSTS7000218: Client secret or assertion missing from the request (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/7000218/",
      "json": "https://brambrinkmeier.com/api/aadsts/7000218.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7000218.md",
      "labReproduced": true,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "7000222",
      "title": "AADSTS7000222: The provided client secret keys are expired",
      "url": "https://brambrinkmeier.com/entra/aadsts/7000222/",
      "json": "https://brambrinkmeier.com/api/aadsts/7000222.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7000222.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-24"
    },
    {
      "code": "7002121",
      "title": "AADSTS7002121: Federated credential audience doesn't match the assertion (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/7002121/",
      "json": "https://brambrinkmeier.com/api/aadsts/7002121.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7002121.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "7002138",
      "title": "AADSTS7002138: Federated credential subject differs in case (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/7002138/",
      "json": "https://brambrinkmeier.com/api/aadsts/7002138.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/7002138.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "9002313",
      "title": "AADSTS9002313: Request is malformed or invalid (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/9002313/",
      "json": "https://brambrinkmeier.com/api/aadsts/9002313.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/9002313.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "9002326",
      "title": "AADSTS9002326: Cross-origin token request from a non-SPA app (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/9002326/",
      "json": "https://brambrinkmeier.com/api/aadsts/9002326.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/9002326.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "9002327",
      "title": "AADSTS9002327: SPA token redeemed without a browser Origin (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/9002327/",
      "json": "https://brambrinkmeier.com/api/aadsts/9002327.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/9002327.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "9002331",
      "title": "AADSTS9002331: App is for personal Microsoft accounts only (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/9002331/",
      "json": "https://brambrinkmeier.com/api/aadsts/9002331.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/9002331.md",
      "labReproduced": false,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "9002341",
      "title": "AADSTS9002341: User must allow Windows single sign-on (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/9002341/",
      "json": "https://brambrinkmeier.com/api/aadsts/9002341.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/9002341.md",
      "labReproduced": false,
      "inMicrosoftReference": true,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "9002346",
      "title": "AADSTS9002346: App is for personal Microsoft accounts only (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/9002346/",
      "json": "https://brambrinkmeier.com/api/aadsts/9002346.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/9002346.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    },
    {
      "code": "9010010",
      "title": "AADSTS9010010: Resource parameter doesn't match the requested scopes (fix)",
      "url": "https://brambrinkmeier.com/entra/aadsts/9010010/",
      "json": "https://brambrinkmeier.com/api/aadsts/9010010.json",
      "markdown": "https://brambrinkmeier.com/entra/aadsts/9010010.md",
      "labReproduced": true,
      "inMicrosoftReference": false,
      "attackSignal": "low",
      "lastUpdated": "2026-10-30"
    }
  ]
}
