---
id: "CVE-2026-113507"
kind: "vulnerability"
aliases: ["CVE-2026-113507"]
title: "aaPanel: spoofed X-Real-Ip header bypasses IP-based access controls"
severity: "medium"
cvss: 5.5
epss: null
exploited: false
status: "open"
category: "other"
products: []
ecosystems: []
tags: ["aapanel", "linux-servers", "other", "self-hosted"]
not_affected_if: ["panel-not-internet-exposed", "patched-version"]
published_at: "2026-10-20T18:17:18+00:00"
first_seen_at: "2026-10-23T21:57:21+00:00"
updated_at: "2026-10-25T04:12:29+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-113507", "first_seen_at": "2026-10-23T21:57:21+00:00"}]
---

# aaPanel: spoofed X-Real-Ip header bypasses IP-based access controls

aaPanel up to 8.25.0 trusts the X-Real-Ip request header in its GetClientIp function, so a remote client can set that header to a whitelisted address. This defeats IP-based access controls and lets the attacker reach restricted panel functions.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed aaPanel version with the panel's version info or `cat /www/server/panel/class/common.py | grep -n X-Real-Ip` (path unknown if the install differs)
- Look for `X-Real-Ip` handling in `class/public/common.py` in the panel directory
- Confirm whether the panel is restricted by IP allowlist in its security settings

## Fix

- Upgrade aaPanel to a release newer than `8.25.0` that includes the vendor's X-Real-Ip fix (exact fixed version unknown)
- Until upgraded, restrict panel access at the firewall or reverse proxy rather than relying on the panel's IP allowlist
- Stop trusting X-Real-Ip from untrusted clients at the proxy layer

## Timeline

- 2026-10-23T21:57:21+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-113507

## From the sources

A vulnerability was found in aaPanel up to 8.25.0. The impacted element is the function GetClientIp of the file class/public/common.py. The manipulation of the argument X-Real-Ip results in improper access controls. The attack may be performed from remote. The exploit has been made public and could be used. The vendor confirms: "The reported X-Real-Ip IP-bypass vulnerability has already been fixed".

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
