CVE-2025-64724
📋 TL;DR
Arduino IDE for macOS versions before 2.3.7 installs with world-writable file permissions on sensitive application components. This allows any local user to replace legitimate files with malicious code, which then executes with the privileges of any user who launches the application, enabling privilege escalation and unauthorized data access. Only macOS users running vulnerable Arduino IDE versions are affected.
💻 Affected Systems
- Arduino IDE
📦 What is this software?
Arduino Ide by Arduino
⚠️ Risk & Real-World Impact
Worst Case
A local attacker gains root privileges on the system, leading to complete system compromise, data theft, and persistent backdoor installation.
Likely Case
A local user with limited privileges escalates to another user's privileges, accessing their files and potentially installing malware that runs when that user launches Arduino IDE.
If Mitigated
With proper file permissions and user separation, impact is limited to the specific user account running the vulnerable application.
🎯 Exploit Status
Exploitation requires local system access and basic file manipulation skills. No authentication bypass needed beyond local user access.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.3.7
Vendor Advisory: https://github.com/arduino/arduino-ide/security/advisories/GHSA-3fvj-pgqw-fgw6
Restart Required: Yes
Instructions:
1. Download Arduino IDE 2.3.7 or later from official Arduino website. 2. Uninstall previous version. 3. Install new version. 4. Restart system if prompted.
🔧 Temporary Workarounds
Fix file permissions manually
macOSManually set correct file permissions on Arduino IDE installation directory to prevent unauthorized writes
sudo chmod -R o-w /Applications/Arduino\ IDE.app
🧯 If You Can't Patch
- Restrict local user access to systems with vulnerable Arduino IDE installed
- Monitor file integrity of Arduino IDE application directory for unauthorized changes
🔍 How to Verify
Check if Vulnerable:
Check Arduino IDE version in About menu. If version is below 2.3.7, check file permissions: ls -la /Applications/Arduino\ IDE.app
Check Version:
Open Arduino IDE, go to Arduino IDE > About Arduino IDE
Verify Fix Applied:
Verify version is 2.3.7 or higher and check file permissions show no world-writable flags: ls -la /Applications/Arduino\ IDE.app | grep '^d.*w.*w.*w'
📡 Detection & Monitoring
Log Indicators:
- File modification events in /Applications/Arduino IDE.app directory
- Unauthorized privilege escalation attempts
Network Indicators:
- None - this is a local vulnerability
SIEM Query:
source="file_integrity" AND path="/Applications/Arduino IDE.app/*" AND action="modified"
🔗 References
- https://github.com/arduino/arduino-ide/pull/2805/commits/5d282f38496e96dcba02818536c0835bd684ec98
- https://github.com/arduino/arduino-ide/releases/tag/2.3.7
- https://github.com/arduino/arduino-ide/security/advisories/GHSA-3fvj-pgqw-fgw6
- https://support.arduino.cc/hc/en-us/articles/24329484618652-ASEC-25-004-Arduino-IDE-v2-3-7-Resolves-Multiple-Vulnerabilities