You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Security] Learning Hub content.xml parsed with XXE-enabled XmlDocument #47
UserInterface/PostSharp.VisualStudio/View/LearningHub/ContentDownloader.cs:72-83 (and the cached re-parse at :26-29)
Description
content.xml (downloaded from the Learning Hub feed) is parsed by a bare XmlDocument with no XmlResolver = null / DtdProcessing restriction; on .NET Framework 4.7.2 the default XmlUrlResolver resolves DTDs/external entities → XXE (local file disclosure / SSRF) when the feed content is attacker-controlled. CA3075 is globally disabled.
Exploit scenario
A hijacked feed server, or an active TLS-MITM with a valid cert for www.postsharp.net, returns a content.xml whose DTD exfiltrates a local file or forces internal requests; resolved as the developer when the Learning Hub tool window loads. (The feed is HTTPS, so passive MITM is blocked.)
Recommendation
Set document.XmlResolver = null (and DtdProcessing = Prohibit) before both Load calls.
Severity notes
Most debatable: AC — H because the attacker must control the trusted HTTPS server; if you score the XXE itself (conditioned on a compromised feed) as trivially reliable, AC:L → 8.2 High.
Activity
[-]Placeholder for #52[/-][+][Security] Learning Hub content.xml parsed with XXE-enabled XmlDocument[/+]gfraiteur commentedon Jun 27, 2026
Released in v2024.0.24.
-- Claude for Gael
gfraiteur commentedon Jun 27, 2026
Also released in v2026.0.13, which includes the upstream 2024.0.24 changes.
-- Claude for Gael