CVE-2024-27570
Executive Summary
CVE-2024-27570 is a critical stack overflow vulnerability discovered in the LBT T300-T390 router firmware version v2.2.1.8. The flaw resides in the generate_conf_router function, where the ApCliSsid parameter is processed without proper bounds checking. An unauthenticated attacker can trigger a Denial of Service (DoS) by sending a crafted POST request, causing the device to crash or become unresponsive. No official patch has been released by the vendor, and no public exploit code is available at this time. The vulnerability is classified under MITRE ATT&CK tactic T1499 (Endpoint Denial of Service).
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.
No signup required
Supply Chain & Package Security
This vulnerability is not related to any NPM, PyPI, Go, or Ruby package. It is a firmware-level issue in an embedded IoT device (LBT T300-T390 router). No supply chain package security implications apply.
CVSS Breakdown & Threat Level
The CVSS score is listed as 0.0, indicating that no official CVSS vector has been assigned. However, based on the nature of the vulnerability (stack overflow leading to DoS), a reasonable estimated vector would be:
Estimated CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Estimated Base Score: 7.5 (High)
Breakdown:
- Attack Vector (AV): Network (N) – Exploitable remotely.
- Attack Complexity (AC): Low (L) – No special conditions required.
- Privileges Required (PR): None (N) – No authentication needed.
- User Interaction (UI): None (N) – No user action required.
- Scope (S): Unchanged (U) – Vulnerability does not affect other components.
- Confidentiality (C): None (N) – No data exposure.
- Integrity (I): None (N) – No data modification.
- Availability (A): High (H) – Complete loss of availability (DoS).
Threat Level: High – Remote, unauthenticated DoS with low complexity.
Deep Dive & Mechanics
The vulnerability is a classic stack-based buffer overflow (CWE-121) in the generate_conf_router function of the LBT T300-T390 firmware. The function processes the ApCliSsid parameter from a POST request without validating its length. When an overly long string is supplied, it overwrites the stack return address and other critical data, leading to a crash or potential code execution.
Root Cause: The generate_conf_router function uses a fixed-size stack buffer for the ApCliSsid parameter but does not perform bounds checking before copying user-supplied data. This allows an attacker to send a POST request with an excessively long ApCliSsid value, causing a stack overflow.
Attack Vector: The attacker sends a crafted HTTP POST request to the router's web interface (typically on port 80 or 443). The request includes the ApCliSsid parameter with a payload exceeding the buffer size.
Impact: The immediate impact is a Denial of Service (DoS) – the router crashes and becomes unresponsive until a power cycle. In theory, if the attacker can control the overwritten return address, arbitrary code execution could be achieved, but no such exploit has been publicly demonstrated.
Vulnerable vs. Patched Code
Since no patch is available, we can only describe the vulnerable code pattern.
Vulnerable Code (Conceptual):
void generate_conf_router(char *post_data) {
char buffer[256];
// Extract ApCliSsid from post_data
char *ssid = extract_param(post_data, "ApCliSsid");
// Vulnerable: no bounds check
strcpy(buffer, ssid);
// ... rest of function
}
Patched Code (Hypothetical):
void generate_conf_router(char *post_data) {
char buffer[256];
char *ssid = extract_param(post_data, "ApCliSsid");
// Safe: use strncpy with length limit
strncpy(buffer, ssid, sizeof(buffer) - 1);
buffer[sizeof(buffer) - 1] = '\0';
// ... rest of function
}
The fix would involve replacing strcpy with strncpy or using a safer function like snprintf to ensure the buffer is not overflowed.
Exploitation & Lab Setup
Red Team
Objective: Trigger a Denial of Service on the LBT T300-T390 router.
Lab Setup:
- Target: LBT T300 or T390 router with firmware v2.2.1.8 (default IP: 192.168.1.1)
- Attacker: Kali Linux or any system with curl/netcat
- Network: Both on the same subnet
Exploit Steps:
- Identify the router's IP (e.g., 192.168.1.1).
- Send a crafted POST request with a long
ApCliSsidparameter:
curl -X POST http://192.168.1.1/goform/GenerateConfRouter \
-d "ApCliSsid=$(python3 -c 'print("A"*1000)')"
- The router should crash and become unresponsive. Verify by attempting to ping the router:
ping -c 4 192.168.1.1
If no response, the DoS is successful.
Note: No public exploit code exists; this is a conceptual demonstration.
Blue Team
Detection & Response:
- Monitor for unusually long POST requests to
/goform/GenerateConfRouterwith theApCliSsidparameter. - Implement input validation on the router's web interface (if possible).
- Use network monitoring tools to detect anomalous traffic patterns.
- If a crash occurs, collect logs and perform a memory dump for forensic analysis.
Mitigation:
- Isolate the router from untrusted networks.
- Apply vendor firmware updates if/when available.
- Use a Web Application Firewall (WAF) to filter oversized parameters.
Indicators of Compromise (IOCs)
Network IOCs:
- POST requests to
/goform/GenerateConfRouterwithApCliSsidparameter exceeding 256 characters. - Source IP addresses sending multiple such requests.
- Unusual HTTP request sizes (e.g., > 1KB for a single parameter).
Host IOCs (on the router):
- Router crash logs indicating a stack overflow in
generate_conf_router. - Unexpected reboots or unresponsive web interface.
- Memory dumps showing repeated 'A' characters (or other patterns) in the stack.
File IOCs:
- Firmware version: v2.2.1.8 (vulnerable).
- No known malicious files; the exploit is purely network-based.
Detection Engineering
YARA Rule
rule CVE_2024_27570_StackOverflow {
meta:
description = "Detects exploit attempts for CVE-2024-27570 in LBT T300-T390 routers"
author = "Valters IT"
date = "2025-04-10"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2024-27570"
strings:
$s1 = "ApCliSsid=" ascii wide nocase
$s2 = "generate_conf_router" ascii wide nocase
$overflow = /ApCliSsid=[A-Za-z0-9]{257,}/ ascii
condition:
$s1 and $s2 and $overflow
}
Sigma Rule
title: CVE-2024-27570 LBT Router Stack Overflow Attempt
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects HTTP POST requests with overly long ApCliSsid parameter targeting LBT routers
author: Valters IT
date: 2025-04-10
references:
- https://nvd.nist.gov/vuln/detail/CVE-2024-27570
logsource:
category: webserver
product: apache
service: http
detection:
selection:
cs-method: 'POST'
cs-uri-query|contains: '/goform/GenerateConfRouter'
cs-uri-query|re: 'ApCliSsid=[A-Za-z0-9]{257,}'
condition: selection
falsepositives:
- Legitimate long SSID names (unlikely)
level: high
Suricata Rule
alert http $HOME_NET any -> $EXTERNAL_NET any (
msg:"CVE-2024-27570 LBT Router Stack Overflow Attempt";
flow:to_server,established;
content:"POST"; http_method;
content:"/goform/GenerateConfRouter"; http_uri;
content:"ApCliSsid="; http_client_body;
pcre:"/ApCliSsid=[A-Za-z0-9]{257,}/Ri";
sid:1000001;
rev:1;
reference:cve,2024-27570;
classtype:attempted-dos;
priority:1;
)
Remediation & Mitigation
Immediate Actions:
- Isolate the device: Place the LBT router behind a firewall and restrict access to the web interface to trusted IPs only.
- Monitor logs: Enable logging on the router and monitor for crash events or unusual POST requests.
- Apply workaround: If possible, disable the
generate_conf_routerfunctionality or block access to the/goform/GenerateConfRouterendpoint via a reverse proxy or WAF.
Long-term Fix:
- The vendor (Lbt) must release a firmware update that implements proper input validation and bounds checking in the
generate_conf_routerfunction. Until then, consider replacing the device with a more secure alternative.
Detection & Prevention:
- Deploy the provided YARA, Sigma, and Suricata rules to detect exploit attempts.
- Use network segmentation to limit exposure of IoT devices.
Valters IT
DevSecOps & Cyber Threat Intelligence
Securing digital frontiers, one CVE at a time.