CVE-2022-1379
📋 TL;DR
CVE-2022-1379 is a URL restriction bypass vulnerability in PlantUML that allows attackers to bypass security profile restrictions and perform server-side request forgery (SSRF). This enables access to internal resources or requests to third-party servers. Anyone using PlantUML versions prior to 1.2022.5 is affected.
💻 Affected Systems
- PlantUML
📦 What is this software?
Fedora by Fedoraproject
Fedora by Fedoraproject
Plantuml by Plantuml
⚠️ Risk & Real-World Impact
Worst Case
Complete compromise of internal network resources, data exfiltration from internal systems, or use as a pivot point for further attacks.
Likely Case
Unauthorized access to internal HTTP services, metadata services, or internal APIs that should be protected.
If Mitigated
Limited impact with proper network segmentation, egress filtering, and security profiles configured.
🎯 Exploit Status
Exploitation requires ability to provide input to PlantUML, which is common in documentation systems and web applications.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.2022.5
Vendor Advisory: https://github.com/plantuml/plantuml/commit/93e5964e5f35914f3f7b89de620c596795550083
Restart Required: Yes
Instructions:
1. Update PlantUML to version 1.2022.5 or later. 2. Restart any services using PlantUML. 3. Verify the fix by testing with known exploit payloads.
🔧 Temporary Workarounds
Restrict Input Sources
allLimit PlantUML input to trusted sources only and implement input validation.
Network Segmentation
allImplement network controls to restrict PlantUML server's outbound connections.
🧯 If You Can't Patch
- Implement strict network egress filtering to limit PlantUML's outbound connections
- Run PlantUML in isolated network segments with no access to sensitive internal resources
🔍 How to Verify
Check if Vulnerable:
Check PlantUML version using 'java -jar plantuml.jar -version' or check application dependencies.
Check Version:
java -jar plantuml.jar -version
Verify Fix Applied:
Test with known SSRF payloads that should be blocked in patched versions.
📡 Detection & Monitoring
Log Indicators:
- Unusual outbound HTTP requests from PlantUML process
- Requests to internal IP ranges or metadata services
Network Indicators:
- Unexpected outbound HTTP traffic from PlantUML servers to internal networks
SIEM Query:
source="plantuml" AND (dest_ip=169.254.169.254 OR dest_ip IN [10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16])
🔗 References
- https://github.com/plantuml/plantuml/commit/93e5964e5f35914f3f7b89de620c596795550083
- https://huntr.dev/bounties/0d737527-86e1-41d1-9d37-b2de36bc063a
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/CHUE4G5CAJUD7L2QPJF6U4JYQTP7CNNL/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/J4DP36G2VBOZUNQIUZ5LVJKZIVO4SDAI/
- https://github.com/plantuml/plantuml/commit/93e5964e5f35914f3f7b89de620c596795550083
- https://huntr.dev/bounties/0d737527-86e1-41d1-9d37-b2de36bc063a
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/CHUE4G5CAJUD7L2QPJF6U4JYQTP7CNNL/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/J4DP36G2VBOZUNQIUZ5LVJKZIVO4SDAI/