☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 8.4 CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H 🐛 CWE-178
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-100693

CVE-2026-100693 Vulnerability in Hugo
📅 PUBLISHED: 2026-09-26 00:00 UTC 🔄 UPDATED: 2026-10-02 10:30 UTC
[ OFFICIAL PATCH DEPLOYED ↓ ] FIX: CONFIRMED — 3+ independent sources confirm fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.14%
👁️
0.14% probability
3.5× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Affected: Hugo — upgrade to patched release
CVSS VECTOR BREAKDOWN 8.4
AV: L Attack Vector Local
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: N User Interaction None
S: U Scope Unchanged
C: H Confidentiality High
I: H Integrity High
A: H Availability High
8.4
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-100693 is a case-sensitivity validation flaw (CWE-178) in the Hugo static site generator's security.http.urls IP-literal deny rule, affecting versions from v0.162.0 before v0.166.0. Attackers who can influence content or templates processed by Hugo — for example via resources.GetRemote calls using mixed-case URL schemes — can bypass the allow/deny list and force the build process to fetch content from restricted addresses such as localhost or other internal IP literals. With a CVSS base score of 8.4 (High) and high impacts across confidentiality, integrity, and availability, this flaw effectively converts Hugo's build-time remote-fetch functionality into a server-side request forgery (SSRF) primitive against the build host and its reachable internal network.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

Hugo is a widely used static site generator that supports fetching remote resources at build time through template functions such as resources.GetRemote. Because builds are frequently executed inside CI/CD pipelines, on developer workstations, and on build servers with access to internal networks and cloud metadata endpoints, Hugo ships a security configuration namespace — security.http.urls — that allows administrators to define allow and deny patterns for outbound requests. The deny rule in question is designed to block requests to IP-literal targets such as 127.0.0.1, localhost, and other internal addresses, preventing the build process from being weaponized as an SSRF gateway into the host.

