CVE-2025-13911

6.4 MEDIUM

📋 TL;DR

This vulnerability allows authenticated administrators in Ignition SCADA systems to execute arbitrary Python code with SYSTEM-level privileges on Windows. Attackers can upload malicious project files containing Python scripts that create bind shells or perform other unauthorized actions. This affects Ignition installations using Python scripting for automation.

💻 Affected Systems

Products:
  • Ignition SCADA
Versions: Versions using Python scripting capabilities
Operating Systems: Windows
Default Config Vulnerable: ⚠️ Yes
Notes: Requires Python scripting enabled and administrator access to upload project files

⚠️ 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.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise with SYSTEM-level privileges, enabling attackers to install persistent backdoors, exfiltrate sensitive industrial data, disrupt industrial operations, or pivot to other systems on the network.

🟠

Likely Case

Authenticated administrators or attackers who compromise admin credentials can execute arbitrary code, potentially gaining full control of the SCADA server and accessing connected industrial systems.

🟢

If Mitigated

With proper access controls and Python library restrictions, impact is limited to authorized automation functions only, preventing unauthorized code execution.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: HIGH

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated administrator access but is straightforward once credentials are obtained

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Check vendor advisory for specific patched versions

Vendor Advisory: https://security.inductiveautomation.com/

Restart Required: Yes

Instructions:

1. Review vendor advisory at security.inductiveautomation.com 2. Apply recommended patches 3. Restart Ignition services 4. Verify Python library restrictions are properly configured

🔧 Temporary Workarounds

Restrict Python Library Imports

windows

Configure Ignition to only allow specific, approved Python libraries for automation scripts

Configure via Ignition Gateway configuration settings

Implement Least Privilege Service Account

windows

Run Ignition service with minimal required permissions instead of SYSTEM account

Create dedicated service account with limited privileges
Configure Ignition to run under this account

🧯 If You Can't Patch

  • Implement strict access controls for Ignition administrator accounts
  • Disable Python scripting functionality if not required for operations

🔍 How to Verify

Check if Vulnerable:

Check if Python scripting is enabled and service runs as SYSTEM on Windows

Check Version:

Check Ignition Gateway version in Gateway Web Interface

Verify Fix Applied:

Verify service runs with reduced privileges and Python library restrictions are enforced

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized Python library imports
  • Unexpected project file uploads
  • Suspicious process creation from Ignition service

Network Indicators:

  • Unexpected outbound connections from Ignition server
  • Bind shell connections on non-standard ports

SIEM Query:

source="ignition" AND (event="project_upload" OR event="python_execution")

🔗 References

📤 Share & Export