URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 27300
[ Назад ]

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

Отправлено opennews , 11-Сен-06 22:36 
Hadmut Danisch обратил внимание (http://www.opennet.me/base/linux/1157733572_6526.txt.html), что в архивах последних версий Linux ядра (например, 2.6.17.11) появилось несколько тысяч директорий и файлов открытых для всех пользователей на запись.

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

URL: http://www.opennet.me/base/linux/1157733572_6526.txt.html
Новость: http://www.opennet.me/opennews/art.shtml?num=8311


Содержание

Сообщения в этом обсуждении
"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено Prog10 , 11-Сен-06 22:36 
Очень жаль что это так.
Конечно нормальный админ , при соблюдении минимальных мер предосторожности уменьшит вероятность использования такой уязвимости.
Тут конечно Генту, требующий по умолчанию для установки портов прав рута, подкачал.
А вообще такое деяние напоминает провокацию...
Писатели хреновы...

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Oleg , 11-Сен-06 22:38 
Кто вам сказал подобную чушь про Дженту? Там могут устанавливать порты пользователи, входящие в группу portage. Документацию не пробовали читать?

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено pavlinux , 12-Сен-06 00:00 
Бэдный Гентюуу - http://absurdopedia.wikia.com/wiki/Gentoo

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено northbear , 12-Сен-06 06:19 
Теперь ясно происхождение, некоторых Ваших реплик и откуда вы берете документацию по Unix'y.
А Вы случаем не автор? :))))

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено prog10 , 12-Сен-06 11:35 
Олег, возможно я неясно выразил свою мысль, поэтому расспишу по пунктам:
1)При использовании стандартных ебуилдов после закачивания нового ядра (проверка контрольных сумм, пропатчивание и пр...) происходит его распаковка во временной директории - /var/tmp/portage/....
2) В момент работы системы ебуилдов с исходниками в системе регистрируется (совершенно легально) локальный пользователь.
3) Этот юзер , определив что во временной папке лежат исходники ядра и файлы имеют право на запись дописывает свой код в нужное место(не принципиально куда именно)
4)Ядро , откомпилившись правильно устанавливается.
А дальше все просто - зная что есть в коде ядерных бинарников локальный юзер может воздействовать на ядро - творить то, что ему нужно...
Если бы в сценариях установки (ebuild) стояла бы проверка прав доступа на запись в файлы ядра и установка нужных прав - проблем бы не было .
Этот вариант для взлома в данном случае подойдет?
Вот в чем был смысл моего негодования.
А слепой бездумный фанатизм - это для камикадзе.  

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Aleksey , 12-Сен-06 14:49 
>Олег, возможно я неясно выразил свою мысль, поэтому расспишу по пунктам:
>1)При использовании стандартных ебуилдов после закачивания нового ядра (проверка контрольных сумм, пропатчивание
>и пр...) происходит его распаковка во временной директории - /var/tmp/portage/....
>2) В момент работы системы ебуилдов с исходниками в системе регистрируется (совершенно
>легально) локальный пользователь.
>3) Этот юзер , определив что во временной папке лежат исходники ядра
>и файлы имеют право на запись дописывает свой код в нужное
>место(не принципиально куда именно)
>4)Ядро , откомпилившись правильно устанавливается.
>А дальше все просто - зная что есть в коде ядерных бинарников
>локальный юзер может воздействовать на ядро - творить то, что ему
>нужно...
>Если бы в сценариях установки (ebuild) стояла бы проверка прав доступа на
>запись в файлы ядра и установка нужных прав - проблем бы
>не было .
>Этот вариант для взлома в данном случае подойдет?
>Вот в чем был смысл моего негодования.
>А слепой бездумный фанатизм - это для камикадзе.

А вы в курсе какие права у этой временной папки?
Исходники ядра в папке "work" во время распаковки/пропатчивания:

(до, собственно, распаковки)
$ ls -l /var/tmp/portage/gentoo-sources-2.6.17-r7/    
итого 16
drwxrwxr-x 2 root portage 4096 Сен 12 13:37 distdir
drwxrwsr-x 2 root portage 4096 Сен 12 13:37 homedir
drwxrwsr-x 3 root portage 4096 Сен 12 13:37 temp
drwx------ 3 root root    4096 Сен 12 13:37 work

(в процессе)
$ ls -l /var/tmp/portage/gentoo-sources-2.6.17-r7/
итого 16
drwxrwxr-x 2 root portage 4096 Сен 12 13:37 distdir
drwxrwsr-x 2 root portage 4096 Сен 12 13:37 homedir
drwxrwsr-x 3 root portage 4096 Сен 12 13:39 temp
drwxr-xr-x 4 root root    4096 Сен 12 13:39 work

