{"answers":{"affected":"3 open source packages ship an affected version, including Products.isurlinportal and products-isurlinportal. It affects 1 product.","exploited":"There is no known exploitation of CVE-2021-32806 in the wild and no public exploit code.","fix":"Upgrade Products.isurlinportal to 1.2.0 or later.","what":"CVE-2021-32806 is a medium-severity vulnerability in plone Products.isurlinportal, published on 2 Aug 2021. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2021-32806 and fix it if it is affected.\n\nWhat it is: CVE-2021-32806 is a medium-severity vulnerability in plone Products.isurlinportal, published on 2 Aug 2021. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.\nExploitation: There is no known exploitation of CVE-2021-32806 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- Products.isurlinportal (PyPI): affected all versions; fixed in 1.2.0\n- products-isurlinportal (PyPI): affected all versions; fixed in 1.2.0\n- products-isurlinportal (PyPI): affected all versions; fixed in 1.2.0\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2021-32806/ (Markdown: https://insights.sbomify.com/CVE-2021-32806/index.md)","id":"CVE-2021-32806","markdown":"https://insights.sbomify.com/CVE-2021-32806/index.md","name":"CVE-2021-32806","record":{"aliases":["GHSA-q3m9-9fj2-mfwr","PYSEC-2021-323"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["security_bypass"],"network_reachable":"yes","non_default_config":false,"product_category":"Plone URL validation library","requires_auth":"none","summary":"Attackers can redirect victims to malicious sites via flawed URL validation, facilitating phishing attacks against Plone users.","user_interaction":"required","vuln_class":"open_redirect"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"isurlinportal","vendor":"plone"}],"cvss":{"score":6.5,"severity":"medium","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N","version":"3.1"},"cwes":[{"id":"CWE-601","name":"URL Redirection to Untrusted Site"}],"description":"Products.isurlinportal is a replacement for isURLInPortal method in Plone. Versions of Products.isurlinportal prior to 1.2.0 have an Open Redirect vulnerability. Various parts of Plone use the 'is url in portal' check for security, mostly to see if it is safe to redirect to a url. A url like `https://example.org` is not in the portal. The url `https:example.org` without slashes is considered to be in the portal. When redirecting, some browsers go to `https://example.org`, others give an error. Attackers may use this to redirect victims to their site, especially as part of a phishing attack. The problem has been patched in Products.isurlinportal 1.2.0.","ecosystems":["PyPI"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"URL Redirection to Untrusted Site ('Open Redirect') in Products.isurlinportal","id":"CVE-2021-32806","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"PyPI","product":null,"products":[],"type":"open_redirect","year":"2021"},"n_packages":3,"n_references":3,"next":{"headline":"Remote Code Execution via unsafe classes in otherwise permitted modules","id":"CVE-2021-32807"},"packages":[{"ecosystem":"PyPI","fixed":["1.2.0"],"introduced":["0"],"last_affected":[],"package":"Products.isurlinportal","purl":null,"source":"GHSA-q3m9-9fj2-mfwr"},{"ecosystem":"PyPI","fixed":["1.2.0"],"introduced":["0"],"last_affected":[],"package":"products-isurlinportal","purl":"pkg:pypi/products-isurlinportal","source":"GHSA-q3m9-9fj2-mfwr"},{"ecosystem":"PyPI","fixed":["1.2.0"],"introduced":["0"],"last_affected":[],"package":"products-isurlinportal","purl":"pkg:pypi/products-isurlinportal","source":"PYSEC-2021-323"}],"prev":{"headline":"URL Redirection to Untrusted Site ('Open Redirect') in Flask-AppBuilder","id":"CVE-2021-32805"},"products":["Products.isurlinportal"],"published":"2021-08-02","related":[{"cvss_score":5.3,"headline":"Products.isurlinportal: Possible open redirect when using more than 2 forward slashes","id":"CVE-2026-28413","kev_date_added":null,"published":"2026-03-05"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CC BY 4.0","name":"PyPA Advisory Database","prefix":"PYSEC"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2024-08-03","vendors":["plone"]},"summary":"Attackers can redirect victims to malicious sites via flawed URL validation, facilitating phishing attacks against Plone users.","url":"https://insights.sbomify.com/CVE-2021-32806/"}