On May 31, 2023, Progress Software released a security bulletin concerning a critical vulnerability within MOVEit Transfer, a widely used secure file transfer system. According to Shodan, over 2500 servers running this software are on the Internet.
TrustedSec has performed analysis on the vulnerability and post-exploitation activities. At the time of publication, there is no associated CVE or CVS score.
This post will describe the research conducted so far and provide detection, response, and protection recommendations. Additional information will be released as it is found.
VulnerabilityAccording to the MOVEit notification, a SQL injection (SQLi) vulnerability within the application could allow escalated privileges and unauthorized access to the environment. Based on TrustedSec’s analysis of the backdoor seen, a successful attack could allow unauthenticated remote access to any folder or file within a MOVEit system.
Progress has published mitigation steps as well as fixed versions of the software in their notice.
Exploit ActivityAccording to a Reddit thread on the vulnerability, one of the backdoors named in the attack is human2.aspx. According to our research, these backdoors have been uploaded to public sites since May 28, 2023, meaning the attackers likely took advantage of the Memorial Day holiday weekend to gain access to systems. There have also been reports of data exfiltration from affected victims.
TrustedSec was able to gain access to multiple copies of the human2.aspx backdoor and perform analysis. Most of the code within the backdoor samples is the same except for a unique hard-coded password. These hard-coded, randomly generated passwords used for compromises means searching purely for file hashes may be less fruitful.
Figure 1 – Example of Hard-Coded PasswordBackdoorThe human2.aspx backdoor, which is allegedly uploaded during the attack, allows the attacker to do the following:
Note that the backdoors examined do not yet return a list of user password hashes from MOVEit.
The human2.aspx backdoor functions as follows:
Figure 2 – Initial Actions for X-siLock-Comment Value of -1 If the X-siLockStep1 value is -2: + A backdoor user named Health Check Service is deleted from the users* table.
Figure 3 – Deletion of Backdoor Account If no X-siLockStep1 value is specified, the backdoor reads in two (2) headers: X-siLock-Step2 (a folder ID) and X-siLock-Step3 (a file ID). + If the values are present, the backdoor responds with the file requested. + If the values are not present, the backdoor: - Adds an administrative user named Health Check Service into the users* table - Creates and inserts a new active session for this user into the application
Figure 4 – Insertion of Backdoor Account and SessionDetectionThere are several steps organizations can take to detect a successful compromise of the attack:
If any indicators of compromise (IOCs) are found, organizations should do the following:
ProtectionCurrently, Progress has not released a patch but has published mitigations to prevent the vulnerability from being exploited.
Progress’ mitigations are to deny all HTTP (TCP/80) and HTTPS (TCP/443) traffic to the MOVEit environment. Note that this will block all access to the system, but SFTP/FTP will still work, which currently appears unaffected.
However, it is unknown at this time if the insertion of the backdoor account will allow the attacker to log in through the SFTP/FTP interface. Therefore, TrustedSec recommends blocking all access to vulnerable MOVEit servers until a patch is released.
Indicators of Compromise
| Type | Indicator | | Account | Health Check Service | | Filename | human2.aspx | | HTTP Header | X-siLock-Comment | | HTTP Header | X-siLock-Step1 | | HTTP Header | X-siLock-Step2 | | HTTP Header | X-siLock-Step3 | | SHA256 Hash | 2413b5d0750c23b07999ec33a5b4930be224b661aaf290a0118db803f31acbc5 | | SHA256 Hash | 48367d94ccb4411f15d7ef9c455c92125f3ad812f2363c4d2e949ce1b615429a | | SHA256 Hash | 6015fed13c5510bbb89b0a5302c8b95a5b811982ff6de9930725c4630ec4011d | | SHA256 Hash | 702421bcee1785d93271d311f0203da34cc936317e299575b06503945a6ea1e0 | | SHA256 Hash | 9d1723777de67bc7e11678db800d2a32de3bcd6c40a629cd165e3f7bbace8ead | | SHA256 Hash | 9e89d9f045664996067a05610ea2b0ad4f7f502f73d84321fb07861348fdc24a | | SHA256 Hash | b1c299a9fe6076f370178de7b808f36135df16c4e438ef6453a39565ff2ec272 | | SHA256 Hash | c56bcb513248885673645ff1df44d3661a75cfacdce485535da898aa9ba320d4 | | SHA256 Hash | d49cf23d83b2743c573ba383bf6f3c28da41ac5f745cde41ef8cd1344528c195 | | SHA256 Hash | e8012a15b6f6b404a33f293205b602ece486d01337b8b3ec331cd99ccadb562e | | SHA256 Hash | fe5f8388ccea7c548d587d1e2843921c038a9f4ddad3cb03f3aa8a45c29c6a2f |
The following are medium confidence Indicators of Compromise that TrustedSec has not been able to validate, but external partners have indicated have been seen in the attack.
| Type | Indicator | | --- | --- | | IP Address | 89.39.105[.]108 | | IP Address | 5.252.190[.]197 | | IP Address | 5.252.190[.]0/24 | | IP Address | 5.252.189-195[.]X | | IP Address | 138.197.152[.]201 | | IP Address | 209.97.137[.]33 |
Reference* https://community.progress.com/s/article/MOVEit-Transfer-Critical-Vulnerability-31May2023 * https://www.reddit.com/r/sysadmin/comments/13wxuej/critical_vulnerability_moveit_file_transfer * https://github.com/Neo23x0/signature-base/blob/master/yara/vuln_moveit_0day_jun23.yar#L2
ChangelogVersion 1 – Initial publication
Version 2 – Added fixed version information, SIGMA signature, and IP address IOCs
The post Critical Vulnerability in Progress MOVEit Transfer: Technical Analysis and Recommendations appeared first on TrustedSec.