CVE-1999-0316

HIGH7.2/ 10.0
Share:
Published: December 1, 1995 at 05:00 AM
Modified: April 3, 2025 at 01:03 AM
Source: cve@mitre.org

Vulnerability Description

Buffer overflow in Linux splitvt command gives root access to local users.

CVSS Metrics

Base Score
7.2
Severity
HIGH
Vector String
AV:L/AC:L/Au:N/C:C/I:C/A:C

Weaknesses (CWE)

NVD-CWE-Other
Source: nvd@nist.gov

AI Security Analysis

01 // Technical Summary

Local privilege escalation is possible on vulnerable Linux systems due to a buffer overflow in the splitvt command. Successful exploitation allows a local user to gain root access, granting complete control over the compromised system and potentially leading to significant data breaches and system compromise.

02 // Vulnerability Mechanism

Step 1: User Interaction: A local user executes the splitvt command, potentially with specially crafted arguments or environment variables.

Step 2: Input Processing: The splitvt command receives the user-supplied input, which is then processed and copied into internal buffers.

Step 3: Buffer Overflow: Due to a lack of input validation, the program copies the user-provided input into a fixed-size buffer without checking its length. If the input exceeds the buffer's capacity, a buffer overflow occurs.

Step 4: Memory Corruption: The overflow overwrites adjacent memory regions, potentially including critical program data like function pointers or control variables.

Step 5: Code Execution: By carefully crafting the input, the attacker overwrites a function pointer with the address of malicious code (e.g., shellcode) or redirects program execution to a controlled memory location.

Step 6: Privilege Escalation: The malicious code is executed with the privileges of the splitvt process, which typically runs with root privileges, granting the attacker root access to the system.

03 // Deep Technical Analysis

The vulnerability lies within the splitvt command, specifically in how it handles user-supplied input. The program fails to properly validate the size of input strings before copying them into a fixed-size buffer. This leads to a buffer overflow when a specially crafted input string, larger than the allocated buffer, overwrites adjacent memory regions. This overwrite can corrupt critical program data, including function pointers or other control variables. By carefully crafting the input, an attacker can overwrite these memory locations with malicious code, such as a shellcode that executes with root privileges. The root cause is a lack of bounds checking on user-supplied input, a classic example of a memory management vulnerability.

CVE-1999-0316 - HIGH Severity (7.2) | Free CVE Database | 4nuxd