CVE-2020-35628
📋 TL;DR
This is a critical out-of-bounds read vulnerability in CGAL's Nef polygon-parsing functionality that can lead to arbitrary code execution. Attackers can exploit it by providing malicious input to trigger memory corruption. Systems using vulnerable versions of CGAL library are affected.
💻 Affected Systems
- CGAL (Computational Geometry Algorithms Library)
📦 What is this software?
Computational Geometry Algorithms Library by Cgal
View all CVEs affecting Computational Geometry Algorithms Library →
Fedora by Fedoraproject
Fedora by Fedoraproject
⚠️ Risk & Real-World Impact
Worst Case
Remote code execution leading to complete system compromise, data theft, or ransomware deployment.
Likely Case
Application crash (denial of service) or limited information disclosure through memory reads.
If Mitigated
Application crash without code execution if memory protections are enabled.
🎯 Exploit Status
Exploitation requires crafting malicious polygon data to trigger the oob read. No public exploit code available.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: CGAL-5.1.2 and later
Vendor Advisory: https://www.cgal.org/
Restart Required: Yes
Instructions:
1. Update CGAL to version 5.1.2 or later. 2. Recompile applications using CGAL. 3. Restart affected services.
🔧 Temporary Workarounds
Input Validation
allImplement strict input validation for polygon data before passing to CGAL functions.
Memory Protection
linuxEnable ASLR and other memory protection mechanisms to reduce exploit success.
sysctl -w kernel.randomize_va_space=2
🧯 If You Can't Patch
- Network segmentation to isolate vulnerable systems
- Implement strict input validation and sanitization
🔍 How to Verify
Check if Vulnerable:
Check CGAL version: dpkg -l libcgal-dev or rpm -q cgal
Check Version:
dpkg -l libcgal-dev 2>/dev/null | grep ^ii || rpm -q cgal 2>/dev/null || cgal-config --version 2>/dev/null
Verify Fix Applied:
Verify CGAL version is 5.1.2 or later
📡 Detection & Monitoring
Log Indicators:
- Application crashes with segmentation faults
- Memory access violation errors
Network Indicators:
- Unusual network connections from CGAL applications
SIEM Query:
source="application_logs" AND ("segmentation fault" OR "memory violation") AND process="*cgal*"
🔗 References
- https://lists.debian.org/debian-lts-announce/2021/05/msg00002.html
- https://lists.debian.org/debian-lts-announce/2022/12/msg00011.html
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/E4J344OKKDLPRN422OYRR46HDEN6MM6P/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/NB5SF5OJR2DSV7CC6U7FVW5VJSJO5EKV/
- https://security.gentoo.org/glsa/202305-34
- https://talosintelligence.com/vulnerability_reports/TALOS-2020-1225
- https://lists.debian.org/debian-lts-announce/2021/05/msg00002.html
- https://lists.debian.org/debian-lts-announce/2022/12/msg00011.html
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/E4J344OKKDLPRN422OYRR46HDEN6MM6P/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/NB5SF5OJR2DSV7CC6U7FVW5VJSJO5EKV/
- https://security.gentoo.org/glsa/202305-34
- https://talosintelligence.com/vulnerability_reports/TALOS-2020-1225