VYPR
Unrated severityNVD Advisory· Published Jun 29, 2005· Updated Jun 16, 2026

CVE-2005-2071

CVE-2005-2071

Description

traceroute in Sun Solaris 10 on x86 systems allows local users to execute arbitrary code with PRIV_NET_RAWACCESS privileges via (1) a large number of -g arguments or (2) a malformed -s argument with a trailing . (dot).

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Affected products

2

Patches

Vulnerability mechanics

Root cause

"Missing bounds checking on the number of `-g` gateway arguments allows stack buffer overflow, and improper validation of the `-s` source address argument causes heap corruption."

Attack vector

A local attacker triggers the `-g` overflow by passing 10 or more `-g` arguments followed by a crafted IP address that encodes a return address and shellcode. The IP address bytes overwrite the saved return address on the stack, and the shellcode is placed in one of the `-g` arguments. For the `-s` vulnerability, a malformed source address with a trailing dot (e.g. `127.0.0.1.`) causes heap corruption during `freeaddrinfo()`, which can be leveraged for arbitrary code execution. Both vectors require only local shell access and no special privileges beyond those already held by the `traceroute` binary [ref_id=1].

Affected code

The vulnerability resides in `/usr/sbin/traceroute` on Solaris 10 x86 systems. The `-g` (gateway) argument handler suffers from a buffer overflow when 10 or more `-g` parameters are supplied, overwriting the return address with the IP address argument. The `-s` (source) argument handler causes heap corruption when given a malformed value with a trailing dot, leading to a crash in `freeaddrinfo()` called from `main()` [ref_id=1].

What the fix does

The advisory does not include a patch or vendor fix. The researcher notes the vulnerability is specific to Solaris 10 and does not affect Solaris 8, 9, or OpenSolaris, suggesting the bug was introduced in the Solaris 10 codebase. No remediation guidance is provided in the reference write-up beyond the implicit observation that the flaw is absent in earlier releases [ref_id=1].

Preconditions

  • authAttacker must have local shell access to a Solaris 10 x86 system
  • configThe traceroute binary must be present and executable at /usr/sbin/traceroute
  • authNo additional privileges required beyond those of the invoking user

Reproduction

1. Supply 10 or more `-g` arguments with a crafted IP address as the target: `/usr/sbin/traceroute -g 1 -g 2 -g 3 -g 4 -g 5 -g 6 -g 7 -g 8 -g 9 -g 10 127.0.0.1` — this causes a segmentation fault with the return address overwritten by `0x0100007f` (the IP bytes). 2. For code execution, use a Perl script that encodes a return address and shellcode into the IP address and a `-g` argument, as demonstrated in the PoC [ref_id=1]. 3. For the `-s` heap corruption, pass a malformed source address with a trailing dot: e.g. `/usr/sbin/traceroute -s 127.0.0.1. 127.0.0.1` [ref_id=1].

Generated on May 26, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

8

News mentions

0

No linked articles in our index yet.