search menu icon-carat-right cmu-wordmark

CERT Coordination Center

Linux kernel fails to properly handle floating point signals generated by "fsave" and "frstor"

Vulnerability Note VU#973654

Original Release Date: 2004-06-15 | Last Revised: 2004-08-23

Overview

The Linux kernel contains a denial-of-service vulnerability that allows local users to disable affected hosts.

Description

Several versions of the Linux kernel contain a defect in their use of the Intel processor instruction set. The "fsave" and "frstor" instructions are used to store and restore the state of the processor's floating point unit (FPU), respectively. Typically, manipulation of the FPU is handled by the compiler of a high-level programming language, but some languages allow programmers to invoke assembly instructions directly.

By using a combination of calls to fsave and frstor, it is possible to write a simple program that will force the Linux kernel into an infinite signal handling loop. When this occurs, the kernel will fail to operate properly or respond to input, causing a denial-of-service condition. Such a program does not require specialized tools or privileged system access, so it is possible for any local user to exploit this vulnerability.

Impact

This vulnerability allows local users to disable the Linux kernel on affected hosts, resulting in a denial-of-service condition.

Solution

Apply a patch from your vendor

The Systems Affected section of this document contains a list of vendors that have been notified of this issue, as well as their responses.

Vendor Information

973654
 

View all 36 vendors View less vendors


CVSS Metrics

Group Score Vector
Base
Temporal
Environmental

References

Acknowledgements

This vulnerability was discovered by Stian Skjelstad.

This document was written by Jeffrey P. Lanza.

Other Information

CVE IDs: CVE-2004-0554
Severity Metric: 11.81
Date Public: 2004-06-14
Date First Published: 2004-06-15
Date Last Updated: 2004-08-23 17:54 UTC
Document Revision: 23

Sponsored by CISA.