The OpenNET Project / Index page

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

Представлен новый локальный эксплоит для Linux-ядра

08.12.2010 16:35

Ден Розенберг (Dan Rosenberg), консультант по безопасности компании Virtual Security Research, опубликовал в списке рассылки FullDisclosure код эксплоита, позволяющего локально получить привилегии суперпользователя в Linux. Эксплоит примечателен тем, что его работа основана на одновременном использовании трех, с виду незначительных, уязвимостей в Linux-ядре, подчеркивая, что сочетание нескольких факторов, по отдельности приводящих к краху ядра (DoS-уязвимости), могут привести к неожиданным последствиям.

В качестве основы для построения эксплоита используется обнаруженная несколько дней назад уязвимость CVE-2010-4258, позволяющая сохранить значение NULL по любому переданному пользователем указателю внутри адресного пространства ядра. Уязвимости CVE-2010-3849 и CVE-2010-3850 обеспечивают возможность разыменования NULL-указателя и используются в качестве вспомогательных методов для создания нужных условий эксплуатации первой уязвимости (вызов обработчика OOPS-событий), что в конечном итоге приводит к передаче управления коду злоумышленника. Практически, вспомогательные уязвимости CVE-2010-3849 и CVE-2010-3850 (разыменование указателя и активация необходимого для этого Econet-модуля) уже исправлены во многих дистрибутивах, но вместо них могут быть использованы любые подобные уязвимости, которые всплывают регулярно.

Эксплоит протестирован в системах Ubuntu 10.04 и 10.10 со штатными Linux-ядрами, но теоретически функционирует со всеми Linux-ядрами серии 2.6.x, включая последний тестовые выпуск ядра 2.6.37. Опубликованный код эксплоита оформлен в виде прототипа, намеренно модифицированного для защиты от необдуманного использования неискушенными обывателями (для его работы в RedHat, Slackware и Debian потребуется модификация, а для Ubuntu ранее было выпущено обновление с исправлением проблем CVE-2010-3849 и CVE-2010-385). Появление обновлений с исправлением уязвимости CVE-2010-4258 для различных Linux-дистрибутивов можно отследить на следующих страницах: Slackware, Gentoo, Mandriva, openSUSE, CentOS, Fedora, RHEL, Debian, Ubuntu.

