{"items":[{"id":"NVI-00018448","kind":"vulnerability","title":"@hulumi/policies bypasses IAM-role policy checks when the role trusts multiple OIDC providers","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-g759-4pxw-6692","CVE-2026-48032"],"plain_summary":"GitHub lists this reviewed advisory for @hulumi/policies. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-256ea6b18d7ebd37c4064d662ec48643"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-256ea6b18d7ebd37c4064d662ec48643","url":"https://github.com/advisories/GHSA-g759-4pxw-6692","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-g759-4pxw-6692","publisher":"GitHub Advisory Database","observed_at":"2026-11-06T15:13:31.161Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-256ea6b18d7ebd37c4064d662ec48643"],"technology":"@hulumi/policies","known_exclusions":[],"conditions_summary":"**Affected:** `@hulumi/policies` `< 1.4.0` — **Fixed in:** `1.4.0` — **Severity:** High — **CWE-697 (Incorrect Comparison)**\n\n#### Summary\n\nAWS IAM trust policies can list more than one federated identity provider — for example, a role that accepts BOTH GitHub Actions OIDC and Google's OIDC. The `G_OIDC_1` and `G_OIDC_2` policy rules are supposed to flag IAM roles whose GitHub-OIDC trust is too permissive (e.g. wildcard `sub:` conditions that would let any branch or any pull request assume the role).\n\nThe bug: when the role's `Principal.Federated` field was a JSON array of multiple providers, the rules failed to recognise that GitHub Actions was one of them. The providers list was coerced into a single comma-joined string, the matcher only looked at the start, and the GitHub OIDC hostname was lost in the join. Both rules concluded \"this isn't a GitHub-OIDC role\" and skipped the wildcard check.\n\n#### Impact\n\nA trust policy that listed the real GitHub OIDC provider ARN alongside any second provider would slip past both detectors. Consumers using `HulumiHardeningPack` or `HulumiGithubHardeningPack` could ship an IAM role with wildcard `sub:` conditions (allowing untrusted PRs from for","public_affected_ranges":["< 1.4.0"]}],"null_published_at":"2026-11-07T07:07:39.837Z","source_updated_at":"2026-06-10T13:37:10.000Z","source_disclosed_at":"2026-06-10T13:37:08.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-11-06T15:13:31.161Z"}],"next_cursor":null,"snapshot_revision":"42594"}