Skip to main content

kkFileView CVE-2026-73244

| EUVDEUVD-2026-56940 MEDIUM
Path Traversal (CWE-22)
2026-08-11 security-advisories@github.com
5.3
CVSS 3.1 · Vendor: github
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify internet-exposed kkFileView instance
  2. Delivery
    Send POST /listFiles with traversal path (e.g., ../../etc)
  3. Exploit
    Receive JSON directory listing outside demo root
  4. Execution
    Enumerate sensitive directories (config, logs, home)
  5. Impact
    Use filesystem intelligence to plan follow-on attack

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

No authentication is required - the /listFiles endpoint is explicitly described as unauthenticated, consistent with CVSS PR:N. Exploitation requires only network access to the kkFileView HTTP service and the ability to send a POST request with a crafted path parameter; no special privileges, session tokens, or non-default configuration are needed. Exploitation is constrained to directory enumeration only - file contents cannot be retrieved through this endpoint. The filesystem paths reachable are limited to those accessible under the OS user account running the kkFileView process. If the service is deployed exclusively on an internal network with no external exposure, exploitation is limited to actors who already have internal network access.

Impact

The CVSS 3.1 score of 5.3 (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N) accurately reflects the bounded nature of the vulnerability: the disclosed information is limited to directory names, not file contents, and there is no write or denial-of-service primitive. The unauthenticated network vector with low attack complexity is the most operationally significant signal - exploitation requires nothing beyond a crafted HTTP POST request. EPSS data was not provided in the available intelligence, so relative exploitation probability cannot be independently quantified. The absence of a CISA KEV entry and the absence of confirmed public POC code suggest opportunistic mass exploitation is not currently observed, though the simplicity of the attack makes it accessible to low-sophistication actors. The primary residual risk is that directory listings frequently expose paths to configuration files, credential stores, and log directories that facilitate reconnaissance for higher-impact follow-on attacks, amplifying the effective impact beyond the raw CVSS score implies.

Exploit ScenarioDerived

An unauthenticated attacker sends a POST request to the target's /listFiles endpoint with a path parameter such as ../../etc or ../../home/appuser; the server resolves this against the demo directory base path and calls Files.newDirectoryStream on the traversed location, returning a JSON directory listing. No public POC has been identified, but the vulnerability is mechanically trivial and the exact injection point is documented in the public fix commit, making independent reproduction straightforward for any attacker who reads the patch.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 11, 2026

Directory traversal in kkFileView prior to 5.0.1 exposes an unauthenticated POST /listFiles endpoint that accepts a user-supplied path parameter and passes it directly to Files.newDirectoryStream without confining it to the configured demo directory, enabling remote attackers to enumerate arbitrary server-side directories. The flaw is mechanically straightforward - no credentials, no user interaction, and no special configuration are required - though impact is bounded to directory listing rather than file content disclosure. No public exploit code or CISA KEV listing has been identified at time of analysis; a vendor-released patch exists at version 5.0.1.

RemediationAI

Upgrade kkFileView to version 5.0.1 or later; this is the vendor-confirmed fix, delivered via GitHub release tag v5.0.1 (https://github.com/kekingcn/kkFileView/releases/tag/v5.0.1) and commit 47745e4d (https://github.com/kekingcn/kkFileView/commit/47745e4d74112000fcc4f0664e2fc751e6cf9bae). If immediate upgrade is not feasible, block external access to the POST /listFiles endpoint at a WAF or reverse proxy - note this will disable demo file listing functionality for legitimate users. As a secondary control, restrict kkFileView network exposure to trusted internal networks, eliminating the internet-facing attack surface; this does not fix the flaw but reduces attacker reach to insider or post-compromise scenarios. Refer to the GitHub Security Advisory GHSA-pmp8-g8p2-p6jq for additional vendor guidance.

Affected VersionsENISA

kkFileView < 5.0.1

Affected Packages

euvd kkfileview fix: 5.0.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

kkFileView is a Spring Boot document preview service written in Java. The vulnerable code is in server/src/main/java/cn/keking/web/controller/FileController.java, in the getFiles() method bound to POST /listFiles. Prior to the fix, the method concatenated the raw user-supplied path string directly onto the base directory path and passed the result to the Java NIO Files.newDirectoryStream() API, performing no null-byte rejection, no normalization, and no prefix-containment check to verify the resolved path remained inside the demo directory root. CWE-22 (Improper Limitation of a Pathname to a Restricted Directory - Path Traversal) is the root cause class. The fix in commit 47745e4d introduces a static resolveDirectoryUnderRoot() helper that applies lexical normalization via Path.normalize(), explicitly rejects null bytes, leading slashes, Windows drive-letter prefixes, and .. segments, resolves the candidate path under the root, verifies prefix containment both on the normalized path and on the real filesystem path (via toRealPath()) to block symlink-based escapes.

Know when Java gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (github) PRIMARY 5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
vuln.today AI 5.3 MEDIUM

Network-reachable unauthenticated endpoint requires no privileges or interaction; read-only directory listing yields only low confidentiality impact with no integrity or availability effect.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

Lifecycle Timeline

1
Patch available
Aug 11, 2026 - 21:18 EUVD

DescriptionCVE.org

kkFileView is a universal file online preview project based on Spring Boot. Prior to 5.0.1, the unauthenticated POST /listFiles endpoint in server/src/main/java/cn/keking/web/controller/FileController.java passes the user-controlled path parameter from FileController#getFiles to Files.newDirectoryStream without confinement to the demo directory, allowing directory enumeration outside the intended root. This issue is fixed in version 5.0.1.

Threat Intelligence Overview

EPSS Score
0.3%
Top 73% exploitable
Prevalence
Low
niche Java document preview tool, limited global enterprise footprint
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy