title: ICSA-22-090-05 Rockwell Automation Logix Controllers
description: An attacker with the ability to modify a user program may change user program code on some ControlLogix, CompactLogix, and GuardLogix Control systems. Studio 5000 Logix Designer writes user-readable program code to a separate location than the executed compiled code, allowing an attacker to change one and not the other.
problem types: CWE-829 Inclusion of Functionality from Untrusted Control Sphere
affected:
{
product: 1768 CompactLogix controllers
vendor: Rockwell Automation
versions:
status: affected, version: All all
}
{
product: 1769 CompactLogix controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: CompactLogix 5370 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: CompactLogix 5380 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: CompactLogix 5480 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: Compact GuardLogix 5370 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: Compact GuardLogix 5380 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: ControlLogix 5550 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: ControlLogix 5560 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: ControlLogix 5570 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: ControlLogix 5580 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: GuardLogix 5560 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: GuardLogix 5570 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: GuardLogix 5580 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: FlexLogix 1794-L34 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: DriveLogix 5730 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
{
product: SoftLogix 5800 controllers
vendor: Rockwell Automation
versions:
status: affected, version: all
}
metrics:
cvssV3_1: [
attackComplexity: LOW
attackVector: NETWORK
availabilityImpact: HIGH
baseScore: 10
baseSeverity: CRITICAL
confidentialityImpact: HIGH
integrityImpact: HIGH
privilegesRequired: NONE
scope: CHANGED
userInteraction: NONE
vectorString: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
version: 3.1
]
solutions: The following mitigations should be applied for ControlLogix 5560, ControlLogix 5570, ControlLogix 5580 series, GuardLogix 5570, GuardLogix 5580, GuardLogix 5380, CompactLogix, CompactLogix 5380 devices:
Risk Mitigation A:
Recompile and download user program code (i.e., acd).
Put controller mode switch into Run position.
If keeping controller mode switch in Run is impractical, use the following mitigation:
Recompile and download user program code (i.e., acd).
Monitor controller change log for any unexpected modifications or anomalous activity.
Utilize the Controller Log feature.
Utilize Change Detection in the Logix Designer Application.
If available, use the functionality in FactoryTalk AssetCenter software to detect changes.
Risk Mitigation B:
Implement CIP Security to help prevent unauthorized connections when properly deployed. Supported controllers and communications modules include:
ControlLogix 5580 processors using on-board EtherNet/IP port.
GuardLogix 5580 processors using on-board EtherNet/IP port.
ControlLogix 5580 processors operating in High Availability (HA) configurations using 1756-EN4TR
ControlLogix 5560, ControlLogix 5570, ControlLogix 5580, GuardLogix 5570 and GuardLogix 5580 can use a 1756-EN4TR ControlLogix EtherNet/IP module.
If using a 1756-EN2T, then replace with a 1756-EN4TR
CompactLogix 5380 using on-board EtherNet/IP port.
CompactLogix GuardLogix 5380 using on-board EtherNet/IP port.
The following mitigations should be applied for 1768 CompactLogix, 1769 CompactLogix, CompactLogix 5370, and CompactLogix 5480 devices:
Recompile and download user program code (i.e., acd).
Put controller mode switch into Run position.
If keeping controller mode switch in Run is impractical, then use the following mitigation:
Recompile and download user program code (i.e., acd).
Monitor controller change log for any unexpected modifications or anomalous activity.
Use the Controller Log feature.
Use Change Detection in the Logix Designer application.
If available, use the functionality in FactoryTalk AssetCenter to detect changes.