CVE-2024-34490
📋 TL;DR
This CVE describes an insecure temporary file usage vulnerability in Maxima's plotting facilities. A local attacker can create predictable filenames in /tmp in advance to control file contents, potentially leading to arbitrary code execution or data manipulation. This affects users running Maxima with plotting functionality on multi-user systems.
💻 Affected Systems
- Maxima
⚠️ Manual Verification Required
This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.
Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).
🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Local privilege escalation leading to full system compromise if Maxima runs with elevated privileges and attacker-controlled files are executed.
Likely Case
Data corruption, denial of service, or limited information disclosure through file manipulation in /tmp directory.
If Mitigated
Minimal impact if proper file permissions restrict /tmp access or Maxima runs in isolated environments.
🎯 Exploit Status
Exploitation requires local access to the system and knowledge of predictable filename patterns used by Maxima.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Commit 51704c or later
Vendor Advisory: https://sourceforge.net/p/maxima/bugs/3755/
Restart Required: No
Instructions:
1. Update Maxima to version with commit 51704c or later. 2. For source installations: git pull from Maxima repository and rebuild. 3. For package managers: Use updated package when available.
🔧 Temporary Workarounds
Secure /tmp directory permissions
linuxRestrict /tmp directory permissions to prevent other users from creating or modifying files
chmod 1777 /tmp
chmod 700 /tmp/maxima_* (if specific patterns known)
Use private temporary directory
linuxConfigure Maxima to use a private, user-specific temporary directory
export TMPDIR=$HOME/.maxima_tmp
mkdir -p $HOME/.maxima_tmp
🧯 If You Can't Patch
- Disable Maxima plotting functionality if not required
- Run Maxima in isolated containers or VMs with restricted /tmp access
🔍 How to Verify
Check if Vulnerable:
Check Maxima version: maxima --version. If version is 5.47.0 or earlier and commit hash is before 51704c, system is vulnerable.
Check Version:
maxima --version 2>/dev/null | head -1
Verify Fix Applied:
Verify Maxima version is after commit 51704c or test plotting functions while monitoring /tmp for predictable filenames.
📡 Detection & Monitoring
Log Indicators:
- Failed file operations in /tmp with Maxima process
- Unexpected file creations in /tmp by Maxima
Network Indicators:
- None - this is a local filesystem vulnerability
SIEM Query:
process_name:"maxima" AND file_path:"/tmp/*" AND (file_create OR file_modify)