Skip to main content

HTMLy EUVDEUVD-2026-39660

| CVE-2026-57940 LOW
Server-Side Request Forgery (SSRF) (CWE-918)
2026-06-26 mitre GHSA-fpm8-6xjp-2hq8
2.1
CVSS 4.0 · Vendor: mitre
View

Attack ChainAIDerived

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

  1. Recon
    Obtain or compromise HTMLy admin credentials
  2. Delivery
    Authenticate to HTMLy admin panel
  3. Exploit
    Navigate to Tools
  4. Install
    Import RSS
  5. C2
    Submit crafted URL (file:// or http://169.254.169.254)
  6. Execute
    Server calls file_get_contents() against target
  7. Impact
    Exfiltrate internal resource response

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

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

Exploitation Conditions

Exploitation strictly requires an authenticated session with administrative privileges in HTMLy (PR:H per CVSS vector); there is no unauthenticated or low-privilege path to the vulnerable get_feed() function. The attacker must reach the admin panel's Tools → Import RSS interface. The highest-impact exploitation variant (cloud credential theft via 169.254.169.254) additionally requires: the HTMLy instance to be hosted on a cloud provider, IMDSv1 to be accessible from the web server process (not mitigated by IMDSv2 hop-limit enforcement), and the cloud instance to have an IAM role with credentials attached. Local file read via file:// requires PHP's allow_url_fopen to be enabled (on by default) and the web server process to have read permission on the target file. What limits exploitation: full admin access is a prerequisite; cloud-specific impact requires a cloud-hosted deployment with permissive IMDS configuration; no network-level unauthenticated exposure exists.

Impact

Real-world risk is low despite the SSRF class of vulnerability. The CVSS 4.0 vector (PR:H) confirms exploitation is restricted to users who already hold full administrative control of the HTMLy instance - an attacker at that privilege level has numerous higher-impact options available. The AT:P modifier indicates a prerequisite attack target condition: the most impactful exploitation path (cloud metadata credential theft via 169.254.169.254) requires the server to be deployed on a cloud provider with IMDSv1 enabled and without hop-limit enforcement. No EPSS score was provided; no KEV listing exists; no POC exploit code has been identified. The CVSS 4.0 base score of 2.1 appropriately reflects these constraints. The primary realistic concern is cloud-hosted HTMLy instances where an admin account compromise could be chained to IMDSv1 metadata exfiltration - a meaningful but narrow threat. For on-premises deployments without cloud metadata endpoints, risk is further reduced to internal network probing and local file read, both limited by the admin access prerequisite.

Exploit ScenarioDerived

An attacker who has obtained HTMLy administrator credentials - through credential stuffing, phishing, or a prior compromise - navigates to the Tools → Import RSS page and submits http://169.254.169.254/latest/meta-data/iam/security-credentials/ as the feed URL. The server issues the HTTP request and the attacker reads the cloud IAM role credentials from the response, enabling lateral movement within the cloud environment. Alternatively, submitting file:///etc/passwd retrieves local system user information, aiding further privilege escalation on the host.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jun 26, 2026

Server-Side Request Forgery in HTMLy 3.1.1 allows authenticated administrators to coerce the server into issuing arbitrary outbound HTTP or local filesystem requests via the RSS feed import feature. The vulnerable get_feed() function at system/admin/admin.php lines 1549-1551 passes the admin-supplied URL directly to PHP's file_get_contents() with no scheme filtering or allowlist validation, enabling access to cloud metadata endpoints (e.g., 169.254.169.254), internal network services, or local files via file:// wrappers. No public exploit or CISA KEV listing exists at time of analysis; the CVSS 4.0 score of 2.1 reflects the high privilege prerequisite and limited confidentiality impact.

RemediationAI

No vendor-released patched version has been identified at time of analysis - the sole reference points to the vulnerable source code rather than a fix. Monitor the HTMLy GitHub repository (https://github.com/danpros/htmly) for upstream patches and apply them when available. As compensating controls: restrict admin panel access to trusted IP ranges or a VPN, eliminating network exposure to untrusted parties (most effective mitigation, no functional trade-off for most deployments); apply egress firewall rules on the web server host to block outbound connections to cloud metadata IP ranges (169.254.169.254, fd00:ec2::254) and RFC-1918 internal ranges, preventing the most impactful pivot scenarios; set allow_url_fopen = Off in php.ini to disable URL-based stream wrappers in file_get_contents(), though this may break other PHP functionality relying on remote URL fetching and should be tested before deployment; and enable IMDSv2 enforcement on cloud instances (AWS hop-limit = 1, Azure IMDS equivalent) to neutralize the metadata endpoint attack path specifically.

Affected VersionsENISA

htmly 3.1.1

Affected Packages

euvd htmly no fix

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

HTMLy is a PHP flat-file blogging CMS developed by danpros (CPE: cpe:2.3:a:danpros:htmly:*:*:*:*:*:*:*:*). The root cause maps to CWE-918 (Server-Side Request Forgery): the get_feed() function unconditionally invokes PHP's file_get_contents($feed_url) where $feed_url is the raw, unvalidated value submitted by the admin user. PHP's file_get_contents() honors multiple URL stream wrappers - including http://, https://, file://, and ftp:// - when allow_url_fopen is enabled (the PHP default), making this a multi-protocol SSRF risk. The code path is directly reachable through the admin UI at Tools → Import RSS, with no intermediate sanitization layer. The referenced commit (c8b7ed9) confirms the vulnerable lines exist in the current codebase.

Know when Htmly 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 (mitre) PRIMARY 2.1 LOW
CVSS:4.0/AV:N/AC:L/AT:P/PR:H/UI:N/VC:L/VI:N/VA:N/SC:L/SI:N/SA:N/AU:N/R:A/V:D/RE:L/U:Clear
vuln.today AI 2.7 LOW

Full administrative credentials required to reach the RSS import feature; only limited confidentiality impact (partial file or network data disclosure) with no integrity or availability effect.

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

Primary rating from Vendor (mitre).

CVSS VectorVendor: mitre

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
High
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

HTMLy 3.1.1 contains a Server-Side Request Forgery (SSRF) vulnerability in the RSS feed import functionality. The function get_feed() in system/admin/admin.php passes user-supplied $feed_url directly to file_get_contents() without any validation. An authenticated attacker with administrative privileges can exploit this by entering a crafted URL (e.g., http://dnslog.example.com/ , file:///etc/passwd, or http://169.254.169.254 in cloud contexts) via Tools -> Import RSS. The server will then make a request to the attacker-controlled target.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
Low
niche PHP flat-file blogging CMS with limited enterprise adoption
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

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 LOW
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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
Defer
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

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

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

More in Htmly

View all
CVE-2021-36701 CRITICAL POC
9.1 Aug 03

In htmly version 2.8.1, is vulnerable to an Arbitrary File Deletion on the local host when delete backup files. Rated cr

CVE-2026-45233 HIGH POC
7.2 Jun 25

Arbitrary file relocation in HTMLy CMS through version 3.1.1 allows low-privileged authenticated users to move any web-s

CVE-2024-30953 MEDIUM POC
6.1 Apr 17

A stored cross-site scripting (XSS) vulnerability in Htmly v2.9.5 allows attackers to execute arbitrary web scripts or H

CVE-2021-36703 MEDIUM POC
6.1 Aug 03

The "blog title" field in the "Settings" menu "config" page of "dashboard" in htmly 2.8.1 has a storage cross site scrip

CVE-2021-36702 MEDIUM POC
6.1 Aug 03

The "content" field in the "regular post" page of the "add content" menu under "dashboard" in htmly 2.8.1 has a storage

CVE-2019-8349 MEDIUM POC
6.1 May 08

Multiple cross-site scripting (XSS) vulnerabilities in HTMLy 2.7.4 allow remote attackers to inject arbitrary web script

CVE-2026-37107 CRITICAL
9.8 Oct 13

Privilege escalation in HTMLy 3.1.1 allows a remote attacker to elevate from a low-privileged account or session to admi

CVE-2022-25022 MEDIUM POC
5.4 Mar 01

A cross-site scripting (XSS) vulnerability in Htmly v2.8.1 allows attackers to excute arbitrary web scripts HTML via a c

CVE-2026-18646 MEDIUM POC
5.5 Aug 03

Path traversal in danpros HTMLy up to version 3.1.1 allows remote unauthenticated attackers to read arbitrary files from

CVE-2022-1087 MEDIUM POC
5.4 Mar 29

A vulnerability, which was classified as problematic, has been found in htmly 5.3 whis affects the component Edit Profil

CVE-2021-30637 MEDIUM POC
5.4 Apr 13

htmly 2.8.0 allows stored XSS via the blog title, Tagline, or Description to config.html.php. Rated medium severity (CVS

CVE-2024-34191 MEDIUM
6.5 May 14

htmly v2.9.6 was discovered to contain an arbitrary file deletion vulnerability via the delete_post() function at admin.

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