(после)
$ ls -l /var/tmp/portage/gentoo-sources-2.6.17-r7/    
итого 24
drwxr-xr-x 2 root    root    4096 Сен 12 13:39 build-info
drwxrwxr-x 2 root    portage 4096 Сен 12 13:37 distdir
drwxrwsr-x 2 root    portage 4096 Сен 12 13:39 homedir
drwxr-xr-x 3 root    root    4096 Сен 12 13:39 image
drwxrwsr-x 3 root    portage 4096 Сен 12 13:39 temp
drwx------ 2 portage portage 4096 Сен 12 13:39 work


"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено prog10 , 12-Сен-06 11:53 
Олег, извиняюсь, но просто я подзабыл как и куда распаковывается ядро.
Ошибся с директорией , конечно же это /usr/src/linux
И вот если там есть файлы, доступные на запись - только тогда есть риск.
:)

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Эргил Осин , 12-Сен-06 05:38 
erelesse@ergil ~ $ ls -la /usr/src/linux/
drwxr-xr-x 20 root root    4096 Сен  6 21:54 .
drwxr-xr-x  7 root root    4096 Сен  8 16:04 ..
drwxr-xr-x 26 root root    4096 Авг 30 12:53 arch
drwxr-xr-x  2 root root    4096 Сен  6 20:01 block
-rw-r--r--  1 root root   41811 Сен  6 21:52 .config
-rw-r--r--  1 root root   41872 Сен  6 19:30 .config.old
-rw-r--r--  1 root root   18693 Авг 30 12:53 COPYING
-rw-r--r--  1 root root   89536 Авг 30 12:53 CREDITS
drwxr-xr-x  2 root root    4096 Сен  6 20:01 crypto
drwxr-xr-x 56 root root    4096 Авг 30 12:53 Documentation
drwxr-xr-x 59 root root    4096 Сен  6 21:54 drivers
drwxr-xr-x 60 root root    8192 Сен  6 20:14 fs
-rw-r--r--  1 root root     462 Авг 30 12:53 .gitignore
drwxr-xr-x 41 root root    4096 Сен  3 23:08 include
drwxr-xr-x  2 root root    4096 Сен  6 21:54 init
drwxr-xr-x  2 root root    4096 Сен  6 20:00 ipc
-rw-r--r--  1 root root    1273 Авг 30 12:53 Kbuild
-rw-r--r--  1 root root    6686 Сен  6 21:52 .kconfig.d
drwxr-xr-x  4 root root    4096 Сен  6 21:53 kernel
-rw-r--r--  1 root root      21 Сен  6 21:53 .kernelrelease
drwxr-xr-x  5 root root    4096 Сен  6 20:13 lib
-rw-r--r--  1 root root   70955 Авг 30 12:53 MAINTAINERS
-rw-r--r--  1 root root   70835 Авг 30 12:53 MAINTAINERS.orig
-rw-r--r--  1 root root   44707 Авг 30 12:53 Makefile
drwxr-xr-x  2 root root    4096 Сен  6 19:56 mm
-rw-r--r--  1 root root  141768 Сен  6 20:13 Module.symvers
drwxr-xr-x 36 root root    4096 Сен  6 20:12 net
-rw-r--r--  1 root root      52 Авг 30 12:53 patches.txt
-rw-r--r--  1 root root   16538 Авг 30 12:53 README
-rw-r--r--  1 root root    3065 Авг 30 12:53 REPORTING-BUGS
drwxr-xr-x  8 root root    4096 Сен  6 19:54 scripts
drwxr-xr-x  4 root root    4096 Сен  6 20:00 security
drwxr-xr-x 16 root root    4096 Сен  6 20:09 sound
-rw-r--r--  1 root root  981514 Сен  6 21:54 System.map
-rw-r--r--  1 root root  219937 Сен  6 21:54 .tmp_kallsyms1.o
-rw-r--r--  1 root root     545 Сен  6 21:54 ..tmp_kallsyms1.o.cmd
-rw-r--r--  1 root root 1283189 Сен  6 21:54 .tmp_kallsyms1.S
-rw-r--r--  1 root root  219937 Сен  6 21:54 .tmp_kallsyms2.o
-rw-r--r--  1 root root     545 Сен  6 21:54 ..tmp_kallsyms2.o.cmd
-rw-r--r--  1 root root 1283189 Сен  6 21:54 .tmp_kallsyms2.S
-rw-r--r--  1 root root  981514 Сен  6 21:54 .tmp_System.map
drwxr-xr-x  2 root root    4096 Сен  6 21:54 .tmp_versions
-rwxr-xr-x  1 root root 6333749 Сен  6 21:54 .tmp_vmlinux1
-rw-r--r--  1 root root     634 Сен  6 21:54 ..tmp_vmlinux1.cmd
-rwxr-xr-x  1 root root 6550870 Сен  6 21:54 .tmp_vmlinux2
-rw-r--r--  1 root root     650 Сен  6 21:54 ..tmp_vmlinux2.cmd
drwxr-xr-x  2 root root    4096 Сен  6 19:54 usr
-rw-r--r--  1 root root       2 Сен  6 21:54 .version
-rwxr-xr-x  1 root root 6550870 Сен  6 21:54 vmlinux
-rw-r--r--  1 root root     638 Сен  6 21:54 .vmlinux.cmd
erelesse@ergil ~ $ cat /etc/gentoo-release
Gentoo Base System version 1.12.4

