Findings

CVE-2026-62858

YOURLS is a self-hosted, customizable URL shortener written in PHP.

Published Oct 14, 2026 · updated Oct 15, 2026

## Summary YOURLS versions ≤1.10.4 contain an unauthenticated path traversal vulnerability that allows attackers to include and execute arbitrary PHP files on the server without any credentials. ## Details The vulnerability exists because YOURLS uses **URL sanitization functions** ( , ) to filter request paths, but these functions are designed to clean URLs, not filesystem paths. They preserve and characters, allowing sequences to pass through unfiltered. The unsanitized keyword is then directly concatenated into a filesystem path and passed to and later operations, enabling path traversal attacks. **Data Flow:** ## Proof of Concept (POC) In the concept validation, we assume that the attacker has uploaded a file to the web root directory, but it cannot be accessed directly. (Of course, it could also be any path, such as ) ### Setup Place a test file in web root: : ### Attack Request ### Response (Apache Environment) ## Impact 1. Remote execution of uploaded PHP files – An attacker uploads a malicious PHP file to an arbitrary location on the server (e.g., via another vulnerability or file upload feature), obtains its absolute path but cannot access it directly. The attacker then leverages this vulnerability to include and execute the PHP file, gaining code execution privileges. 2. Indirect triggering of PHP code injection – If a PHP code injection point exists on the system (e.g., log injection, session injection) but the injected file cannot be accessed directly due to configuration restrictions, the attacker can use this vulnerability to include and execute the injected code, achieving remote command execution or further compromise.

Code

The project this record applies to. Exploit listings stay in References.

Timeline

Detection, updates, and resolution for this record.

  1. Oct 14, 2026 · NIST NVD

    Detected

    YOURLS is a self-hosted, customizable URL shortener written in PHP. Prior to 1.10.5, yourls_get_request() extracted the request path without sanitization, after which yourls_sanitize_url() and yourls_esc_url() preserved dot and slash traversal sequences before an attacker-controlled keyword reached file_exists() and include() under YOURLS_PAGEDIR. An unauthenticated remote attacker could traverse

  2. Oct 14, 2026 · NIST NVD

    Updated

    YOURLS is a self-hosted, customizable URL shortener written in PHP. Prior to 1.10.5, yourls_get_request() extracted the request path without sanitization, after which yourls_sanitize_url() and yourls_esc_url() preserved dot and slash traversal sequences before an attacker-controlled keyword reached file_exists() and include() under YOURLS_PAGEDIR. An unauthenticated remote attacker could traverse

  3. Oct 15, 2026 · GitHub Advisory Database

    Fix available

    yourls/yourls fixed in 1.10.5

  4. Oct 15, 2026 · GitHub Advisory Database

    Fix available

    yourls/yourls fixed in 1.10.5

  5. Oct 15, 2026 · GitHub Advisory Database

    Updated

    ## Summary YOURLS versions ≤1.10.4 contain an unauthenticated path traversal vulnerability that allows attackers to include and execute arbitrary PHP files on the server without any credentials. ## Details The vulnerability exists because YOURLS uses **URL sanitization functions** ( , ) to filter request paths, but these functions are designed to clean URLs, not filesystem paths. They preserve and

Affected

  • Packagist yourls/yourls0 → 1.10.5

Sources

  • CVE.orgVulnerability recordCVE-2026-62858

    Official CVE identifier

    cve.org
  • FIRST EPSSExploitation probabilityCVE-2026-62858

    30-day exploitation probability 0.5%

    first.org
  • GitHub Advisory DatabasePackage advisoryGHSA-f8ff-652m-j5rx

    GitHub Advisory Database record mirrored by OSV.

    github.com
  • NIST NVDVulnerability recordCVE-2026-62858

    YOURLS is a self-hosted, customizable URL shortener written in PHP. Prior to 1.10.5, yourls_get_request() extracted the request path without sanitization, after which yourls_sanitize_url() and yourls_esc_url() preserved dot and slash traversal sequences before an attacker-control

    nvd.nist.gov
  • OSV.devPackage advisoryGHSA-f8ff-652m-j5rx

    YOURLS: Unauthenticated File Inclusion

    osv.dev

References