The OpenNET Project / Index page

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

В архивах с Linux ядром наблюдаются проблемы с правами доступа

11.09.2006 22:19

Hadmut Danisch обратил внимание, что в архивах последних версий Linux ядра (например, 2.6.17.11) появилось несколько тысяч директорий и файлов открытых для всех пользователей на запись.

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

  1. Главная ссылка к новости (http://www.opennet.me/base/lin...)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/8311-kernel
Ключевые слова: kernel, security
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (35) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Prog10 (?), 22:36, 11/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Очень жаль что это так.
    Конечно нормальный админ , при соблюдении минимальных мер предосторожности уменьшит вероятность использования такой уязвимости.
    Тут конечно Генту, требующий по умолчанию для установки портов прав рута, подкачал.
    А вообще такое деяние напоминает провокацию...
    Писатели хреновы...
     
     
  • 2.2, Oleg (??), 22:38, 11/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Кто вам сказал подобную чушь про Дженту? Там могут устанавливать порты пользователи, входящие в группу portage. Документацию не пробовали читать?
     
     
  • 3.5, pavlinux (ok), 00:00, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Бэдный Гентюуу - http://absurdopedia.wikia.com/wiki/Gentoo
     
     
  • 4.8, northbear (??), 06:19, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Теперь ясно происхождение, некоторых Ваших реплик и откуда вы берете документацию по Unix'y.
    А Вы случаем не автор? :))))
     
  • 3.17, prog10 (?), 11:35, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Олег, возможно я неясно выразил свою мысль, поэтому расспишу по пунктам:
    1)При использовании стандартных ебуилдов после закачивания нового ядра (проверка контрольных сумм, пропатчивание и пр...) происходит его распаковка во временной директории - /var/tmp/portage/....
    2) В момент работы системы ебуилдов с исходниками в системе регистрируется (совершенно легально) локальный пользователь.
    3) Этот юзер , определив что во временной папке лежат исходники ядра и файлы имеют право на запись дописывает свой код в нужное место(не принципиально куда именно)
    4)Ядро , откомпилившись правильно устанавливается.
    А дальше все просто - зная что есть в коде ядерных бинарников локальный юзер может воздействовать на ядро - творить то, что ему нужно...
    Если бы в сценариях установки (ebuild) стояла бы проверка прав доступа на запись в файлы ядра и установка нужных прав - проблем бы не было .
    Этот вариант для взлома в данном случае подойдет?
    Вот в чем был смысл моего негодования.
    А слепой бездумный фанатизм - это для камикадзе.  
     
     
  • 4.24, Aleksey (??), 14:49, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    А вы в курсе какие права у этой временной папки Исходники ядра в папке work в... большой текст свёрнут, показать
     
  • 3.18, prog10 (?), 11:53, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Олег, извиняюсь, но просто я подзабыл как и куда распаковывается ядро.
    Ошибся с директорией , конечно же это /usr/src/linux
    И вот если там есть файлы, доступные на запись - только тогда есть риск.
    :)
     
  • 2.7, Эргил Осин (?), 05:38, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    erelesse ergil ls -la usr src linux drwxr-xr-x 20 root root 4096 Сен 6... большой текст свёрнут, показать
     

  • 1.3, CyberCommunist (?), 22:49, 11/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Саботаж :)
     
  • 1.4, pavlinux (ok), 23:58, 11/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    --- PATCH ---

    tar -xvf linux-2.6.17.11.tar.bz2
    cd linux-2.6.17.11
    find . -type d -exec chmod 0700 '{}' \;


     
  • 1.6, Settler (?), 00:13, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    странно, что обратили внимание только сейчас, потому что распаковывается с запись. для всех оно уже давно. то есть так давно, что я уже и не удивляюсь (полгода-год?)
     
  • 1.9, userhost (?), 09:16, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/

    user@host: /usr/src$ find . -type d ! -perm -755
    user@host: /usr/src$
     
     
  • 2.10, Double (??), 10:18, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Ваабще-то в Gentoo перед тем как собрать какой-либо пакет портаж проверяет контрольную сумму так что даже если вы и внедрите код в исходники код скомпилен не будет по причине несовпадения контрольной суммы
     
     
  • 3.11, Аноним (-), 10:24, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    К ядру это не относиться...
     
     
  • 4.12, Double (??), 10:30, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    genpatches-2 6 17-9 base tar bz2 MD5 - ... большой текст свёрнут, показать
     
     
  • 5.16, Painbringer (?), 11:19, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >>>> Emerging (1 of 1) sys-kernel/gentoo-sources-2.6.17-r7 to /
    > * genpatches-2.6.17-9.base.tar.bz2 MD5 ;-) ...      
    >  [ ok ]
    > * genpatches-2.6.17-9.base.tar.bz2 RMD160 ;-) ...      
    [
    >ok ]
    > * genpatches-2.6.17-9.base.tar.bz2 SHA1 ;-) ...      
    > [ ok ]
    > * genpatches-2.6.17-9.base.tar.bz2 SHA256 ;-) ...      
    >          [
    >ok ]
    > * genpatches-2.6.17-9.base.tar.bz2 size ;-) ...      
    > [ ok ]
    > * linux-2.6.17.tar.bz2 MD5 ;-) ...      
    >   [ ok ]
    > * linux-2.6.17.tar.bz2 RMD160 ;-) ...      
    >[ ok ]
    > * linux-2.6.17.tar.bz2 SHA1 ;-) ...      
    >  [ ok ]
    > * linux-2.6.17.tar.bz2 SHA256 ;-) ...      
    >[ ok ]
    > * linux-2.6.17.tar.bz2 size ;-) ...      
    >  [ ok ]
    > * genpatches-2.6.17-9.extras.tar.bz2 MD5 ;-) ...      
    >[ ok ]
    > * genpatches-2.6.17-9.extras.tar.bz2 RMD160 ;-) ...      
    >        [ ok ]
    >
    > * genpatches-2.6.17-9.extras.tar.bz2 SHA1 ;-) ...      
    >          [
    >ok ]
    > * genpatches-2.6.17-9.extras.tar.bz2 SHA256 ;-) ...      
    >        [ ok ]
    >
    > * genpatches-2.6.17-9.extras.tar.bz2 size ;-) ...      
    >          [
    >ok ]
    > * checking ebuild checksums ;-) ...      
    >   [ ok ]
    > * checking auxfile checksums ;-) ...      
    >  [ ok ]
    > * checking miscfile checksums ;-) ...      
    > [ ok ]
    > * checking linux-2.6.17.tar.bz2 ;-) ...      
    >         [ ok
    >]
    > * checking genpatches-2.6.17-9.base.tar.bz2 ;-) ...      
    >        [ ok ]
    > * checking genpatches-2.6.17-9.extras.tar.bz2 ;-) ...      
    >      [ ok ]
    >>>> Unpacking source...


    Круто.. и перед каждой сборкой ядра ты вызываешь emerge gentoo-sources?

     
  • 2.25, nightowl (ok), 15:06, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    [root@nest src]#  find . -type d ! -perm -777 | wc
       1657    1657   61018

    Гы %-)

    а  755 дык не то малость.

     

  • 1.13, www.andr.ru (?), 10:51, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть. секрет тайный, надо же. а исходники ядра на запись любому - пожалуйста :)) мудаки.
     
     
  • 2.14, Double (??), 10:59, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть. секрет тайный, надо же.
    >а исходники ядра на запись любому - пожалуйста :)) мудаки.
    кто тебе сказал что нельзя смотреть??? что за чушь???
     
  • 2.15, gizl (?), 11:10, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    откуда трава-то ?????
     
  • 2.20, Michael Shigorin (?), 12:47, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Андруша, Вы небось ещё и компиляторы на досягаемых из тырнета системах с собственным ядром держите?  Ну так некоторые этим не страдают-с.

    Про интерфейсы -- подробнее, что ли.

     
     
  • 3.22, mutronix (?), 13:02, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Я так понимаю, товаришь не знает, что определяет $PATH. В некоторых дистрибутивах у пользователей в $PATH отсутствуют sbin, а переопределить $PATH или вызвать /sbin/ifconfig ума может и нехватить.
     
  • 2.23, Dmitry (??), 13:03, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть. секрет тайный, надо же.
    >а исходники ядра на запись любому - пожалуйста :)) мудаки.

    Учи матчасть, знаток

    $ ifconfig
    bash: ifconfig: command not found
    $ whereis ifconfig
    ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.bz2
    $ /sbin/ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0B:CD:20:48:56
    .........................
    .........................

     
     
  • 3.32, voron (??), 10:09, 13/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >>у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть. секрет тайный, надо же.
    >>а исходники ядра на запись любому - пожалуйста :)) мудаки.
    >
    >Учи матчасть, знаток
    >
    >$ ifconfig
    >bash: ifconfig: command not found
    >$ whereis ifconfig
    >ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.bz2
    >$ /sbin/ifconfig
    >eth0      Link encap:Ethernet  HWaddr 00:0B:CD:20:48:56
    >.........................
    >.........................


    lin@lin:~$ ifconfig
    -bash: ifconfig: command not found
    lin@lin:~$ whereis ifconfig
    ifconfig: /sbin/ifconfig /usr/man/man8/ifconfig.8.gz /usr/share/man/man8/ifconfig.8.gz
    lin@lin:~$ /sbin/ifconfig
    Warning: cannot open /proc/net/dev (Permission denied). Limited output.

     
     
  • 4.34, Michael Shigorin (?), 23:34, 13/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >>>у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть.
    >lin@lin:~$ /sbin/ifconfig
    >Warning: cannot open /proc/net/dev (Permission denied). Limited output.
    И всё -- или там-таки ещё десяток строчек? (без RX/TX и коллизий)
     

  • 1.19, Michael Shigorin (?), 12:46, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    М-да.  Вот они, нетвозиксы. :-/
     
  • 1.21, Mesk (?), 12:55, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/

    > в архивах последних версий

    Проснулись :)))
    Это же еще с тех пор как на git перешли.
    Обсуждалось давно и было рекомендовано тем, кто не знает, что такое permissions, использовать ключ --no-same-permissions.
    Кстати, эта же история и в mysql сорсах и, наверняка, еще много где.

     
  • 1.26, Tracer (??), 16:02, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Доброе утро страна!
    Очередное стало явным. Сколько же ещё таких фигней осталось :))
     
  • 1.27, GateKeeper (??), 16:08, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    SELinux -> [селинукс] -> c'est 'linux'
     
  • 1.28, nucleo (?), 16:32, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    cd /usr/src/linux
    find . -type d -exec chmod 755 ';'
    find . -type f -perm 777 -exec chmod 755 ';' #для скриптов
    find . -type f ! -perm 755 -exec chmod 644 ';' #для обычных файлов
     
  • 1.29, nucleo (?), 16:36, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    пардон, забыл {}
    cd /usr/src/linux
    find . -type d -exec chmod 755 {} ';'
    find . -type f -perm 777 -exec chmod 755 {} ';' #для скриптов
    find . -type f ! -perm 755 -exec chmod 644 {} ';' #для обычных файлов
     
  • 1.30, Аноним (-), 16:40, 12/09/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Народ, а чё, chmod ga-w уже отменили? чё вы с 755/644/700 извращаетесь?
     
     
  • 2.31, denis (??), 19:43, 12/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    только -R забывать не надо
     
     
  • 3.33, voron (??), 10:13, 13/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >только -R забывать не надо


    В программировании не знаток, но если поставить -R - то рекурсивно изменятся все права в папках и подпапках на файлы и каталоги. -R - имхо не ставить.

     
     
  • 4.35, Аноним (-), 10:35, 15/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Зависит от. Для того, чтобы снять разрешение на запись для всех в дереве исходников ядра - разумется, с -R. Собственно, я его не упомянул, поскольку проблема немного более глобальна - неправильно используется chmod, вместо изменения отдельных прав, правятся все права скопом. Что может создать больше проблем, чем разрешение права на запись в /usr/src/linux.
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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