CVE-2026-100693 describes a case-sensitive validation flaw in that IP-literal deny rule. The validation logic treats URL schemes (and by extension the matching of URL components against deny patterns) as case-sensitive, while URL schemes are defined by RFC 3986 to be case-insensitive. A URL such as one written with a mixed-case scheme (for example, variants of HTTP:///HtTp:// rather than the canonical lowercase http://) is semantically identical to a lowercase scheme under URI normalization rules, but can fail to match the deny-list logic that was written expecting a canonical lowercase form. The result is a guardrail bypass: an attacker able to place a resources.GetRemote call into content, a shortcode, a template, or a data file consumed by the build can specify a restricted IP literal in a way that evades the deny rule and causes Hugo to issue the outbound request anyway.

The vulnerability class here is CWE-178, Improper Handling of Case Sensitivity. This is a classic canonicalization mismatch: two components of the system (the URL parser and the security validator) disagree about the normalized representation of the same input, and the security decision is made on a representation that differs from the one ultimately used to perform the operation. This class is well-known in SSRF and access-control bypass research because it is trivially overlooked during code review and does not require malformed input — only a differently-cased but semantically valid one.

Key characteristics of this issue:

  • Attack surface: Hugo's build-time remote resource fetching (resources.GetRemote) driven by templates, shortcodes, content, or data files processed during a site build.
  • Preconditions: The attacker must be able to influence input that is processed by the Hugo build (e.g., contributed content, templates, or data in an untrusted repository/PR that is built by CI). The NVD description does not enumerate additional preconditions, so no further constraints should be assumed.
  • Mechanism: Case-variant URL scheme in the request causes the security.http.urls IP-literal deny rule to fail to match, so the fetch proceeds toward a restricted address such as localhost.
  • Security boundary crossed: The configured outbound-request allow/deny policy — i.e., the administrator's expectation that IP-literal targets (loopback and internal) are unreachable from the build.

No further code-level details (specific function names, regexes, or parameter names) are provided by the NVD description; the analysis above deliberately stays at the mechanism and vulnerability-class level.

Exploitation Scenarios

No public proof-of-concept, exploit code, or Nuclei template is available for CVE-2026-100693 at the time of writing. The following attack chain is inferred from the vulnerability class (case-sensitivity validation bypass enabling SSRF in build-time remote fetching) and the explicit details in the NVD description.

  1. Reconnaissance / target identification. The attacker identifies a target that builds Hugo sites where untrusted input reaches the build — the canonical case being a CI/CD pipeline that builds Hugo sites from merged pull requests, contributed content, or theme/shortcode files, and where security.http.urls deny rules are relied upon to block IP-literal access. The attacker notes that the Hugo version is in the affected range (from v0.162.0 before v0.166.0).

  2. Triggering the flawed validation class. The attacker introduces a resources.GetRemote call (in a template, shortcode, data file, or other content processed during the build) that requests a URL pointing at a restricted IP literal — for example the loopback address described in the NVD text. The URL is crafted with a mixed-case scheme rather than the canonical lowercase scheme. Because the security.http.urls IP-literal deny rule matches case-sensitively, the case-variant scheme does not match the deny rule and the request is permitted.

  3. Payload / execution at the vulnerability-class level. When the pipeline runs the Hugo build, the crafted remote fetch is executed by the build host. In line with the SSRF class, this allows the attacker's build step to cause the Hugo process to reach addresses an administrator intended to deny — the NVD description explicitly names restricted IP addresses such as localhost. The exact response-handling behavior and whether responses are exfiltrated back into generated site output depend on how the attacker positions the resources.GetRemote call in the templates; the description does not specify these implementation details, so they should not be assumed.

  4. Post-exploitation impact. Successful bypass allows the build host to be used to reach loopback and other restricted IP-literal targets, enabling internal-network reconnaissance, interaction with services bound to localhost, and — in CI environments — access to internal endpoints reachable from the builder. Given the CVSS sub-scores (C:H/I:H/A:H), the confidentiality, integrity, and availability impact is rated High, consistent with an attacker gaining the ability to reach otherwise-forbidden internal resources through the trusted build process.

Impact Assessment

CVSS: 8.4 (High) — CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.

  • Attack Vector (Local, AV:L): Reflections the exploitation requirement to influence inputs processed by the local build (e.g., repository content or templates). It is not network-exploitable against a running Hugo server in the traditional sense; the build process is the vector.
  • Attack Complexity (Low, AC:L): No special conditions beyond the ability to supply content processed by the build; the case-variant bypass is deterministic.
  • Privileges Required (None, PR:N) / User Interaction (None, UI:N): No elevated privileges and no victim interaction beyond the build occurring.
  • Scope (Unchanged, S:U): Confined to the vulnerable component's security authority as scored.
  • Confidentiality / Integrity / Availability (High/High/High): An SSRF capability against the build host with broad internal reach is scored as high impact across all three.

Blast radius. The primary affected asset is any Hugo build host, build agent, or developer workstation building affected versions. In CI/CD contexts, the blast radius extends to whatever the build runner can reach — internal services, control planes, artifact stores, and cloud metadata endpoints — because the flaw allows requests to IP-literal targets (such as localhost) that the administrator explicitly configured to be blocked. Because resources.GetRemote is a documented, first-class feature, exposure is broad across organizations that build Hugo sites from untrusted content, which is a common pipeline pattern. Business impact includes unauthorized internal access from a trusted build identity, potential leakage of build-time secrets via internal service reachability, and erosion of the trust boundary between "untrusted content" and "trusted build infrastructure."

Detection Guidance

Sigma Rule

title: Hugo resources.GetRemote Case-Bypassed IP-Literal Fetch (CVE-2026-100693)
id: 8f0c1e42-2b7a-4d19-9c3e-hugo100693
status: experimental
description: Detects Hugo builds attempting resources.GetRemote fetches to restricted
  IP literals (e.g. loopback) using mixed-case URL schemes to bypass security.http.urls.
references:
  - https://nvd.nist.gov/vuln/detail/CVE-2026-100693
author: valtersit.com
date: 2026-01-01
logsource:
  category: process_creation
  product: linux
detection:
  selection_proc:
    Image|endswith: '/hugo'
  selection_cli:
    CommandLine|contains: 'resources.GetRemote'
  selection_loopback:
    CommandLine|contains:
      - '127.0.0.1'
      - 'localhost'
      - '[::1]'
  condition: selection_proc or (selection_cli and selection_loopback)
falsepositives:
  - Legitimate local development fetching from loopback with lowercase schemes
level: high
tags:
  - attack.t1190
  - cve.2026.100693

YARA Rule

rule CVE_2026_100693_Hugo_MixedCase_IPLiteral_Bypass
{
    meta:
        description = "Detects Hugo project files referencing resources.GetRemote with mixed-case URL schemes targeting IP literals (case-sensitivity bypass, CVE-2026-100693)"
        author = "valtersit.com"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-100693"
        date = "2026-01-01"
        severity = "high"

    strings:
        $getremote = "resources.GetRemote" nocase
        // Mixed-case http(s) scheme, uppercase/mixed - lowercase canonical avoided
        $scheme_mixed = /[Hh][Tt][Tt][Pp][Ss]?:\/\// ascii
        $loopback1 = "127.0.0.1"
        $loopback2 = "localhost"
        $loopback3 = "[::1]"

    condition:
        $getremote and $scheme_mixed and any of ($loopback*)
}

Suricata IDS Rule

alert http any any -> any any (msg:"CVE-2026-100693 Hugo SSRF attempt - mixed-case scheme to IP-literal restricted target"; flow:established,to_server; http.method; content:"GET"; http.header; content:"127.0.0.1"; nocase; http.header; content:"localhost"; nocase; classtype:attempted-recon; reference:cve,2026-100693; reference:url,nvd.nist.gov/vuln/detail/CVE-2026-100693; sid:2026100693; rev:1;)

Elastic Detection

process where event.type == "start" and
  process.name == "hugo" and
  process.command_line : "*resources.GetRemote*" and
  (process.command_line : "*127.0.0.1*" or
   process.command_line : "*localhost*" or
   process.command_line : "*[::1]*")

Splunk SPL Query

index=main sourcetype=hugo:build OR sourcetype=process:exec
| where match(lower(command_line), "resources\.getremote")
| where match(lower(command_line), "(127\.0\.0\.1|localhost|\[::1\])")
| eval mixed_scheme=if(match(command_line, "(?i)(http)://") AND NOT match(command_line, "http://"), 1, 0)
| where mixed_scheme=1
| stats count min(_time) as first_seen max(_time) as last_seen values(command_line) as cmds by host, user
| convert ctime(first_seen) ctime(last_seen)

Wazuh OSSEC Rule

<group name="hugo,web,">
  <rule id="1006930" level="10">
    <decoded_as>json</decoded_as>
    <field name="command_line">resources\.GetRemote</field>
    <field name="command_line">127\.0\.0\.1|localhost|\[::1\]</field>
    <description>CVE-2026-100693: Hugo build attempting resources.GetRemote fetch to restricted IP literal (possible security.http.urls bypass)</description>
    <mitre>
      <id>T1190</id>
    </mitre>
    <group>cve_2026_100693,ssrf,</group>
  </rule>
</group>

Mitigation & Patch Guidance

Patch confidence: 0/4 — UNPATCHED. No patch evidence was identified from any tracked source, and no vendor advisory or fix reference was confirmed in the provided data. Per the NVD description, the flaw is stated to be corrected from v0.166.0 onward, so upgrading to v0.166.0 or later is the stated remediation direction — but this should be independently verified against the Hugo release notes and security advisories before relying on it.

  1. Immediate mitigations (while unpatched/unverified):

    • Do not build Hugo sites from untrusted content (untrusted PRs, forks, or externally contributed templates/shortcodes/data files) using affected versions.
    • Where possible, restrict resources.GetRemote usage via security.http.urls allow rules plus defense-in-depth controls at the network layer (egress firewalls, DNS pinning, and blocking of loopback/RFC1918/metadata endpoints from build runners).
    • Run Hugo builds in a network-isolated, least-privilege container/sandbox with no access to internal services and no cloud metadata endpoints.
    • Require review/approval of any changes that introduce or modify resources.GetRemote calls.
  2. Patch / upgrade steps:

    • Upgrade Hugo to v0.166.0 or later if that release is available and verified; monitor the project's release notes and security advisories for an authoritative fix confirmation.
    • Until a verified fix exists, treat builds of untrusted content with affected versions as unsafe and apply the isolation mitigations above.
    • After upgrading, re-validate security.http.urls configuration and confirm the IP-literal deny behavior against mixed-case scheme inputs during regression testing.
  3. Long-term hardening:

    • Normalize and canonicalize all URLs (scheme and host casing) before applying allow/deny policy checks; make security comparisons case-insensitive where the underlying standard (RFC 3986) mandates it.
    • Adopt a default-deny egress model for CI/CD build runners, with explicit allowlisting rather than relying solely on application-level deny rules.
    • Pin Hugo versions in CI and gate upgrades through a controlled review, since build tools execute trusted-identity network requests.
    • Continuously test security controls for canonicalization mismatches (case, encoding, and URL normalization) as part of routine security regression testing.

References

No threat actor campaigns or exploit-in-the-wild evidence were identified for CVE-2026-100693 in the available data; EPSS has not yet been scored by FIRST.org.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

product:"Hugo"
title:"Hugo"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-100693/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.