ABB CoreSense path traversal allows local unauthenticated access
Free public brief. The indicators, the detections with Splunk SPL already written (plus Elastic and KQL where they apply), and a Slack alert the next time this touches a vendor you run are in the app — free account, no card.
Path traversal in ABB CoreSense HM and M10 allows unauthenticated local access to restricted directories; requires localhost or network access.
ABB has released patches for a path traversal vulnerability affecting CoreSense HM (≤2.3.1, 2.3.4) and CoreSense M10 (≤1.4.1.12, 1.4.1.31) that allows unauthenticated users to access restricted directories through unchecked input validation on the file parameter. Successful exploitation can lead to complete system compromise and exposure of sensitive information. The vulnerability is not remotely exploitable; it requires the attacker to have local access to the machine hosting the web application, either through direct connection to localhost, a misconfigured firewall, or malicious software already present on the network.
ABB has not received reports of active exploitation in the wild as of the advisory release date (2025-04-16). The vendor recommends immediate patching to CoreSense HM v2.3.4 or CoreSense M10 v1.4.1.31. Mitigating factors include restricting local access to authorized users, implementing strict input validation and path sanitization within the products, and configuring systems to deny direct web application access from untrusted network sources. Affected systems are deployed across Food and Agriculture, Commercial Facilities, and Critical Manufacturing sectors worldwide.
Mentioned in this report
Detection guidance
Path Traversal Sequences in File Parameter of Web Request
Web request whose 'file' query parameter carries directory traversal sequences (plain, URL-encoded or double-encoded), as used against the CoreSense file parameter path traversal. Auto-generated starting point — validate and tune in your environment before deploying. IOC matches can false-positive on shared infrastructure and decay as adversary infrastructure rotates.
title: Path Traversal Sequences in File Parameter of Web Request
description: Detects web requests where the file query parameter contains directory
traversal sequences (plain, URL-encoded or double-encoded). Generalises on the unchecked
file parameter traversal pattern described for ABB CoreSense, not on specific paths.
tags:
- attack.initial-access
- attack.t1190
- attack.discovery
- attack.t1083
logsource:
category: webserver
detection:
selection_param:
cs-uri-query|contains: file=
selection_traversal:
cs-uri-query|contains:
- ../
- ..\
- ..%2f
- ..%5c
- '%2e%2e%2f'
- '%2e%2e%5c'
- '%2e%2e/'
- '%2e%2e\'
- '%252e%252e'
condition: selection_param and selection_traversal
falsepositives:
- Vulnerability scanners run by the security team against internal web applications
- Web applications that legitimately use relative paths in a file parameter for document
viewers
level: medium
id: 561f1bb3-e365-5353-b339-f7f76fcf0e6f
status: experimental
author: Vorant
references:
- https://www.cisa.gov/news-events/ics-advisories/icsa-26-139-01
Successful Path Traversal Reading Sensitive System Files via Web Request
Traversal sequences in a web request combined with well-known sensitive OS or configuration file targets and a successful response, indicating directory access outside the web root. Auto-generated starting point — validate and tune in your environment before deploying. IOC matches can false-positive on shared infrastructure and decay as adversary infrastructure rotates.
title: Successful Path Traversal Reading Sensitive System Files via Web Request
description: Detects web requests containing traversal sequences that target well-known
sensitive files (OS account files, boot configuration, web configs) and receive
a successful HTTP response, indicating restricted directory access through an unchecked
file parameter.
tags:
- attack.discovery
- attack.t1083
- attack.initial-access
- attack.t1190
logsource:
category: webserver
detection:
selection_traversal:
cs-uri-query|contains:
- ../
- ..\
- ..%2f
- ..%5c
- '%2e%2e%2f'
- '%2e%2e%5c'
- '%252e%252e'
selection_target:
cs-uri-query|contains:
- etc/passwd
- etc%2fpasswd
- etc/shadow
- win.ini
- boot.ini
- web.config
- windows/system32
- windows\system32
selection_status:
sc-status: 200
condition: selection_traversal and selection_target and selection_status
falsepositives:
- Authorised penetration tests or vulnerability scans against the web application
level: high
id: 38d000b7-8f25-5410-b373-5736f3245a8c
status: experimental
author: Vorant
references:
- https://www.cisa.gov/news-events/ics-advisories/icsa-26-139-01
Behavioural rules are generated from public reporting — validate in your environment before deploying.
Source reporting: https://www.cisa.gov/news-events/ics-advisories/icsa-26-139-01
What this brief leaves out
This page is the free tier: the write-up, the severity, the names. In the app the same report carries its extracted indicators, its detections (Splunk SPL already written, plus Elastic and Microsoft KQL where they apply), the actors and CVEs it names as live profiles, and the vendor research on the same campaign — the primary source the news paraphrased, cited and read directly.
It sits in a corpus of 13,854 reports from 146 sources, 616 of them written in the last seven days, and it grows through the day.
A new account starts with three days of all of it, no card, then keeps the government and CERT reporting free. Name the vendors you run and Slack hears about the reports that touch them — about forty a week that are yours, not the four hundred that are not.
Create a free account What it costs