CVE-2025-64723

4.4 MEDIUM

📋 TL;DR

Arduino IDE for macOS versions before 2.3.7 had overly permissive security entitlements that bypass macOS Hardened Runtime protections. This allows attackers to inject malicious dynamic libraries into the application process, potentially gaining access to all TCC permissions granted to Arduino IDE. Only macOS users running Arduino IDE versions before 2.3.7 are affected.

💻 Affected Systems

Products:
  • Arduino IDE
Versions: All versions before 2.3.7
Operating Systems: macOS
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects macOS versions. Windows and Linux versions are not affected. Requires Arduino IDE to have been granted TCC permissions for the attack to be meaningful.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers gain full access to all TCC permissions granted to Arduino IDE (camera, microphone, location, files, etc.) and can execute arbitrary code with those permissions.

🟠

Likely Case

Local attackers or malicious applications could inject code to access sensitive data or system resources that Arduino IDE has permission to access.

🟢

If Mitigated

With proper macOS security controls and updated software, the attack surface is significantly reduced to only trusted applications.

🌐 Internet-Facing: LOW - This is a local privilege escalation vulnerability requiring local access or malicious application execution.
🏢 Internal Only: MEDIUM - Internal users with local access could exploit this if running vulnerable versions, but requires user interaction or malicious application execution.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires local access and ability to execute code or inject libraries. Exploitation depends on what TCC permissions Arduino IDE has been granted by the user.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.3.7

Vendor Advisory: https://github.com/arduino/arduino-ide/security/advisories/GHSA-vf5j-xhwq-8vqj

Restart Required: Yes

Instructions:

1. Open Arduino IDE. 2. Go to Arduino IDE → Check for Updates. 3. Install version 2.3.7 or later. 4. Restart Arduino IDE after installation.

🔧 Temporary Workarounds

Remove Arduino IDE TCC permissions

macos

Revoke all TCC permissions granted to Arduino IDE in System Settings to limit potential damage if exploited.

1. Open System Settings → Privacy & Security
2. Review each permission category (Camera, Microphone, Files and Folders, etc.)
3. Remove Arduino IDE from any allowed applications

Use alternative development environments

all

Temporarily use PlatformIO, VS Code with Arduino extension, or Arduino CLI until patched.

🧯 If You Can't Patch

  • Limit Arduino IDE's TCC permissions to only essential functions
  • Run Arduino IDE in a sandboxed environment or virtual machine

🔍 How to Verify

Check if Vulnerable:

Check Arduino IDE version in About Arduino IDE menu. If version is below 2.3.7, you are vulnerable.

Check Version:

In Arduino IDE: Arduino IDE → About Arduino IDE

Verify Fix Applied:

Verify Arduino IDE version is 2.3.7 or higher in About Arduino IDE menu.

📡 Detection & Monitoring

Log Indicators:

  • Unexpected dynamic library loading in Arduino IDE process
  • Unusual TCC permission usage by Arduino IDE

Network Indicators:

  • None - this is a local privilege escalation vulnerability

SIEM Query:

process_name:"Arduino IDE" AND (event_type:"library_load" OR event_type:"tcc_access")

🔗 References

📤 Share & Export