Что я в Gentoo делаю не так, что у меня все в порядке с правами на каталоги? Может Вы просто Дженту никогда не видели? :-S


"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено CyberCommunist , 11-Сен-06 22:49 
Саботаж :)

"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено pavlinux , 11-Сен-06 23:58 
--- PATCH ---

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



"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено Settler , 12-Сен-06 00:13 
странно, что обратили внимание только сейчас, потому что распаковывается с запись. для всех оно уже давно. то есть так давно, что я уже и не удивляюсь (полгода-год?)

"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено userhost , 12-Сен-06 09:16 

user@host: /usr/src$ find . -type d ! -perm -755
user@host: /usr/src$

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Double , 12-Сен-06 10:18 
Ваабще-то в Gentoo перед тем как собрать какой-либо пакет портаж проверяет контрольную сумму так что даже если вы и внедрите код в исходники код скомпилен не будет по причине несовпадения контрольной суммы

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Аноним , 12-Сен-06 10:24 
К ядру это не относиться...

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Double , 12-Сен-06 10:30 
>>> 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...

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Painbringer , 12-Сен-06 11:19 
>>>> 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?


"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено nightowl , 12-Сен-06 15:06 
[root@nest src]#  find . -type d ! -perm -777 | wc
   1657    1657   61018

Гы %-)

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


"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено www.andr.ru , 12-Сен-06 10:51 
у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть. секрет тайный, надо же. а исходники ядра на запись любому - пожалуйста :)) мудаки.

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Double , 12-Сен-06 10:59 
>у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть. секрет тайный, надо же.
>а исходники ядра на запись любому - пожалуйста :)) мудаки.
кто тебе сказал что нельзя смотреть??? что за чушь???

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено gizl , 12-Сен-06 11:10 
откуда трава-то ?????

"ой."
Отправлено Michael Shigorin , 12-Сен-06 12:47 
Андруша, Вы небось ещё и компиляторы на досягаемых из тырнета системах с собственным ядром держите?  Ну так некоторые этим не страдают-с.

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


"ой."
Отправлено mutronix , 12-Сен-06 13:02 
Я так понимаю, товаришь не знает, что определяет $PATH. В некоторых дистрибутивах у пользователей в $PATH отсутствуют sbin, а переопределить $PATH или вызвать /sbin/ifconfig ума может и нехватить.

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Dmitry , 12-Сен-06 13:03 
>у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть. секрет тайный, надо же.
>а исходники ядра на запись любому - пожалуйста :)) мудаки.

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

$ 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
.........................
.........................


"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено voron , 13-Сен-06 10:09 
>>у пингвинологов простому юзверу сетевые интерфейсы запрещено смотреть. секрет тайный, надо же.
>>а исходники ядра на запись любому - пожалуйста :)) мудаки.
>
>Учи матчасть, знаток
>
>$ 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.


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

"В архивах с Linux ядром наблюдается безобразие"
Отправлено Michael Shigorin , 12-Сен-06 12:46 
М-да.  Вот они, нетвозиксы. :-/

"OpenNews: В архивах с Linux ядром наблюдаются проблемы с пра..."
Отправлено Mesk , 12-Сен-06 12:55 

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

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


"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено Tracer , 12-Сен-06 16:02 
Доброе утро страна!
Очередное стало явным. Сколько же ещё таких фигней осталось :))

"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено GateKeeper , 12-Сен-06 16:08 
SELinux -> [селинукс] -> c'est 'linux'

"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено nucleo , 12-Сен-06 16:32 
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 ';' #для обычных файлов

"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено nucleo , 12-Сен-06 16:36 
пардон, забыл {}
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 {} ';' #для обычных файлов

"В архивах с Linux ядром наблюдаются проблемы с правами доступа"
Отправлено Аноним , 12-Сен-06 16:40 
Народ, а чё, chmod ga-w уже отменили? чё вы с 755/644/700 извращаетесь?

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено denis , 12-Сен-06 19:43 
только -R забывать не надо

"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено voron , 13-Сен-06 10:13 
>только -R забывать не надо


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


"В архивах с Linux ядром наблюдаются проблемы с правами досту..."
Отправлено Аноним , 15-Сен-06 10:35 
Зависит от. Для того, чтобы снять разрешение на запись для всех в дереве исходников ядра - разумется, с -R. Собственно, я его не упомянул, поскольку проблема немного более глобальна - неправильно используется chmod, вместо изменения отдельных прав, правятся все права скопом. Что может создать больше проблем, чем разрешение права на запись в /usr/src/linux.