{"vulnerability": "CVE-2026-61824", "sightings": [{"uuid": "a25a4ae1-27b2-4237-83fe-e4a4e8829637", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "CVE-2026-61824", "type": "seen", "source": "https://gist.github.com/alon710/b7fa1b8a029c3e91e2e782156a414d06", "content": "# CVE-2026-61824: CVE-2026-61824: High-Severity Cross-Site Scripting (XSS) via Unsanitized Site Extractors in Defuddle\n\n&gt; **CVSS Score:** 8.2\n&gt; **Published:** 2026-08-21\n&gt; **Full Report:** https://cvereports.com/reports/CVE-2026-61824\n\n## Summary\nCVE-2026-61824 is a high-severity Cross-Site Scripting (XSS) vulnerability in kepano/defuddle before version 0.19.1. Custom site extractors for platforms such as X/Twitter, Substack, and YouTube constructed HTML representations via template string interpolation without output escaping. This allowed malicious pages to bypass standard parser sanitization routines and execute arbitrary JavaScript.\n\n## TL;DR\nUnsanitized input interpolation in site extractors allows remote attackers to execute arbitrary client-side JavaScript via crafted page metadata.\n\n## Exploit Status: POC\n\n## Technical Details\n\n- **CWE ID**: CWE-79\n- **Attack Vector**: Network\n- **CVSS Score**: 8.2 (High)\n- **Exploit Status**: Proof-of-Concept in tests\n- **KEV Status**: Not Listed\n- **Ransomware Use**: No\n\n## Affected Systems\n\n- kepano/defuddle applications scraping Twitter, Substack, or YouTube\n- **defuddle**: &lt; 0.19.1 (Fixed in: `0.19.1`)\n\n## Mitigation\n\n- Upgrade defuddle to version 0.19.1 or higher.\n- Implement mandatory downstream HTML sanitization using DOMPurify or sanitize-html.\n- Enforce a strict Content Security Policy (CSP) blocking inline scripts.\n\n**Remediation Steps:**\n1. Run 'npm install defuddle@0.19.1' or update package.json dependencies.\n2. Locate all locations in the codebase where Defuddle's output is rendered into the DOM.\n3. Wrap the output rendering block in a robust sanitization function call.\n4. Verify that inline events like 'onerror' and 'onclick' are fully stripped.\n\n## References\n\n- [GHSA-jg4p-g6xj-4qmf: XSS via unescaped attribute interpolation in site extractors](https://github.com/kepano/defuddle/security/advisories/GHSA-jg4p-g6xj-4qmf)\n- [GitHub Pull Request #326](https://github.com/kepano/defuddle/pull/326)\n- [Defuddle v0.19.1 Release](https://github.com/kepano/defuddle/releases/tag/0.19.1)\n\n\n---\n*Generated by [CVEReports](https://cvereports.com/reports/CVE-2026-61824) - Automated Vulnerability Intelligence*", "creation_timestamp": "2026-08-22T08:32:19.247754Z"}, {"uuid": "801bbe53-f916-4c38-b501-1900b90f2484", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "CVE-2026-61824", "type": "seen", "source": "https://bsky.app/profile/thehackerwire.bsky.social/post/3mtmxucky752o", "content": "\ud83d\udfe0 CVE-2026-61824 - High (8.2)\n\nDefuddle cleans up HTML pages. Prior to 0.19.1, site extractors interpolate page-derived image al...\n\nhttps://www.thehackerwire.com/vulnerability/CVE-2026-61824/\n\n#infosec #cybersecurity #CVE #vulnerability #security #patchstack", "creation_timestamp": "2026-08-22T00:01:31.980055Z"}]}