{"action":"Upgrade products-isurlinportal to 2.1.0 or later.","affected":[{"fixed":"2.1.0","introduced":"0"},{"fixed":"3.1.0","introduced":"3.0.0"}],"component":"products-isurlinportal","cve_ids":["CVE-2026-28413"],"ecosystem":"PyPI","epss":0.00277,"exploited":false,"fixed_versions":["2.1.0","3.1.0"],"ghsa_id":"GHSA-43gx-6gv6-3jcp","id":"tcs_01M5KGQPJ2FAYC05SVFSJ2XF7A","modified_at":"2026-05-20T09:19:11.857191Z","published_at":"2026-03-05T21:16:22.023Z","references":["https://osv.dev/vulnerability/PYSEC-2026-112","https://github.com/plone/Products.isurlinportal/security/advisories/GHSA-43gx-6gv6-3jcp"],"severity":{"label":"medium","score":6.1},"sources":[{"source":"osv","source_id":"PYSEC-2026-112","url":"https://osv.dev/vulnerability/PYSEC-2026-112"}],"summary":"Products.isurlinportal is a replacement for isURLInPortal method in Plone. Prior to versions 2.1.0, 3.1.0, and 4.0.0, a url /login?came_from=////evil.example may redirect to an external website after"}