До момента выхода обновлений, для временной защиты достаточно использовать (уже включено по умолчанию в RHEL и CentOS):


   echo 1 > /proc/sys/kernel/panic_on_oops


  1. Главная ссылка к новости (http://seclists.org/fulldisclo...)
  2. OpenNews: Для Glibc представлен еще один метод повышения привилегий
  3. OpenNews: Обновление OpenSSL 0.9.8p и 1.0.0b с устранением опасной уязвимости
  4. OpenNews: В Linux-ядре обнаружены три опасные локальные уязвимости
  5. OpenNews: В Glibc обнаружена серьезная уязвимость
  6. OpenNews: Релиз bzip2 и libbz2 1.0.6 с исправлением серьезной уязвимости
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/28924-linux
Ключевые слова: linux, exploit, kernel, security
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (80) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Аноним (-), 17:04, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    слово "эксплоит" относится к "эксплуатации" ?
     
     
  • 2.4, Marbleless (?), 17:09, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >слово "эксплоит" относится к "эксплуатации" ?

    Трудно сказать, относится ли оно напрямую в английском языке (поскольку exploit, скорее всего, заимствовано из французского), но уж точно не в русском.

    Исправить нужно. "Остановка работы ядра", "эксплуатация уязвимостей" (так пойдет), "взлом", на худой конец. Новый способ эксплуатации ядра Линукс - это, например, читать исходный код в виде рэпа.

     
     
  • 3.6, Зилибоба (ok), 17:16, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Эксплойт, эксплоит (англ. exploit, эксплуатировать) — это компьютерная программа, фрагмент программного кода или последовательность команд, использующие уязвимости в программном обеспечении и применяемые для проведения атаки на вычислительную систему. Целью атаки может быть как захват контроля над системой (повышение привилегий), так и нарушение её функционирования (DoS-атака).

    Чего тут можно сказать трудно?

     
     
  • 4.16, Marbleless (?), 17:48, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Эксплойт, эксплоит (англ. exploit, эксплуатировать)

    Вот тут должна стоять ссылка на источник. Я серьезно. На тот, в котором выведена связь слова эксплоит в этом значении с английским глаголом "exploit" в значении "эксплуатировать". Версия с французским "exploit" (достижение) кажется более правдоподобной.

    На всякий случай: мой предыдущий комментарий относился к той версии новости, в которой был заголовок "новый способ эксплуатации Linux-ядра".

     
     
  • 5.18, Аноним (-), 18:01, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    А в шапке HTML старая версия и осталась
     
  • 5.27, Vkni (?), 18:30, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > На всякий случай: мой предыдущий комментарий относился к той версии новости, в
    > которой был заголовок "новый способ эксплуатации Linux-ядра".

    Ну это-то очевидный бред. Эксплуатация уязвимости, а на ядра :-).

     
     
  • 6.29, sndev (ok), 18:32, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    ИМАО, лучше всего звучало бы так :

    "Представлен новый способ эксплуатации локальной уязвимости/ошибки Линукс-ядра"

     
     
  • 7.32, vkni (?), 19:59, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ага. Но слишком многословно. Лучше уж эксплойт.
     
     
  • 8.43, skybon (ok), 20:31, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну уж нет Неправильное употребление иностранных слов засоряет язык ... текст свёрнут, показать
     
  • 3.63, tr (?), 05:01, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Definition of EXPLOIT
    : deed, act; especially : a notable or heroic act

    Origin of EXPLOIT
    Middle English espleit, expleit, exploit furtherance, outcome, from Anglo-French, from Latin explicitum, neuter of explicitus, past participle
    First Known Use: circa 1538

    Источник: Merriam-Webster

     
  • 2.46, Харитон (?), 21:12, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    exploit

    I ˈeksplɔɪt
    сущ.
      деяние, подвиг
       to perform an exploit — совершать подвиг
       fantastic exploits — фантастические/сказочные похождения
       heroic exploit — геройский поступок
      Syn:
      act, deed, feat
    II ɪksˈplɔɪt
    гл.
    1)
      а) пользоваться, использовать, эксплуатировать
        Syn:
        utilize
      б) перен. играть (на чьих-либо чувствах, слабости и т.д.), пользоваться (чем-л. в своих интересах)
        Sometimes it is necessary to exploit your opponent's weakness. — Иногда просто необходимо воспользоваться слабостью оппонентов.
    2) разрабатывать (шахты, копи, месторождения и т.д.)

     
     
  • 3.55, Aleks Revo (?), 22:50, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Вот он и ответ: "сыграть на слабости" - буквальный смысл того, что понимается под эксплойтом.
     
  • 3.88, Wormik (ok), 21:23, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Exploit - поиметь
     

  • 1.7, Аноним (-), 17:19, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А патчи-то где?)
     
  • 1.9, daevy (ok), 17:22, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    $ ./exploit
    [*] Failed to open file descriptors.
    $ uname -a
    Linux deceiver 2.6.35-gentoo-r8 #2 SMP Tue Nov 23 14:15:10 YEKT 2010 x86_64 Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz GenuineIntel GNU/Linux

    опять чото не работает.

     
     
  • 2.25, Xaionaro (ok), 18:21, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Заставьте работать:
            pipe(fildes);
            fildes[2] = socket(PF_ECONET, SOCK_DGRAM, 0);
            fildes[3] = open("/dev/zero", O_RDONLY);
    econet подгружен?

    Вообще, вроде ж Gentoo используйте. Не позорились бы ;)

     
     
  • 3.52, bircoph (?), 22:07, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Привет,

    а вот у меня в ядрах и -fstack-protector-all
    # CONFIG_ECONET is not set

    мне теперь всё пересобирать, чтоб эксплойт запустить? :3

     
     
  • 4.98, Xaionaro (ok), 10:50, 02/02/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Привет,
    > а вот у меня в ядрах и -fstack-protector-all
    > # CONFIG_ECONET is not set
    > мне теперь всё пересобирать, чтоб эксплойт запустить? :3

    Как хочешь. Но обвинять эксплойт в неработоспособности, если небыли предоставлены необходимые для его работы условия (в соответствии с его назначением) - глуповато, IMHO.

     
  • 3.89, Wormik (ok), 21:26, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Заставьте работать:
    >         pipe(fildes);
    >         fildes[2] = socket(PF_ECONET, SOCK_DGRAM,
    > 0);
    >         fildes[3] = open("/dev/zero", O_RDONLY);
    > econet подгружен?
    > Вообще, вроде ж Gentoo используйте. Не позорились бы ;)

    Использую Gentoo 5 лет. Ни разу не открывал исходный код в редакторах, как и не накладывал сам патчи.

     
  • 2.35, Аноним (-), 20:06, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Gentoo просто для поднятия ЧСВ что ли используйте?
     
     
  • 3.74, daevy (ok), 13:33, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    + возможность самому написать сценарии сборки для свежего ПО недожидаясь когда оно появится в репах и оверлеях
    + paludis в качестве пакет.менеджера, очень гибок, другие менеджеры что я использовал меня не впечатлили
    + различные сборки ядер, особенно харденед, есть конечно падение производительности, но по крайне мере можно не ссать кипятком, когда выходят дыры аналогичные дырам в glibc
    + да и как то исторически сложилось так...

    p.s. толсто

     
     
  • 4.76, коксюзер (?), 13:51, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > по крайне мере можно не ссать кипятком, когда выходят дыры аналогичные
    > дырам в glibc

    Внезапно: hardened был подвержен уязвимости при обработке LD_AUDIT в glibc. И уязвимость эту (вторую) "не могли" закрыть около двух недель.

     
     
  • 5.81, daevy (ok), 16:34, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    собранный с use hardened? наверно я что-то пропустил, видел инфу только про обычный glibc-2.11.2, если не затруднит скиньте ссылку пожалуйста
     
     
  • 6.83, коксюзер (?), 18:19, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Я не видел линков, где что-то конкретное говорится на тему (не)уязвимости glibc[hardened]. Можете поставить glibc в чруте из старых ебилдов и проверить сами: http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-libs/glibc/?hidea

    Portage не даст продаунгрейдить glibc, смените версию в имени ебилда на *-r4. Уязвимые версии, включительно: с 2.11.2 по 2.11.2-r2 (сам проверял на hardened) и 2.12.1 по 2.12.1-r2 (не проверял). А USE=hardened добавляет только патчи совместимости с hardened-тулчейном. Ничего против таких уязвимостей там нет.

     
  • 6.84, taaroa (ok), 18:37, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    https://bugs.gentoo.org/show_bug.cgi?id=341755#c24 <- этого достаточно?
    https://bugs.gentoo.org/show_bug.cgi?id=342619 <- отклонили без комментариев.
    p.s. у меня на тестовой машине также сработало, правда rbac отключить пришлось. таким образом, use="hardened" не спасает.
     
  • 6.85, taaroa (ok), 19:33, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    ах да, запускать примерно так:

    umask 0 ; LD_AUDIT="libpcprofile.so" PCPROFILE_OUTPUT="/dev/sda" ping

     
     
  • 7.90, daevy (ok), 08:08, 10/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    спасибо за ликбез, буду внимательней))
     
  • 7.91, daevy (ok), 08:53, 10/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    решил воспроизвести, и получаю при
    $ exec 3< /tmp/exploit/target
    bash: /tmp/exploit/target: Permission denied

    а раньше получалось... есть идеи? тачка тестовая необновленная точно.
    glibc-2.11.2
    bash-4.0.37(2)

     
  • 4.77, PereresusNeVlezaetBuggy (ok), 13:54, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > + возможность самому написать сценарии сборки для свежего ПО недожидаясь когда оно
    > появится в репах и оверлеях

    Любая система портов это позволяет. Просто делаете свой репозиторий, или просто порт, или где как оно называется.

    > + paludis в качестве пакет.менеджера, очень гибок, другие менеджеры что я использовал
    > меня не впечатлили

    Чем гибок? Какие практические проблемы, существующие не только в рамках Gentoo, решает эта гибкость? Я серьёзно.

     
     
  • 5.79, daevy (ok), 14:55, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    1 слоты, сравнивая с убунту-менеджером, недавно понадобилось поставить postgres... большой текст свёрнут, показать
     

  • 1.10, Pentarh (?), 17:26, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    $ ./expl
    [*] Failed to open file descriptors.

    2.6.35.9-64.fc14.x86_64

     
  • 1.11, Аноним (-), 17:27, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    a@server:~$ ./a.out
    [*] Resolving kernel addresses...
    [+] Resolved econet_ioctl to 0xffffffffa050219b
    [+] Resolved econet_ops to 0xffffffffa05031c0
    [*] Failed to resolve kernel symbols.
    a@server:~$ uname -a
    Linux server 2.6.26-2-amd64 #1 SMP Thu Nov 25 04:30:55 UTC 2010 x86_64 GNU/Linux
    a@server:~$ cat /etc/debian_version
    5.0.7
     
     
  • 2.13, Anon (?), 17:38, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    b@server:~$ ./b.out
    [*] Resolving kernel addresses...
    [+] Resolved econet_ioctl to 0xffffffffa050219b
    [+] Resolved econet_ops to 0xffffffffa05031c0
    [*] Failed to resolve kernel symbols.
    b@server:~$ uname -a
    Linux server 2.6.26-2-xen-amd64 #1 SMP Thu Aug 20 00:36:34 UTC 2009 x86_64 GNU/Linux
    b@server:~$ cat /etc/debian_version
    5.0.6
     
     
  • 3.22, Xaionaro (ok), 18:10, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, судя по всему программа не отработала, а ругнулась на вполне конкретную ошибку, требуя соответствующих мероприятий. Например, если заглянуть в код, то рождается гипотеза, что у вас не подгружен econet. :)
     

  • 1.12, Аноним (-), 17:29, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    и на мандриве (2.6.35.9) тоже не работает...
     
     
  • 2.14, PereresusNeVlezaetBuggy (ok), 17:41, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > и на мандриве (2.6.35.9) тоже не работает...

    Жаль, что форум фактически анонимный. Так можно было бы составлять чёрные списки «кого не брать на работу за неумение читать текст и править код».

     
     
  • 3.20, emg81 (?), 18:07, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    о, мсье, а по-Вашему все пользователи GNU/Linux должны уметь править код?
     
     
  • 4.23, Xaionaro (ok), 18:11, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > о, мсье, а по-Вашему все пользователи GNU/Linux должны уметь править код?

    Люди, интересующееся exploit-ами, должны, IMHO.

     
  • 4.26, sndev (ok), 18:22, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +5 +/
    И особенно те, которые пытаются их запускать :) имхо
     
     
  • 5.67, zazik (ok), 09:33, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > И особенно те, которые пытаются их запускать :) имхо

    Зачем? Если бы все ответственно подходили к тому, что запускают, эксплоиты вымерли бы как класс.

     

  • 1.15, анонимище (?), 17:46, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Тем у кого не работает:

    >Опубликованный код эксплойта оформлен в виде прототипа, намеренно модифицированного для защиты от необдуманного использования неискушенными обывателями (для его работы в RedHat, Slackware и Debian потребуется модификация, а для Ubuntu ранее было выпущено обновление с исправлением проблем CVE-2010-3849 и CVE-2010-385).

     
  • 1.17, Аноним (17), 17:49, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    levko@levko-lb:~$ ./a.out
    [*] Resolving kernel addresses...
    [+] Resolved econet_ioctl to 0xffffffffa019707b
    [+] Resolved commit_creds to 0xffffffff810624fa
    [+] Resolved prepare_kernel_cred to 0xffffffff810623f4
    [*] Failed to resolve kernel symbols.
    levko@levko-lb:~$ uname -a
    Linux levko-lb 2.6.36 #7 SMP Wed Nov 17 19:43:34 EET 2010 x86_64 GNU/Linux
    levko@levko-lb:~$ lsb_release -d
    Description: Ubuntu 10.10
     
     
  • 2.24, Xaionaro (ok), 18:14, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы пробывали хотя бы заглянуть в код, в то место, где выводится данная ошибка? Там несколькими строками выше написано какие symbol-ы требуются. И достаточно несложно удовлетворить этим требованиям.
     

  • 1.19, emg81 (?), 18:06, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    [emg81@emg81pc ~]$ ./a.out
    [*] Failed to open file descriptors.
    [emg81@emg81pc ~]$ uname -a
    Linux emg81pc 2.6.36-ARCH #1 SMP PREEMPT Wed Nov 24 06:44:11 UTC 2010 i686 Intel(R) Pentium(R) 4 CPU 3.20GHz GenuineIntel GNU/Linux
    ---
    :(
    опять не работает
     
     
  • 2.21, Аноним (-), 18:10, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Текст новости еще раз (если этого не было сделано ранее) перечитайте.

    Опубликованный код эксплоита оформлен в виде прототипа, намеренно модифицированного для защиты от необдуманного использования неискушенными обывателями

     
     
  • 3.58, Аноним (-), 23:27, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    uname -r
    2.6.36-ARCH

    zcat /proc/config.gz | grep -i econet
    # CONFIG_ECONET is not set

     

  • 1.28, Hugo Reyes (?), 18:32, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Есть workaround, который можно применить в ожидании новой сборки ядра от мэнтейнера:

    echo 1 > /proc/sys/kernel/panic_on_oops

    По-крайней мере будет обычный DoS вместо эскалации привилегий.

     
     
  • 2.54, гы (?), 22:45, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > По-крайней мере будет обычный DoS вместо эскалации привилегий.

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

     
     
  • 3.57, Ytch (?), 23:23, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В первом (!) предложении новости!
     

  • 1.30, Аноним (-), 18:39, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >fildes[2] = socket(PF_ECONET, SOCK_DGRAM, 0);

    grep -i econet /boot/config-2.6.32-71.7.1.el6.i686
    # CONFIG_ECONET is not set

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

     
     
  • 2.31, Аноним (-), 19:46, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > для работы експлойта под линукс мне надо канпелировать ядро?

    Достаточно найти другой баг, приводящий к oops, коих пачками в каждом новом обновлении ядра правят.

     
     
  • 3.34, Аноним (-), 20:05, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >> для работы експлойта под линукс мне надо канпелировать ядро?
    > Достаточно найти другой баг, приводящий к oops, коих пачками в каждом новом
    > обновлении ядра правят.

    The Linux kernel as shipped with Red Hat Enterprise Linux 4, 5, 6, and Red Hat Enterprise MRG enabled the panic_on_oops sysctl tunable by default, and therefore are not affected by this issue.

    и отключать kernel.panic_on_oops = 1

     

  • 1.33, Горлов (?), 20:01, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    main@main-desktop /tmp $ ./a.out
    [*] Resolving kernel addresses...
    [+] Resolved econet_ioctl to 0xf0b052a0
    [+] Resolved econet_ops to 0xf0b053a0
    [+] Resolved commit_creds to 0xc016c830
    [+] Resolved prepare_kernel_cred to 0xc016cc80
    [*] Calculating target...
    [*] Triggering payload...
    [*] Got root!
    # id
    uid=0(root) gid=0(root) группы=0(root)
    #

    Linux main-desktop 2.6.35-22-generic #35-Ubuntu SMP Sat Oct 16 20:36:48 UTC 2010 i686 GNU/Linux

     
     
  • 2.36, itsme (??), 20:10, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >  [+] Resolved commit_creds to 0xc016c830
    >  [+] Resolved prepare_kernel_cred to 0xc016cc80
    > [*] Calculating target...
    > [*] Triggering payload...
    > [*] Got root!
    > # id
    > uid=0(root) gid=0(root) группы=0(root)
    > #
    > Linux main-desktop 2.6.35-22-generic #35-Ubuntu SMP Sat Oct 16 20:36:48 UTC 2010 i686
    > GNU/Linux

    А что нужно подправить, чтобы эксплойт зарабовал???

     
     
  • 3.37, Горлов (?), 20:12, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Я вообще ничего не правил. Он сходу заработал, сразу после компиляции.
     
     
  • 4.39, itsme (??), 20:14, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Я вообще ничего не правил. Он сходу заработал, сразу после компиляции.

    Уже наверное на 10 машинах проверил, везде:

    [*] Failed to open file descriptors.

     
     
  • 5.49, Xaionaro (ok), 21:37, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    strace!
     
     
  • 6.56, Viliar (ok), 23:16, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Вы слишком много хотите :-) Страшными словами бросаетесь в бедных людей ;-D
     
     
  • 7.59, Аноним (-), 23:37, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Вы слишком много хотите :-) Страшными словами бросаетесь в бедных людей ;-D

    gcc ./sploit.c

    strace ./a.out
    ...
    ...
    socket(PF_ECONET, SOCK_DGRAM, 0)        = -1 EAFNOSUPPORT (Address family not supported by protocol)
    ...

    Проблема тут: fildes[2] = socket(PF_ECONET, SOCK_DGRAM, 0);
    И ошибку получаешь после проверки на открытый дескриптор: if(fildes[0] < 0 || fildes[1] < 0 || fildes[2] < 0 || fildes[3] < 0)

     
     
  • 8.60, Аноним (-), 23:39, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    modprobe econet ... текст свёрнут, показать
     
     
  • 9.64, bircoph (?), 05:41, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    modprobe econet FATAL Module econet not found uname -r 2 6 35 9-sheryl Сам... текст свёрнут, показать
     
  • 3.38, Аноним (-), 20:13, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >>  [+] Resolved prepare_kernel_cred to 0xc016cc80
    >> [*] Calculating target...
    >> [*] Triggering payload...
    >> [*] Got root!
    >> # id
    >> uid=0(root) gid=0(root) группы=0(root)
    >> #
    >> Linux main-desktop 2.6.35-22-generic #35-Ubuntu SMP Sat Oct 16 20:36:48 UTC 2010 i686
    >> GNU/Linux
    > А что нужно подправить, чтобы эксплойт зарабовал???

    мой юный дrуг, uid=0 говоrит нам о том, что эксплойт заrаботал

     
     
  • 4.40, itsme (??), 20:16, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >>> [*] Calculating target...
    >>> [*] Triggering payload...
    >>> [*] Got root!
    >>> # id
    >>> uid=0(root) gid=0(root) группы=0(root)
    >>> #
    >>> Linux main-desktop 2.6.35-22-generic #35-Ubuntu SMP Sat Oct 16 20:36:48 UTC 2010 i686
    >>> GNU/Linux
    >> А что нужно подправить, чтобы эксплойт зарабовал???
    > мой юный дrуг, uid=0 говоrит нам о том, что эксплойт заrаботал

    100% с Вами согласен. Но ведь выше написано, что это концепт и что нужно что-то подправить, чтобы он заработал.  У меня не работает. Как я уже писал выше - испытывал на нескольких машинах, с разными версиями ядра.


    А где можно такой достать - http://www.youtube.com/watch?v=M4TTAupmV5U ?

     
     
  • 5.45, Аноним (-), 21:01, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > 100% с Вами согласен. Но ведь выше написано, что это концепт и
    > что нужно что-то подправить, чтобы он заработал.  У меня не
    > работает. Как я уже писал выше - испытывал на нескольких машинах,
    > с разными версиями ядра.

    У того у кого эксплойт заработал ядро старое непатченное, сейчас уже 2.6.35-26 на дворе, а у него еще 2.6.35-22.

     
     
  • 6.70, Горлов (?), 10:37, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Обновил ядро, теперь не работает :-( Что в эксплоите нужно поменять, чтоб заработало? :-)

    main@main-desktop ~ $ ./a.out
    [*] Resolving kernel addresses...
    [+] Resolved econet_ioctl to 0xf0ade340
    [+] Resolved econet_ops to 0xf0ade440
    [+] Resolved commit_creds to 0xc016c8d0
    [+] Resolved prepare_kernel_cred to 0xc016cd20
    [*] Calculating target...
    [*] Failed to set Econet address.
    [*] Triggering payload...
    [*] Exploit failed to get root

    main@main-desktop ~ $ uname -a
    Linux main-desktop 2.6.35-23-generic #41-Ubuntu SMP Wed Nov 24 10:18:49 UTC 2010 i686 GNU/Linux

     
     
  • 7.73, z (??), 13:16, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Что в эксплоите нужно поменять, чтоб заработало?

    payload, очевидно же

     
  • 2.41, Горлов (?), 20:19, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    В консоли посыпалось после этого 36538 318571 BUG unable to handle kern... большой текст свёрнут, показать
     

  • 1.47, Аноним (-), 21:15, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    openSUSE 11.3 – хрен там
    socket(PF_ECONET, SOCK_DGRAM, 0)        = -1 EAFNOSUPPORT (Address family not supported by protocol)
     
     
  • 2.48, Xaionaro (ok), 21:36, 08/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    modprobe econet
     

  • 1.51, deadless (?), 21:52, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    насколько уязвим линукс не знает никто, но со 100% вероятностью можно сказать что дыры в нем были есть и будут. не дырявое корыто конечно, но и не бронебойная крепость. страдать от этих дыр в целом могут только всеразличные vps которые редко кто апгрейдит вовремя. Прошерстите всех наиболее популярных vps'ников, увидите наколько там ядра поросли мхом.

    Почему бы Линузу не изменить концепцию и не посвятить скажем хотябы месяц в году на выявление дыр? Важнее выпекать новое ядро каждые 2 месяца чем заниматься безопастностью, да и конечно прикладывать любимые костыли начиная с RBAC и заканчивая виртуалками в виртуалках.

     
  • 1.53, Аноним (-), 22:43, 08/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    [ken@box tmp]$ ./ex
    [*] Failed to open file descriptors.
    [ken@box tmp]$ uname -a
    Linux box 2.6.35.9-64.fc14.i686 #1 SMP Fri Dec 3 12:35:42 UTC 2010 i686 i686 i386 GNU/Linux
     
     
  • 2.65, Xaionaro (ok), 08:25, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Я уже устал комментировать, поясняя, что "вы просто не умеете готовить". Почитайте комментарии выше.
     
     
  • 3.80, Аноним (-), 15:21, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    может стоит поискать более интересные занятия?
     
     
  • 4.87, odus (ok), 21:15, 09/12/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > может стоит поискать более интересные занятия?

    ищи


     

  • 1.82, DFX (ok), 17:05, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >> Эксплоит протестирован в системах Ubuntu 10.04 и 10.10 со штатными Linux-ядрами, но теоретически функционирует со всеми Linux-ядрами серии 2.6.x

    мир, как всегда, в большой теоритической опасности...
    всё таки после вендового детства и пачки remote exploit'ов, да ещё сразу дающих полный "админ"-доступ, всё это как-то уже и не впечатляет.

     
  • 1.86, анонимиус (?), 19:46, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    _реализация_ уязвимости
     
     
  • 2.92, vle (ok), 15:54, 10/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    У господина Торвальдса есть реальный шанс перевернуть мир IT.
    Сново начать писать новую операционную систему вместе с libc
    и линкером, сново с нуля, и на этот раз на безопастном языке.
    Я уверен, за ним пошло бы много людей, практически с самого
    старта проекта, и уже лет через 5 он стал бы вполне взрослым
    промышленным проектом, но уже без проблем такого рода.
     
     
  • 3.94, hvosting (??), 15:44, 11/12/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > сново с нуля, и на этот раз на безопастном языке.

    на java ?

     
     
  • 4.95, vle (ok), 03:57, 12/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >> сново с нуля, и на этот раз на безопастном языке.
    > на java ?

    Не думаю

     
     
  • 5.97, Anonymouse (?), 20:10, 18/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Нашли чем хвастаться
     

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



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

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