Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
🐹
🐹 Go
Not in CISA KEV
HIGH severity

CVE-2025-54424 — core

HIGHFix: 1Panel-dev/1Panel#9698

CVE-2025-54424 is a high-severity (CVSS 8.1) CWE-77 vulnerability in github.com/1Panel-dev/1Panel/core. 2 public exploit references exist, so weaponization risk is real. A fix is available for github.com/1Panel-dev/1Panel/core — see the affected versions and patch details below.

1Panel Agent Bypasses Certificate Verification Leading to Arbitrary Command Execution

Also known asGHSA-8j63-96wh-wh3jGO-2025-3834
Published
Aug 1, 2025
Updated
Aug 12, 2026
Affected
2 pkgs
Patched
2 / 2
Exploits
2 known
Exploitation data as of Sep 26, 2026 · OSV.dev, NVD, FIRST.org (EPSS)

Exploitation Status

Proof-of-concept exploit code exists

  • CISA’s SSVC triage found public proof-of-concept exploit code for this CVE, though no confirmed active exploitation.
  • A successful exploit gives an attacker total control of the affected component, not partial access.

Exploitation and automatability from CISA’s SSVC triage for CVE-2025-54424.

EPSS Exploitation Probability

via FIRST.org ↗
0.9%probability of exploitation in next 30 days
Lower Risk0.00%
Lower risk than most CVEs59th percentile — riskier than 59% of all scored CVEsHighest risk

Probability of exploitation in the next 30 days, from FIRST.org EPSS.

How urgent is this, really

CVE-2025-54424 by exploitation likelihood (EPSS) against impact (CVSS). Outside the shaded patch-first corner.

Where this sits among everything scored

Of 379,842 CVEs with a current EPSS score, this one falls in the < 10% band (highlighted). Counts from FIRST.org, log-scaled.

Real-World Exposure

2 pkgs affected
🐹github.com/1Panel-dev/1Panel/core🐹github.com/1Panel-dev/1Panel/core

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects Go packages — download data is not available via public APIs for these ecosystems.

Description

Project Address: Project Address 1Panel

Official website: https://www.1panel.cn/

Time: 2025 07 26

Version: 1panel V2.0.5

Vulnerability Summary

  • First, we introduce the concepts of 1panel v2 Core and Agent. After the new version is released, 1panel adds the node management function, which allows you to control other hosts by adding nodes.
  • The HTTPS protocol used for communication between the Core and Agent sides did not fully verify the authenticity of the certificate during certificate verification, resulting in unauthorized interfaces. The presence of a large number of command execution or high-privilege interfaces in the 1panel led to RCE.

Code audit process

  1. First we go to the Agent HTTP routing fileagent/init/router/router.go

  1. It was found that the Routersreference function in the function Certificatewas globally checked.agent/middleware/certificate.go

  1. The discovery Certificatefunction determines c.Request.TLS.HandshakeCompletewhether certificate communication has been performed

  1. Since c.Request.TLS.HandshakeCompletethe true or false judgment is determined by agent/server/server.gothe code Startfunctiontls.RequireAnyClientCert

Note::Here due to the use of tls.RequireAnyClientCert instead of tls.RequireAndVerifyClientCert,RequireAnyClientCert Only require the client to provide a certificate,Does not verify the issuance of certificates CA,So any self assigned certificate will pass TLS handshake。

  1. The subsequent Certificatefunction only verified that the CN field of the certificate was panel_client, without verifying the certificate issuer. Finally, it was discovered that the WebSocket connection could bypass Proxy-ID verification.

  1. Process WebSocket interface (based on the above questions, all processes and other sensitive information can be obtained) routing address: /process/ws the request format is as follows
{
  "type": "ps",           // 数据类型: ps(进程), ssh(SSH会话), net(网络连接), wget(下载进度)
  "pid": 123,             // 可选,指定进程ID进行筛选
  "name": "process_name", // 可选,根据进程名筛选
  "username": "user"      // 可选,根据用户名筛选
}

  • Terminal SSH WebSocket interface (according to the above problem, any command can be executed) routing address: /hosts/terminal the request format is as follows
{
  "type": "cmd",
  "data": "d2hvYW1pCg=="  // "whoami" 的base64编码,记住不要忘记回车。
}

  • Container Terminal WebSocket interface (container execution command interface) routing address:/containers/terminal

  • File Download Process WebSocket interface (automatically push download progress information) routing address:/files/wget/process

Attack process

  1. First generate a fake certificate openssl req -x509 -newkey rsa:2048 -keyout panel_client.key -out panel_client.crt -days 365 -nodes -subj "/CN=panel_client"

  2. Then use the certificate to request verification. If the websocket interface is successfully connected, there is a vulnerability.

Affected Packages

2 total 2 fixed
EcosystemPackageVulnerable rangeFix
🐹Gogithub.com/1Panel-dev/1Panel/core≥ 1.0.0&&< 2.0.62.0.6go get github.com/1Panel-dev/1Panel/core@v2.0.6
🐹Gogithub.com/1Panel-dev/1Panel/coreall versions0.0.0-20250730021757-04b9cbd87a15go get github.com/1Panel-dev/1Panel/core@v0.0.0-20250730021757-04b9cbd87a15

Affected Products

1 product · 1 configurations
Application
1panelfit2cloud
< 2.0.6
range
Exploits & PoCs
2

Research use only. For defensive security, authorized penetration testing, and academic research only. Never execute exploit code against systems without explicit written authorization.

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for github.com/1Panel-dev/1Panel/core, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.

  2. Fix

    Update github.com/1Panel-dev/1Panel/core to 2.0.6 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2025-54424 is resolved across your whole dependency graph.

  3. Workarounds

    Stop passing untrusted input into the interpreter or shell: call the affected binary with an argument array rather than a composed command string, reject anything outside a strict allowlist of expected values, and run the component under an account that cannot reach beyond the work it legitimately does.

Frequently Asked Questions

### Project Address: Project Address [1Panel](https://github.com/1Panel-dev/1Panel) ### Official website: https://www.1panel.cn/ ### Time: 2025 07 26 ### Version: 1panel V2.0.5 ### Vulnerability Summary - First, we introduce the concepts of 1panel v2 Core and Agent. After the new version is released, 1panel adds the node management function, which allows you to control other hosts by adding nodes. - The HTTPS protocol used for communication between the Core and Agent sides did not fully verify the authenticity of the certificate during certificate verification, resulting in unauthorized inte
O3 Security · Impact-Aware SCA

Is CVE-2025-54424 in your dependencies?

Find it across Go, including transitive dependencies.