Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Unauthenticated remote HTTP GET against default Docker deployment retrieves secrets - AV:N/AC:L/PR:N/UI:N; high confidentiality loss only, no integrity or availability impact.
Primary rating from Vendor (https://github.com/WWBN/AVideo).
CVSS VectorVendor: https://github.com/WWBN/AVideo
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Lifecycle Timeline
3DescriptionCVE.org
Vulnerability Details
CWE: CWE-538 - Insertion of Sensitive Information into Externally-Accessible File or Directory
The official docker-compose.yml (line 61) mounts the entire project root directory as the Apache document root:
volumes:
- "./:/var/www/html/AVideo"This causes the .env file - which contains database credentials, admin passwords, and infrastructure configuration - to be served as a static file at /.env. No .htaccess rule or Apache configuration blocks access to dotfiles.
Exposed Information
An unauthenticated request to GET /.env returns:
DB_MYSQL_HOST=database
DB_MYSQL_USER=avideo
DB_MYSQL_PASSWORD=avideo
SYSTEM_ADMIN_PASSWORD=admin123
TLS_CERTIFICATE_FILE=/etc/apache2/ssl/localhost.crt
TLS_CERTIFICATE_KEY=/etc/apache2/ssl/localhost.key
NETWORK_SUBNET=172.30.0.0/16Steps to Reproduce
Prerequisites
- AVideo deployed using the official
docker-compose.yml - No modifications to the default configuration
Steps
- Deploy AVideo using
docker compose up -d - Send:
curl http://target/.env - The full
.envfile contents are returned, including database credentials and admin password
Impact
- Attacker: Unauthenticated (any remote user)
- Victim: AVideo server and database
- Specific damage: Attacker obtains database credentials (
DB_MYSQL_USER,DB_MYSQL_PASSWORD), admin password (SYSTEM_ADMIN_PASSWORD), and internal network topology (NETWORK_SUBNET). This enables direct database access, admin panel takeover, and further lateral movement within the Docker network.
Proposed Fix
Add a .htaccess rule to block access to dotfiles:
# Block access to hidden files (.env, .git, etc.)
<FilesMatch "^\.">
Order Allow,Deny
Deny from all
</FilesMatch>Or configure Apache to deny dotfile access in the virtual host configuration.
Articles & Coverage 1
AnalysisAI
Unauthenticated information disclosure in WWBN AVideo (versions prior to 29.0) deployed via the official docker-compose.yml exposes the application's .env file at /.env, leaking database credentials, the SYSTEM_ADMIN_PASSWORD, and internal Docker network topology. The default Apache document root mount lacks any rule blocking dotfile access, so a single curl request to /.env returns plaintext secrets. No public exploit identified at time of analysis, though reproduction is trivial against any default Docker deployment.
Technical ContextAI
AVideo is an open-source PHP video streaming platform (composer package wwbn/avideo) shipped with an official Docker Compose stack that bind-mounts the project root (./) to /var/www/html/AVideo as the Apache DocumentRoot. The .env file co-located in the project root therefore becomes a static asset served by Apache, and the shipped .htaccess lacked any FilesMatch or RewriteRule directive denying access to hidden files. While the NVD CWE is listed as CWE-20, the GHSA advisory more accurately classifies this as CWE-538 (Insertion of Sensitive Information into Externally-Accessible File or Directory), a classic deployment-configuration exposure pattern compounded by storing production secrets in a web-served directory.
RemediationAI
Vendor-released patch: upgrade to AVideo 29.0 or later, which adds a RewriteRule in .htaccess blocking any path component beginning with a dot (except /.well-known/) per commit 7f418de1a95ab87bb8c8c3eb3702d71c351e098d. Operators who cannot upgrade immediately should manually add the same rule (RewriteRule "(^|/)\.(?!well-known(?:/|$))" - [F,L,NC]) or a FilesMatch "^\." Deny block to their Apache configuration; this safely blocks .env, .git, and other dotfile exposure but will also break ACME http-01 challenges if the well-known exception is omitted. As an additional hardening step, rotate the leaked DB_MYSQL_PASSWORD and SYSTEM_ADMIN_PASSWORD, move the .env outside the document root, and restrict the docker-compose volume mount to only the public web subdirectory rather than the project root. See https://github.com/WWBN/AVideo/security/advisories/GHSA-wf69-r4mx-43rr for the full advisory.
An issue was discovered in Appsmith before 1.52. Rated critical severity (CVSS 9.8), this vulnerability is remotely expl
runc through version 1.0-rc6 (used in Docker before 18.09.2) contains a container escape vulnerability that allows attac
Netmaker makes networks with WireGuard. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no a
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
The News & Blog Designer Pack - WordPress Blog Plugin - (Blog Post Grid, Blog Post Slider, Blog Post Carousel, Blog Post
Docker 1.3.2 allows remote attackers to execute arbitrary code with root privileges via a crafted (1) image or (2) build
Remote code execution in Gogs through 0.14.2 allows authenticated users (and unauthenticated attackers on default-config
Remote code execution in NocoBase Workflow Script Node (npm @nocobase/plugin-workflow-javascript) allows authenticated l
Docker Desktop Community Edition before 2.1.0.1 allows local users to gain privileges by placing a Trojan horse docker-c
Vasion Print (formerly PrinterLogic) Virtual Appliance Host prior to version 25.2.169 and Application prior to version 2
An issue in Plone Docker Official Image 5.2.13 (5221) open-source software that could allow for remote code execution du
Unauthenticated remote code execution in Kestra orchestration platform before 1.0.45 and 1.3.21 lets anonymous attackers
Same weakness CWE-20 – Improper Input Validation
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-45037
GHSA-wf69-r4mx-43rr