{"answers":{"affected":"3 open source packages ship an affected version, including github.com/lin-snow/Ech0 and github.com/lin-snow/ech0.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-79661 exists.","fix":"Upgrade github.com/lin-snow/Ech0 to 1.4.8-0.20260503035905-cecc2c19b590 or later.","what":"CVE-2026-79661 is a medium-severity missing authorization vulnerability in lin-snow Ech0, published on 25 Aug 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-79661 and fix it if it is affected.\n\nWhat it is: CVE-2026-79661 is a medium-severity missing authorization vulnerability in lin-snow Ech0, published on 25 Aug 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-79661 exists.\n\nAffected packages and fixed versions:\n- github.com/lin-snow/Ech0 (Go): affected all versions; fixed in 1.4.8-0.20260503035905-cecc2c19b590\n- github.com/lin-snow/Ech0 (Go): affected all versions; fixed in 1.4.8-0.20260503035905-cecc2c19b590\n- github.com/lin-snow/ech0 (Go): affected all versions; fixed in 1.4.8-0.20260503035905-cecc2c19b590\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-79661/ (Markdown: https://insights.sbomify.com/CVE-2026-79661/index.md)","id":"CVE-2026-79661","markdown":"https://insights.sbomify.com/CVE-2026-79661/index.md","name":"CVE-2026-79661","record":{"aliases":["GHSA-7xcp-744q-324g","GHSA-pj6q-4vq4-r8cg","GO-2026-5541"],"analysis":{"component_type":"web_application","fix_type":"upgrade","impacts":["data_modify","denial_of_service"],"network_reachable":"yes","non_default_config":false,"product_category":"Ech0 web application","requires_auth":"none","summary":"Unauthenticated attackers can modify favorite counts and cause denial of service by exploiting an unprotected API endpoint in Ech0.","user_interaction":"not_required","vuln_class":"missing_authorization"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"VulnCheck","cpe":[],"cvss":{"score":6.9,"severity":"medium","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N","version":"4.0"},"cwes":[{"id":"CWE-770","name":"Allocation of Resources Without Limits or Throttling"}],"description":"Ech0 through 4.5.6 registers the PUT /api/echo/like/:id endpoint on the public router group without authentication or rate limiting. Unauthenticated attackers can increment the fav_count counter of any echo (including private echoes) by supplying its UUID, which can be harvested from the public GET /api/echo/page feed. Repeated requests are accepted without deduplication, each triggering a database write and a four-key cache invalidation, allowing attackers to inflate popularity metrics and amplify load on the database and cache. Fixed in 4.7.3.","ecosystems":["Go"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":true,"headline":"Ech0 before 4.7.3 Unauthenticated fav_count Modification","id":"CVE-2026-79661","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"Go","product":null,"products":[],"type":"missing_authorization","year":"2026"},"n_packages":3,"n_references":2,"next":{"headline":"Ech0 before 4.7.3 OAuth Redirect URI Validation Bypass","id":"CVE-2026-79662"},"packages":[{"ecosystem":"Go","fixed":["1.4.8-0.20260503035905-cecc2c19b590"],"introduced":["0"],"last_affected":[],"package":"github.com/lin-snow/Ech0","purl":null,"source":"GHSA-pj6q-4vq4-r8cg"},{"ecosystem":"Go","fixed":["1.4.8-0.20260503035905-cecc2c19b590"],"introduced":["0"],"last_affected":[],"package":"github.com/lin-snow/Ech0","purl":"pkg:golang/github.com/lin-snow/Ech0","source":"GHSA-pj6q-4vq4-r8cg"},{"ecosystem":"Go","fixed":["1.4.8-0.20260503035905-cecc2c19b590"],"introduced":["0"],"last_affected":[],"package":"github.com/lin-snow/ech0","purl":"pkg:golang/github.com/lin-snow/ech0","source":"GO-2026-5541"}],"prev":{"headline":"Ech0 before 4.7.3 Email Disclosure via Public API","id":"CVE-2026-79660"},"products":["Ech0"],"published":"2026-08-25","related":[],"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":"Go Vulnerability Database","prefix":"GO"},{"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-08-27","vendors":["lin-snow"]},"summary":"Unauthenticated attackers can modify favorite counts and cause denial of service by exploiting an unprotected API endpoint in Ech0.","url":"https://insights.sbomify.com/CVE-2026-79661/"}