CVE-2019-5054
Description
An exploitable denial-of-service vulnerability exists in the session handling functionality of the NETGEAR N300 (WNR2000v5 with Firmware Version V1.0.0.70) HTTP server. An HTTP request with an empty User-Agent string sent to a page requiring authentication can cause a null pointer dereference, resulting in the HTTP service crashing. An unauthenticated attacker can send a specially crafted HTTP request to trigger this vulnerability.
Affected products
1Patches
0No patches discovered yet.
Vulnerability mechanics
Root cause
"Missing NULL pointer check on req->user_agent before passing it to strcat() in send_authenticate()."
Attack vector
An unauthenticated attacker sends an HTTP request to a page that requires authentication (e.g., `/UPG_upgrade.htm`) with an empty `User-Agent` header [ref_id=1]. The HTTP daemon populates the `http_request` structure, but because the `User-Agent` header is empty, `req->user_agent` remains unpopulated (NULL) [ref_id=1]. When `send_authenticate()` calls `strcat(curBrowser, req->user_agent)`, the NULL pointer dereference causes a segmentation fault, crashing the HTTP service [ref_id=1]. The attack is performed over the network with no authentication required [CWE-476].
Affected code
The vulnerability resides in the `send_authenticate()` function of the NETGEAR N300 (WNR2000v5) HTTP server. The function retrieves `req->user_agent` from the `http_request` structure at address `0x4cabb0` and passes it directly to `strcat()` without a NULL check [ref_id=1]. The crash occurs at the `strcat()` call when `$a1` (the user_agent pointer) is NULL, as shown in the annotated disassembly at `0x4097f8`–`0x409804` [ref_id=1].
What the fix does
The advisory does not include a patch or vendor fix details [ref_id=1]. The remediation guidance is implicit: the HTTP server should validate that `req->user_agent` is not NULL before passing it to `strcat()` in `send_authenticate()` [ref_id=1]. A NULL check on the `user_agent` pointer before the concatenation operation would prevent the null pointer dereference and resulting denial of service [CWE-476].
Preconditions
- configTarget must be a NETGEAR N300 (WNR2000v5) router running firmware version V1.0.0.70
- networkAttacker must have network access to the router's HTTP server
- inputHTTP request must target a page that requires authentication (e.g., /UPG_upgrade.htm)
- inputHTTP request must include an empty User-Agent header (e.g., 'User-Agent:')
Reproduction
Send a single curl command with an empty User-Agent header to an authenticated page on the target router: `$ curl -H 'User-Agent:' http://192.168.1.1/UPG_upgrade.htm` [ref_id=1]. This triggers the NULL pointer dereference in `send_authenticate()`, causing the HTTP service to crash [ref_id=1].
Generated on May 25, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
1- talosintelligence.com/vulnerability_reports/TALOS-2019-0831mitrex_refsource_MISC
News mentions
0No linked articles in our index yet.