External risk intelligence

Algernon Directory Traversal Leading to Remote Code Execution

CVE advisorySeverity: CRITICAL (CVSS 9.0)

CVE-2026-45721

Algernon is a self-contained web server designed to serve web content directly. Because the vulnerability resides in the core request handling and directory resolution logic, it is reachable via standard HTTP requests to any internet-facing deployment of the software, making it a likely target for external exposure in web server roles.

Remote Code Execution

Halo Surface Signal: 4 out of 5 — likely to be public-facing.

External exposure likelihood

Horizon Alert

Summary of the vulnerability and why it matters

This critical vulnerability in the Algernon web server could allow unauthenticated attackers to execute arbitrary code remotely by tricking the server into running a malicious script. The issue arises when Algernon searches for a specific configuration file in parent directories, potentially accessing sensitive system functions. This could have significant implications for any deployed instances of the web server.

  • Unauthenticated code execution via web requests.
  • Matters if you use Algernon web server technology.
  • Confirm if Algernon is deployed and exposed.

Attack Path

How an attacker could exploit the issue

An attacker can achieve remote code execution by placing a malicious `handler.lua` file in a directory that Algernon's web server can access. When a user requests a URL that maps to a directory lacking an index file, Algernon searches upwards for this `handler.lua` file. If found, it executes the file with full privileges, granting the attacker control over the server.

  • Entry: Attacker places `handler.lua` in accessible directory.
  • Trigger: Requesting a directory without an index file.
  • Risk: Full remote code execution and server control.

Live Threat

Current exploitation, exposure, and threat context

When Algernon is asked for a directory path without an index file, it may search upwards through parent directories, potentially past the server root, to find a `handler.lua` file to execute. If found, this file is executed with the full Algernon API exposed, allowing for remote code execution. This vulnerability is reachable without authentication, as the handler resolution occurs before permission checks, and any URL pointing to a directory without an index can trigger the search.

  • Sensitive system commands and data could be exposed.
  • Remote code execution via crafted HTTP requests.
  • Compromise of the underlying server and its services.

Operational Fix

Recommended remediation, mitigation, and detection steps

This vulnerability in Algernon's directory traversal allows for unauthenticated remote code execution. Identifying all instances of Algernon, assessing their exposure and criticality, and confirming ownership are the crucial first steps for remediation.

  • Application owners should manage remediation.
  • Verify Algernon's network exposure.
  • Plan remediation during maintenance windows.

Supplementary metadata

Validate whether this threat affects your internet-facing exposure.

Halo Threat Intelligence helps prioritize remediation with Halo Surface Signal and H/A/L/O context. Start exposure validation with a free external attack surface trial.

Frequently asked questions

What is the Algernon web server?

Algernon is a lightweight, self-contained web server written in the Go programming language. It is designed for simplicity and includes built-in features like a Lua interpreter, support for various databases, and flexible file serving capabilities. Because it bundles these components together, it is often used for rapid web application development or small-scale server projects where a simple, all-in-one executable is preferred.

What does CWE-20, CWE-426, and CWE-552 mean for CVE-2026-45721?

These codes identify the nature of the flaw: improper input validation (CWE-20), untrusted search path execution (CWE-426), and files or directories accessible to external parties (CWE-552). In simple terms, Algernon fails to restrict its search for configuration scripts to the intended web folder. By looking into parent directories it shouldn't access, the server can be tricked into running a malicious file, giving that file the power to control the system.

How is this vulnerability triggered?

The flaw is triggered when a user sends an HTTP request for a directory that lacks an index file. Algernon attempts to find a handler script named 'handler.lua' by walking up the directory tree, even moving above the folder where the website resides. If an attacker manages to place a malicious 'handler.lua' file anywhere in a directory the server can reach, the server will execute it. This does not happen if the directory already contains a valid index file.

Do I need to worry if my Algernon instance is internal?

According to Halo Surface Signal, this vulnerability is considered a likely target for external exposure because the flaw exists in core request handling. While internet-facing instances are the primary concern, any deployment that accepts unauthenticated HTTP requests is at risk. Internal systems are not automatically safe, as malicious actors or compromised internal machines could still send the specific requests needed to trigger the flaw.

What are the first steps to address CVE-2026-45721?

First, inventory your systems to identify all active instances of the Algernon web server. Once identified, evaluate whether these instances are necessary and determine their network exposure. Prioritize restricting access to any instances that do not require public internet reachability. Finally, ensure you are tracking the status of your servers so that maintenance windows can be used to update the software to version 1.17.7, which contains the fix for this issue.

References