---
id: "CVE-2026-113505"
kind: "vulnerability"
aliases: ["CVE-2026-113505"]
title: "aaPanel: download endpoint path traversal reads files outside intended directory"
severity: "medium"
cvss: 4.3
epss: null
exploited: false
status: "open"
category: "runtime"
products: []
ecosystems: []
tags: ["aapanel", "linux-servers", "runtime", "self-hosted"]
not_affected_if: ["auth-required", "newer-version"]
published_at: "2026-10-20T17:17:34+00:00"
first_seen_at: "2026-10-23T21:57:20+00:00"
updated_at: "2026-10-25T04:39:24+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-113505", "first_seen_at": "2026-10-23T21:57:20+00:00"}]
---

# aaPanel: download endpoint path traversal reads files outside intended directory

The send_file function in the Download Endpoint of aaPanel up to 8.25.0 does not properly sanitize the filename argument, enabling path traversal. An authenticated attacker can use it to read files outside the intended download directory.

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

## How to check

- Check the installed aaPanel version against `8.25.0` (the affected range is up to and including this version)
- Review `BTPanel/routes/v2.py` in the install for the `send_file` handler and whether `filename` is sanitized

## Timeline

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

## From the sources

A flaw has been found in aaPanel up to 8.25.0. Impacted is the function send_file of the file BTPanel/routes/v2.py of the component Download Endpoint. Executing a manipulation of the argument filename can lead to path traversal. The attack can be executed remotely. The exploit has been published and may be used. The vendor confirms: "The reported RCE and LFI vulnerabilities require authentication."

---

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