{"answers":{"affected":"It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-40496 exists.","fix":"No fix has been published for CVE-2026-40496 yet. Limit exposure of the affected software until one is available.","what":"CVE-2026-40496 is a high-severity vulnerability in freescout-help-desk freescout, published on 21 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-40496 and fix it if it is affected.\n\nWhat it is: CVE-2026-40496 is a high-severity vulnerability in freescout-help-desk freescout, published on 21 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-40496 exists.\n\nAffected product: freescout-help-desk freescout. No package-level version data is available, so check the vendor advisory linked from the reference page.\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-2026-40496/ (Markdown: https://insights.sbomify.com/CVE-2026-40496/index.md)","id":"CVE-2026-40496","markdown":"https://insights.sbomify.com/CVE-2026-40496/index.md","name":"CVE-2026-40496","record":{"aliases":["GHSA-2783-wxmm-wmwr"],"analysis":{"component_type":"web_application","fix_type":"upgrade","impacts":["data_read"],"network_reachable":"yes","non_default_config":false,"product_category":"FreeScout help desk","requires_auth":"none","summary":"Unauthenticated attackers can brute-force predictable attachment tokens to download private files from FreeScout help desk instances.","user_interaction":"not_required","vuln_class":"weak_cryptography"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"freescout","vendor":"freescout"}],"cvss":{"score":8.8,"severity":"high","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:P","version":"4.0"},"cwes":[{"id":"CWE-340","name":"Generation of Predictable Numbers or Identifiers"},{"id":"CWE-330","name":"Use of Insufficiently Random Values"}],"description":"FreeScout is a free self-hosted help desk and shared mailbox. Prior to version 1.8.213, attachment download tokens are generated using a weak and predictable formula: `md5(APP_KEY + attachment_id + size)`. Since attachment_id is sequential and size can be brute-forced in a small range, an unauthenticated attacker can forge valid tokens and download any private attachment without credentials. Version 1.8.213 fixes the issue.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":false,"headline":"FreeScout has Predictable Attachment Token that Allows Unauthenticated Private File Download via Brute Force","id":"CVE-2026-40496","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"weak_cryptography","year":"2026"},"n_packages":0,"n_references":3,"next":{"headline":"FreeScout Vulnerable to CSS Injection via Stored Style Tag in Mailbox Signature (CSRF Token Exfiltration)","id":"CVE-2026-40497"},"packages":[],"prev":{"headline":"FOSSBilling version exposed via asset cache buster","id":"CVE-2026-40495"},"products":["freescout"],"published":"2026-04-21","related":[{"cvss_score":10,"headline":"FreeScout 1.8.206 Patch Bypass for CVE-2026-27636 via Zero-Width Space Character Leads to Remote Code Execution","id":"CVE-2026-28289","kev_date_added":null,"published":"2026-03-03"},{"cvss_score":9.8,"headline":"FreeScout's Predictable Authentication Token Enables Account Takeover","id":"CVE-2026-27637","kev_date_added":null,"published":"2026-02-25"},{"cvss_score":9.3,"headline":"FreeScout: Stored XSS via Unescaped Email Template Rendering ({!! $thread-\u003ebody !!})","id":"CVE-2026-32754","kev_date_added":null,"published":"2026-03-19"},{"cvss_score":9.1,"headline":"FreeScout OS Command Injection vulnerability","id":"CVE-2024-29185","kev_date_added":null,"published":"2024-03-22"},{"cvss_score":8.9,"headline":"FreeScout has Authentication Bypass and Information Disclosure in SystemController via /system/cron","id":"CVE-2026-40498","kev_date_added":null,"published":"2026-04-21"},{"cvss_score":8.8,"headline":"FreeScout: Missing .htaccess in Restricted File Extensions Allows Remote Code Execution on Apache","id":"CVE-2026-27636","kev_date_added":null,"published":"2026-02-25"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"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":"yes","exploitation":"poc","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-04-21","vendors":["freescout-help-desk"]},"summary":"Unauthenticated attackers can brute-force predictable attachment tokens to download private files from FreeScout help desk instances.","url":"https://insights.sbomify.com/CVE-2026-40496/"}