CVE-2024-1480
Executive Summary
CVE-2024-1480 is a critical authentication bypass vulnerability affecting Unitronics Vision Standard line of programmable logic controllers (PLCs). The flaw allows an unauthenticated, remote attacker to retrieve the Information Mode password without any prior authentication. This password can then be used to gain elevated access to the controller, potentially enabling configuration changes, logic manipulation, or disruption of industrial processes.
The vulnerability is particularly dangerous because it requires no special privileges, no user interaction, and can be exploited over the network. The CVSS score of 7.5 (High) reflects the ease of exploitation and the high confidentiality impact, though the integrity and availability impacts are not directly scored due to the nature of the Information Mode access.
Note: This vulnerability is not related to any WordPress plugin or component. It is a native firmware issue in Unitronics industrial control systems.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
CVSS Breakdown & Threat Level
- CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- Base Score: 7.5 (High)
- Attack Vector: Network (AV:N) – Exploitable remotely.
- Attack Complexity: Low (AC:L) – No special conditions required.
- Privileges Required: None (PR:N) – No authentication needed.
- User Interaction: None (UI:N) – No user action required.
- Scope: Unchanged (S:U) – The vulnerable component remains the same.
- Confidentiality Impact: High (C:H) – The Information Mode password is fully disclosed.
- Integrity Impact: None (I:N) – Direct password retrieval does not alter data.
- Availability Impact: None (A:N) – Direct exploitation does not cause denial of service.
Threat Level: High. The vulnerability is trivial to exploit and can lead to full compromise of the PLC's operational settings.
Deep Dive & Mechanics
The Unitronics Vision Standard line of controllers exposes a service (typically on TCP port 20256) that handles authentication for different access modes, including "Information Mode." The vulnerability lies in the authentication mechanism for this mode. Instead of requiring a valid password hash or challenge-response, the controller responds to a specific unauthenticated request by returning the Information Mode password in plaintext or easily reversible form.
Technical Details:
- Protocol: Unitronics uses a proprietary protocol over TCP port 20256 (default).
- Vulnerable Function: The function responsible for validating the Information Mode password does not enforce authentication before returning the stored password.
- Exploitation: An attacker sends a crafted packet to the PLC requesting the Information Mode password. The PLC responds with the password without verifying the requester's identity.
- Impact: With the Information Mode password, an attacker can:
- Read and modify ladder logic.
- Change operational parameters.
- Disable safety functions.
- Potentially cause physical damage to connected machinery.
Vulnerable vs. Patched Code
Since no official patch has been released, there is no patched code to compare. The vulnerable code is within the firmware's authentication handler. A hypothetical patch would require:
- Vulnerable: The handler checks if the request is for Information Mode and, if so, returns the password without any prior authentication check.
- Patched: The handler would first require a valid session or a separate authentication step before disclosing any password.
Example (Conceptual):
// Vulnerable pseudocode
void handle_information_mode_request(packet) {
if (packet.type == GET_INFO_PASSWORD) {
send_response(info_password); // No authentication check
}
}
// Patched pseudocode
void handle_information_mode_request(packet, session) {
if (!session.is_authenticated) {
send_error("Authentication required");
return;
}
if (packet.type == GET_INFO_PASSWORD) {
send_response(info_password);
}
}
Exploitation & Lab Setup
Red Team (Offensive)
Prerequisites:
- A Unitronics Vision Standard PLC (e.g., V130, V570) or a simulator.
- Network access to the PLC on TCP port 20256.
- A tool to send raw TCP packets (e.g.,
ncat,pwntools, or a custom Python script).
Exploitation Steps:
- Identify Target: Use Shodan or a network scan to find Unitronics devices on port 20256.
- Connect: Establish a TCP connection to the target IP on port 20256.
- Send Malicious Request: The exact payload is proprietary, but public proof-of-concept code exists. A typical request might look like:
(This is a placeholder; actual payloads are available in exploit databases.)\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 - Receive Password: The PLC responds with the Information Mode password in plaintext.
- Escalate Access: Use the retrieved password to log into the PLC's programming software (e.g., Unitronics VisiLogic) and modify the controller's logic.
Example Python Script (Conceptual):
import socket
target_ip = "192.168.1.100"
target_port = 20256
# Crafted payload to request Information Mode password
payload = b"\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((target_ip, target_port))
sock.send(payload)
response = sock.recv(1024)
print(f"Information Mode Password: {response.decode('utf-8', errors='ignore')}")
sock.close()
Blue Team (Defensive)
Detection & Prevention:
- Network Segmentation: Isolate PLCs on a separate OT network with strict firewall rules. Do not expose port 20256 to the corporate or public internet.
- Access Control: Implement VPN or jump host access for any remote connections to the OT network.
- Monitoring: Deploy network intrusion detection systems (NIDS) to monitor for anomalous traffic on port 20256.
- Firmware Updates: Although no patch exists, monitor Unitronics' official channels for any security updates.
- Password Management: Change the default Information Mode password to a strong, unique value. Note that this does not fix the vulnerability but limits the impact if the password is retrieved.
Indicators of Compromise (IOCs)
- Network Traffic:
- Unexpected TCP connections to port 20256 on Unitronics devices.
- Packets with unusual payload patterns (e.g., specific byte sequences used in PoC exploits).
- System Logs:
- PLC logs showing repeated failed authentication attempts followed by a successful login using Information Mode.
- Unauthorized changes to ladder logic or configuration parameters.
- File Artifacts:
- Presence of exploit scripts (e.g., Python, PowerShell) on engineering workstations.
- Unusual
.vlp(VisiLogic Project) files or backups.
Detection Engineering
YARA Rule
rule CVE_2024_1480_Unitronics_Password_Retrieval {
meta:
description = "Detects network traffic or files containing the exploit payload for CVE-2024-1480"
author = "Valters IT"
date = "2024-01-01"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2024-1480"
strings:
$payload1 = { 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 }
$payload2 = "GET_INFO_PASSWORD" nocase
condition:
any of them
}
Sigma Rule
title: Unitronics CVE-2024-1480 Exploitation Attempt
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects network connections to Unitronics PLCs on port 20256 with suspicious payloads
author: Valters IT
logsource:
category: network_connection
product: windows
service: sysmon
detection:
selection:
DestinationPort: 20256
Image: '*'
condition: selection
falsepositives:
- Legitimate Unitronics programming software
level: high
Suricata Rule
alert tcp any any -> any 20256 (msg:"CVE-2024-1480 Unitronics Information Mode Password Retrieval"; content:"|00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00|"; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Network Isolation: Ensure Unitronics PLCs are not directly accessible from the internet. Use firewalls to restrict access to port 20256 to only authorized engineering workstations.
- Change Default Passwords: Immediately change the Information Mode password to a strong, unique password. This does not fix the vulnerability but reduces the risk if the password is retrieved.
- Monitor Logs: Enable and review PLC logs for any unauthorized access attempts.
Long-Term Solutions:
- Firmware Update: Await an official patch from Unitronics. Contact Unitronics support for the latest information.
- Replace Hardware: If no patch is forthcoming, consider replacing vulnerable controllers with models that have proper authentication mechanisms.
- Implement IDS/IPS: Deploy network-based intrusion detection/prevention systems with custom rules to detect exploit attempts.
Workarounds:
- Use a VPN or SSH tunnel for all remote access to the OT network.
- Implement application-layer gateways that can inspect and block malicious traffic to port 20256.
Valters IT
DevSecOps & Cyber Threat Intelligence
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.