ghsa-35vc-w93w-75c2
Vulnerability from github
Impact
Using programmatic access on protected sites, one can get a signed login URL with pomerium_redirect_uri set to an arbitrary URL. Then, if the user has already logged into Pomerium, they will be redirected to the specified pomerium_redirect_uri with a JWT attached. This allows an outside attacker to get a signed login URL that, upon visiting it, will redirect a victim to the attacker’s site. This creates an issue of Open Redirect and, more seriously, JWT leakage.
With a leaked JWT, the attacker will be able to unveil the victim’s identity (.e.g. email address) by supplying the JWT to the authenticate service or verify.pomerium.com. In addition, if an application integrating Pomerium only verifies the iss claim and others but not the aud claim, the attacker will be able to access it as the victim.
Specific Go Packages Affected
github.com/pomerium/pomerium/proxy
Patches
Patched in Pomerium v0.13.4
For more information
If you have any questions or comments about this advisory * Open an issue in pomerium * Email us at security@pomerium.com
{ "affected": [ { "package": { "ecosystem": "Go", "name": "github.com/pomerium/pomerium" }, "ranges": [ { "events": [ { "introduced": "0" }, { "fixed": "0.13.4" } ], "type": "ECOSYSTEM" } ] } ], "aliases": [ "CVE-2021-29651" ], "database_specific": { "cwe_ids": [ "CWE-200", "CWE-601" ], "github_reviewed": true, "github_reviewed_at": "2021-05-20T20:25:40Z", "nvd_published_at": null, "severity": "MODERATE" }, "details": "### Impact\nUsing programmatic access on protected sites, one can get a signed login URL with pomerium_redirect_uri set to an arbitrary URL. Then, if the user has already logged into Pomerium, they will be redirected to the specified pomerium_redirect_uri with a JWT attached. This allows an outside attacker to get a signed login URL that, upon visiting it, will redirect a victim to the attacker\u2019s site. This creates an issue of Open Redirect and, more seriously, JWT leakage.\n\nWith a leaked JWT, the attacker will be able to unveil the victim\u2019s identity (.e.g. email address) by supplying the JWT to the authenticate service or verify.pomerium.com. In addition, if an application integrating Pomerium only verifies the iss claim and others but not the aud claim, the attacker will be able to access it as the victim.\n\n### Specific Go Packages Affected\ngithub.com/pomerium/pomerium/proxy\n\n### Patches\nPatched in Pomerium v0.13.4\n\n### For more information\nIf you have any questions or comments about this advisory\n* Open an issue in [pomerium](http://github.com/pomerium/pomerium)\n* Email us at [security@pomerium.com](mailto:security@pomerium.com)", "id": "GHSA-35vc-w93w-75c2", "modified": "2023-10-02T12:09:08Z", "published": "2021-05-21T16:24:34Z", "references": [ { "type": "WEB", "url": "https://github.com/pomerium/pomerium/security/advisories/GHSA-35vc-w93w-75c2" }, { "type": "ADVISORY", "url": "https://nvd.nist.gov/vuln/detail/CVE-2021-29651" }, { "type": "WEB", "url": "https://github.com/pomerium/pomerium/pull/2049" } ], "schema_version": "1.4.0", "severity": [ { "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:L/A:N", "type": "CVSS_V3" } ], "summary": "JWT leak via Open Redirect in Programmatic access" }
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.