CISA has published ICS advisory ICSA-26-225-13 disclosing multiple vulnerabilities in Siemens LOGO! Soft Comfort — the engineering software used to program LOGO! logic modules, one of the most widely deployed micro-PLCs in building automation, water treatment, manufacturing, and small-scale industrial control environments worldwide. Tracked as CVE-2026-57262 and CVE-2026-57263, these flaws strike at the heart of project-file confidentiality: the encryption and password-handling mechanisms that protect ladder logic, process parameters, and plant configurations stored in LOGO! project files.
The practical impact is severe. A local attacker can exploit these weaknesses to extract the master encryption key, decrypt protected project data, and strip project passwords entirely. Compounding the issue, Siemens' password hashing implementation lacks salting, which means captured hashes are directly exposed to offline dictionary and brute-force attacks — and identical passwords across different projects produce identical hashes, enabling precomputation attacks. For an adversary who has already established a foothold on an engineering workstation, these vulnerabilities convert a single compromised host into a roadmap of your entire control logic, complete with the ability to silently modify it.
All versions of LOGO! Soft Comfort prior to version 9 are affected. Siemens has released an updated version and recommends immediate upgrade. If you operate LOGO! modules anywhere in your environment — and in OT environments, they are everywhere — this advisory requires action this week, not this quarter.
Technical Analysis
Affected Products and Versions
| Product | Affected Versions | CVEs |
|---|---|---|
| Siemens LOGO! Soft Comfort | All versions < 9 | CVE-2026-57262, CVE-2026-57263 |
LOGO! Soft Comfort is the Windows-based engineering workstation software used to create, simulate, and download programs to Siemens LOGO! 8 and earlier logic modules. Project files (.lsc, .ldf, .lma and related formats, depending on version) contain the complete functional logic of the controlled process, network parameters, and — where the user applied them — access-protection passwords.
Vulnerability Breakdown
CVE-2026-57262 — Weak Project-File Encryption / Master Key Extraction. The project-file encryption mechanism in LOGO! Soft Comfort relies on a master key that can be extracted by a local attacker. Because the key derivation is deterministic and recoverable from software components or project artifacts on the local system, the encryption provides only the appearance of confidentiality. Once the master key is in hand, an attacker can decrypt any project file on the system — or any project file harvested from network shares, backups, or email — without knowing the project password.
CVE-2026-57263 — Unsalted Password Hashing. Project passwords are hashed without a salt. This produces two distinct attack paths:
- Offline dictionary/brute-force attacks. Password hashes extracted from project files can be attacked offline at full GPU speed with no rate limiting and no interaction with the target system. Weak engineering passwords ("Line1", "Pump2024", vendor defaults) fall in seconds.
- Hash reuse and rainbow-table attacks. Because identical passwords yield identical hashes, an attacker can instantly identify shared passwords across projects, sites, or even organizations — and precomputed lookup tables for common OT passwords are trivially effective.
Attack Chain from a Defender's Perspective
The exploitation model is local — the attacker needs code execution or interactive access on the engineering workstation, or access to a location where project files are stored (file shares, SharePoint, backup repositories, emailed attachments). A realistic intrusion chain looks like this:
- Adversary gains initial access to the IT network (phishing, exposed remote access, compromised contractor account).
- Adversary pivots to the engineering workstation or OT file share — in flat networks, this is often a single hop.
- Adversary collects LOGO! project files (
.lsc/.ldf) and either extracts the master key locally (CVE-2026-57262) or pulls password hashes for offline cracking (CVE-2026-57263). - Adversary decrypts and studies the control logic, identifies setpoints and interlocks, then modifies the project and re-encrypts it, or uses recovered credentials to download altered logic directly to LOGO! modules.
- Result: unauthorized disclosure and modification of sensitive process logic — integrity loss in the physical process.
Exploitation Status
At the time of this writing, CISA reports no known public proof-of-concept exploit and no confirmed in-the-wild exploitation of CVE-2026-57262 or CVE-2026-57263. However, the barrier to weaponization is low: local key-extraction and unsalted-hash attacks against engineering software are well-understood techniques, and ICS-focused threat actors have historically weaponized exactly this class of engineering-workstation weakness. Treat the absence of public exploitation as a grace period, not a comfort. Defenders should assume that project files in transit or at rest are the real attack surface here — every LOGO! project file you've ever emailed, shared, or backed up with a weak password is exposed.
Detection & Response
Detection for this vulnerability class centers on three observable behaviors: (1) unauthorized access or bulk collection of LOGO! project files, (2) execution of password-cracking or hash-extraction tooling on engineering workstations or servers, and (3) tampering with project files outside of normal engineering change windows.
Sigma Rules
---
title: Bulk Access or Collection of Siemens LOGO! Project Files
id: 3b9f1a74-2c6d-4e58-9a01-7d5c2f8e1b33
status: experimental
description: Detects suspicious access patterns against Siemens LOGO! Soft Comfort project files (.lsc, .ldf, .lma), including bulk reads consistent with collection or staging of engineering data prior to exfiltration or offline password attacks.
references:
- https://www.cisa.gov/news-events/ics-advisories/icsa-26-225-13
- https://attack.mitre.org/techniques/T1005/
- https://attack.mitre.org/techniques/T1074/
author: Security Arsenal
date: 2026/02/10
tags:
- attack.collection
- attack.t1005
- attack.t1074.001
logsource:
category: file_event
product: windows
detection:
selection_extension:
TargetFilename|endswith:
- '.lsc'
- '.ldf'
- '.lma'
selection_suspicious_process:
Image|endswith:
- '\cmd.exe'
- '\powershell.exe'
- '\pwsh.exe'
- '\rundll32.exe'
- '\wscript.exe'
- '\cscript.exe'
- '\7z.exe'
- '\rar.exe'
- '\winrar.exe'
condition: selection_extension and selection_suspicious_process
falsepositives:
- Legitimate engineering scripts that archive project backups during maintenance windows
- Automated backup agents (whitelist known backup service accounts and paths)
level: high
---
title: Password Cracking Tool Execution on Engineering Workstation
id: 8c2e6d91-4f1b-4a37-b5e2-9f3a7c1d6e48
status: experimental
description: Detects execution of common offline password-cracking and hash-extraction utilities, which may indicate attempts to brute-force unsalted Siemens LOGO! project password hashes (CVE-2026-57263) on a compromised host.
references:
- https://www.cisa.gov/news-events/ics-advisories/icsa-26-225-13
- https://attack.mitre.org/techniques/T1110/002/
author: Security Arsenal
date: 2026/02/10
tags:
- attack.credential_access
- attack.t1110.002
logsource:
category: process_creation
product: windows
detection:
selection_img:
Image|endswith:
- '\hashcat.exe'
- '\hashcat64.exe'
- '\john.exe'
- '\john-the-ripper.exe'
- '\ophcrack.exe'
- '\mimikatz.exe'
- '\pypykatz.exe'
selection_cli:
CommandLine|contains:
- 'hashcat'
- '--attack-mode'
- '-m 0 '
- 'rockyou'
- 'wordlist'
- '--rules'
- 'john --wordlist'
condition: selection_img or selection_cli
falsepositives:
- Authorized penetration-testing activity (scope by approved tester accounts and change tickets)
level: critical
---
title: Siemens LOGO! Soft Comfort Project File Modified Outside Engineering Tool
id: 5f1a8c23-7e94-4d6b-a302-1c8f5e2b9d71
status: experimental
description: Detects modification of LOGO! project files by processes other than the legitimate LOGO! Soft Comfort application, which may indicate tampering with control logic after decryption via master-key extraction (CVE-2026-57262).
references:
- https://www.cisa.gov/news-events/ics-advisories/icsa-26-225-13
- https://attack.mitre.org/techniques/T1565/001/
author: Security Arsenal
date: 2026/02/10
tags:
- attack.impact
- attack.t1565.001
logsource:
category: file_event
product: windows
detection:
selection:
TargetFilename|endswith:
- '.lsc'
- '.ldf'
- '.lma'
filter_legit:
Image|endswith:
- '\LSC.exe'
- '\LOGOComfort.exe'
- '\LogoSoftComfort.exe'
condition: selection and not filter_legit
falsepositives:
- File synchronization agents and backup software (tune by Image and service account)
- Users copying project files via Explorer — expect some noise; pair with asset inventory of known engineering workstations to scope alerting
level: medium
KQL — Microsoft Sentinel / Defender
The following hunt query identifies offline password-cracking activity and suspicious access to LOGO! project files on engineering workstations. Deploy it against endpoints identified in your OT asset inventory, and correlate with identity data for the engineering-team accounts.
// Hunt: LOGO! project file collection and password-cracking tooling
// Scope to engineering workstation hostnames/OU as appropriate for your environment
let CrackingToolNames = dynamic(["hashcat", "john", "ophcrack", "mimikatz", "pypykatz", "l0phtcrack"]);
let LogoExtensions = dynamic([".lsc", ".ldf", ".lma"]);
let CrackingToolEvents =
DeviceProcessEvents
| where TimeGenerated > ago(7d)
| where FileName has_any (CrackingToolNames)
or ProcessCommandLine has_any ("hashcat", "--attack-mode", "rockyou", "--wordlist", "john --")
| project TimeGenerated, DeviceName, AccountName, FileName, ProcessCommandLine, FolderPath, SHA256
| extend EventType = "CrackingToolExecution";
let ProjectFileEvents =
DeviceFileEvents
| where TimeGenerated > ago(7d)
| where FileName has_any (LogoExtensions)
| where ActionType in ("FileCreated", "FileModified", "FileRenamed")
| where InitiatingProcessFileName !in~ ("LSC.exe", "LOGOComfort.exe", "LogoSoftComfort.exe", "explorer.exe", "robocopy.exe")
| project TimeGenerated, DeviceName, InitiatingProcessAccountName, InitiatingProcessFileName, ActionType, FileName, FolderPath
| extend EventType = "ProjectFileAccess";
union CrackingToolEvents, ProjectFileEvents
| sort by TimeGenerated desc
Velociraptor VQL
Use this hunt artifact across engineering workstations to enumerate installed LOGO! Soft Comfort versions (for remediation validation) and to flag cracking-tool binaries and recently touched project files.
-- Hunt: Siemens LOGO! Soft Comfort exposure assessment
-- Enumerates installed versions, project files, and cracking-tool artifacts
SELECT
"InstalledVersion" AS ArtifactType,
Name AS Detail1,
Version AS Detail2,
InstallLocation AS Detail3
FROM wmi(query="SELECT Name, Version, InstallLocation FROM Win32_Product WHERE Name LIKE '%LOGO!%Soft Comfort%'")
UNION ALL
SELECT
"ProjectFile" AS ArtifactType,
FullPath AS Detail1,
timestamp(epoch=Mtime.Sec) AS Detail2,
format("%d bytes", Size) AS Detail3
FROM glob(globs=[
"C:/Users/*/Documents/**/*.lsc",
"C:/Users/*/Documents/**/*.ldf",
"C:/Users/*/Documents/**/*.lma",
"C:/ProgramData/**/*.lsc",
"C:/ProgramData/**/*.ldf"
])
UNION ALL
SELECT
"CrackingToolBinary" AS ArtifactType,
Name AS Detail1,
Exe AS Detail2,
Username AS Detail3
FROM pslist()
WHERE Name =~ "(?i)(hashcat|john|ophcrack|mimikatz|pypykatz)"
Remediation & Verification Script
Run this PowerShell script (as administrator, or via your RCM/Intune/SCCM tooling) to audit LOGO! Soft Comfort installations across engineering workstations and flag any version prior to 9 for upgrade.
# Security Arsenal - Siemens LOGO! Soft Comfort vulnerability audit (CVE-2026-57262 / CVE-2026-57263)
# Identifies installations older than version 9 and reports project file locations for risk review
$report = @()
# Enumerate installed LOGO! Soft Comfort versions from both 32-bit and 64-bit registry hives
$uninstallPaths = @(
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*',
'HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*',
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*'
)
$installs = Get-ItemProperty $uninstallPaths -ErrorAction SilentlyContinue |
Where-Object { $_.DisplayName -match 'LOGO!/? ?Soft Comfort' } |
Select-Object DisplayName, DisplayVersion, InstallLocation, PSComputerName
foreach ($app in $installs) {
$ver = $null
[void][version]::TryParse(($app.DisplayVersion -replace '[^0-9\.]', ''), [ref]$ver)
$vulnerable = ($ver -ne $null -and $ver.Major -lt 9)
$report += [PSCustomObject]@{
Computer = $env:COMPUTERNAME
Product = $app.DisplayName
Version = $app.DisplayVersion
Path = $app.InstallLocation
Vulnerable = $vulnerable
CVEs = if ($vulnerable) { 'CVE-2026-57262, CVE-2026-57263' } else { 'N/A' }
}
}
# Locate project files that may contain crackable unsalted password hashes
$projectFiles = Get-ChildItem -Path 'C:\Users','C:\ProgramData' -Recurse -Include *.lsc,*.ldf,*.lma -ErrorAction SilentlyContinue |
Select-Object FullName, LastWriteTime, Length
Write-Host '=== LOGO! Soft Comfort Installations ===' -ForegroundColor Cyan
if ($report) { $report | Format-Table -AutoSize } else { Write-Host 'No LOGO! Soft Comfort installations detected.' }
Write-Host '=== LOGO! Project Files Found ===' -ForegroundColor Cyan
if ($projectFiles) { $projectFiles | Format-Table -AutoSize } else { Write-Host 'No project files found in standard locations.' }
# Export for central collection
$outDir = 'C:\Windows\Temp\LogoAudit'
New-Item -Path $outDir -ItemType Directory -Force | Out-Null
$report | Export-Csv "$outDir\$env:COMPUTERNAME-logo-installs.csv" -NoTypeInformation
$projectFiles | Export-Csv "$outDir\$env:COMPUTERNAME-logo-projects.csv" -NoTypeInformation
if ($report | Where-Object { $_.Vulnerable }) {
Write-Warning 'VULNERABLE: LOGO! Soft Comfort < 9 detected. Upgrade to the latest version per Siemens advisory (ICSA-26-225-13).'
exit 1
} else {
Write-Host 'No vulnerable versions detected.' -ForegroundColor Green
exit 0
}
Remediation
-
Upgrade LOGO! Soft Comfort to version 9 or later immediately. Siemens has released a fixed version addressing both CVE-2026-57262 and CVE-2026-57263. Obtain the update through the Siemens Industry Online Support portal and validate the version post-installation using the audit script above. Reference: CISA ICSA-26-225-13.
-
Rotate all project passwords after upgrading. Patching does not retroactively protect hashes already extracted from historical project files. Assume any project password used on a pre-9 installation is compromised. Re-protect projects with new, high-entropy, unique passwords under the fixed version — and never reuse project passwords across sites or systems.
-
Treat historical project files as exposed. Inventory every location where LOGO! project files live: engineering workstations, file shares, backup repositories, document management systems, email archives. Any
.lsc/.ldf/.lmafile created under a vulnerable version can be decrypted via master-key extraction or cracked offline. Purge stale copies, restrict ACLs to named engineering accounts, and enable file-access auditing on the remainder. -
Harden engineering workstations. These are high-value OT assets. Enforce application allowlisting (cracking tools like hashcat should never execute on an engineering box), remove local admin rights, block outbound internet access where feasible, and isolate these hosts on a dedicated OT segment with monitored conduits to the plant floor.
-
Hunt before you patch. Because exploitation is local, a vulnerable workstation that is already compromised remains compromised after the software upgrade. Run the KQL and VQL hunts above across your engineering asset inventory, review for anomalous project-file access in the last 90 days, and investigate any modification of control logic outside documented change windows.
-
Verify downloaded logic integrity. Where LOGO! modules support it, compare the program running on the module against the known-good, version-controlled project baseline. If you cannot account for a logic change, treat it as an integrity incident and follow your IR playbook.
The window between advisory publication and weaponization for ICS engineering-software flaws has been shrinking steadily. Version 9 is available now — there is no workaround short of upgrading, so schedule the maintenance and close this gap.
Related Resources
Security Arsenal Managed SOC Services AlertMonitor Platform Book a SOC Assessment soc-mdr Intel Hub
Is your security operations ready?
Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.