The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

OpenNews: Может ли Ubuntu Linux выступать в роли замены Windows, opennews (?), 18-Сен-07, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


117. "OpenNews: Может ли Ubuntu Linux выступать в роли замены Wind..."  +/
Сообщение от CDigger (?), 20-Сен-07, 19:10 
>Смешит утверждение, что в никсах не нужен антивирус (да виндовые вири не
>работают, но при этом замечательно хранятся и множатся через сеть). Сейчас
>можеть и не нужен, но если никсы отвоюют достаточную часть рыночной
>нишы у винды... Как говаривал один человек знакомый - "Мало вирусов
>под линукс? Сейчас пойду и напишу, их станет на один больше".
>Вирусы - это средство, и если их жертвы переедут в никсы,
>то туда перекочуют и они. Да и сейчас, насколько знаю, достаточно
>вирусов невиндовых, большей частью, правда, рассматривающих никсы как серверную систему, и
>соответственные и у них цели.

Пример "невиндового вируса" в студию!

А "знакомомый чел" когда напишет чудо свое пусть его еще в репозитарии дистров запостит... Для солидности... В винде проблема не в том что пользователи лазят в инете с админской учеткой, а в том что дурацкий банк-клиент не работает без админских прав и не только он (и почему, блин, в этой #%$#й винде отсутствует команда типа 'chmod +s банк-клиент.exe' - процентов 80 проблем ушло-бы в небытие безо всяких антивирусов -- только не рассказывайте мне про то что там есть "запуск от имени" - попробуйте рассказать это бухгалтеру). Проблема в реестре, где есть куча мест куда можно всунуть автозапуск трояна даже не имея админских прав. Проблема в том что винда _очень сложная_ и _плохо документированная_ система... Единственная "простая" операция в винде - это ее установка (да и то с оговорками на драйверы к специфическому железу)!

Вот когда под линукс портируют windows registry как замену /etc и OOo перестанет запускаться не от рута... вот тогда и будут тут вирусы... А так что-то сомнительно...

Я не говорю что тут нет проблем с безопасностью. Но таких вирусов как в винде нет и не будет никогда.

Ответить | Правка | Наверх | Cообщить модератору

118. "Windows"  +/
Сообщение от gmm20email (??), 20-Сен-07, 19:37 
> В винде проблема не в том что пользователи лазят в инете
> с админской учеткой, а в том что дурацкий банк-клиент
> не работает без админских прав и не только он

это общая проблема почти всех "левых" виндовых прог.
но Microsoft Office работает и под ограниченной.

> (и почему, блин, в этой #%$#й винде отсутствует команда типа 'chmod +s банк-клиент.exe'
> - процентов 80 проблем ушло-бы в небытие безо всяких антивирусов

и еще процентов 800 появилось бы. они сознательно от этого отказались при дизайне WinNT.
поэтому даже чтобы ping запустить на WinNT нужны права администратора.

> только не рассказывайте мне про то что там есть "запуск от имени"
> - попробуйте рассказать это бухгалтеру).

psexec -l ?

http://blogs.technet.com/markrussinovich/archive/2006/03/02/...

An advantage to using PsExec to launch limited-user processes
is that you can create PsExec desktop shortcuts for ones you commonly launch.

Ответить | Правка | Наверх | Cообщить модератору

119. "Windows"  +/
Сообщение от Michael Shigorinemail (ok), 21-Сен-07, 02:47 
>> (и почему, блин, в этой #%$#й винде отсутствует команда типа 'chmod +s банк-клиент.exe'
>> - процентов 80 проблем ушло-бы в небытие безо всяких антивирусов
>и еще процентов 800 появилось бы. они сознательно от этого отказались при
>дизайне WinNT.

Интересная мысль.  Я-то думаю, почему виндовыми ACL толком никто не пользуется -- они такие замороченные, что применять по назначению -- проще застрелиться бывает...  POSIX perms получаются "сапог в бою надёжней", а в комбинации с POSIX ACLs -- ещё и сопоставимы с win32 ACLs по потолку.

>поэтому даже чтобы ping запустить на WinNT нужны права администратора.

На *NIX/freenix тоже, всё-таки работа с raw socket.

ALT Master 2.4:

$ l =ping
-rws--x---  1 root netadmin 32812 Aug 27  2003 /bin/ping
$ /usr/sbin/control ping
netadmin

FreeBSD 4.10-RELEASE:
$ /bin/ls -l `which ping`
-r-sr-xr-x  1 root  wheel  206296 20 ноя  2004 /sbin/ping

Ответить | Правка | Наверх | Cообщить модератору

126. "Windows"  +/
Сообщение от gmm20email (??), 22-Сен-07, 04:49 
>>> и почему, блин, в этой #%$#й винде отсутствует команда типа 'chmod +s банк-клиент.exe'
>>> - процентов 80 проблем ушло-бы в небытие безо всяких антивирусов
>> и еще процентов 800 появилось бы.
>> они сознательно от этого отказались при дизайне WinNT.
> Интересная мысль.

факт.

> Я-то думаю, почему виндовыми ACL толком никто не пользуется -- они такие замороченные,
> что применять по назначению -- проще застрелиться бывает...

интересно что ты скажешь, когда попробуешь SELinux`ом попользоваться...
там тоже бывает трудно и ничего не понятно, если без чтения документации.

>> поэтому даже чтобы ping запустить на WinNT нужны права администратора.
>На *NIX/freenix тоже, всё-таки работа с raw socket.

ALT Linux:
>-rws--x---  1 root netadmin 32812 Aug 27  2003 /bin/ping

FreeBSD:
>-r-sr-xr-x  1 root  wheel  206296 20 ноя  2004 /sbin/ping

CentOS:
-rwsr-xr-x  1 root root 33272 May  3 04:15 /bin/ping

в FreeBSD/CentOS - не нужно, у ping выставлен SUID`ный бит.

в ALT Linux - у пользователя зачем-то забрали возможность
проводить диагностику сети. зачем было создавать лишние проблемы...

то что права доступа на чтение забрали - еще раз подтверждает
мысль о том, что SUID/GUID биты - это потенциально очень опасная штука.

Ответить | Правка | Наверх | Cообщить модератору

127. "необходимый минимум привилегий (и сложности)"  +/
Сообщение от Michael Shigorinemail (ok), 22-Сен-07, 15:26 
>>>> и почему, блин, в этой #%$#й винде отсутствует команда типа
>>>> 'chmod +s банк-клиент.exe'
>>>> - процентов 80 проблем ушло-бы в небытие безо всяких антивирусов
>>> и еще процентов 800 появилось бы.
>>> они сознательно от этого отказались при дизайне WinNT.

А, в смысле от SUID?  Так вернулись сейчас -- другими огородами, если правильно помню.

Да, неограниченный root, suid/sgid и /tmp -- три больных места UNIX.  Кстати, ими тоже занимаются в post-UNIX под названием Linux, и довольно успешно (MAC/RBAC, POSIX capabilities плюс схемы вроде TCB, приватные TMPDIR).

>> Интересная мысль.
>факт.

[считать неактуальным: Где ж факт-то?  Что обратное имеет подтверждение в виде вагона неочевидно принимаемых за признак исполняемости расширений (вовсе не только .scr) -- знаю, а потенциала для "ещё ~800%" не вижу.  Можно подробней?]

>> Я-то думаю, почему виндовыми ACL толком никто не пользуется -- они такие замороченные,
>> что применять по назначению -- проще застрелиться бывает...
>интересно что ты скажешь, когда попробуешь SELinux`ом попользоваться...
>там тоже бывает трудно и ничего не понятно, если без чтения документации.

Им /необязательно/ пользоваться, в отличие от.  Простые вещи должны и делаться просто.

А документацию по MAC-системам я читал, применять вот не доводилось.

>>> поэтому даже чтобы ping запустить на WinNT нужны права администратора.
>>На *NIX/freenix тоже, всё-таки работа с raw socket.
>ALT Linux:
>>-rws--x---  1 root netadmin 32812 Aug 27  2003 /bin/ping
>FreeBSD:
>>-r-sr-xr-x  1 root  wheel  206296 20 ноя  2004 /sbin/ping
>CentOS:
>-rwsr-xr-x  1 root root 33272 May  3 04:15 /bin/ping
>в FreeBSD/CentOS - не нужно, у ping выставлен SUID`ный бит.

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

>в ALT Linux - у пользователя зачем-то забрали возможность
>проводить диагностику сети. зачем было создавать лишние проблемы...

На том хосте вовсе необязательно каждому имеющиму шелл иметь доступ к лишнему привелегированному бинарнику.  Если бы обязательно -- control ping public (и эти права сохраняются при обновлении пакета).

Кому надо -- те в netadmin.

>то что права доступа на чтение забрали - еще раз подтверждает
>мысль о том, что SUID/GUID биты - это потенциально очень опасная штука.

Угу.

Кстати, control(8) -- очень простая и уютная штука:
http://wiki.sisyphus.ru/admin/control
http://wiki.sisyphus.ru/devel/control

Спрашивайте в ваших дистрибутивах :)

Ответить | Правка | Наверх | Cообщить модератору

130. "необходимый минимум привилегий (и сложности)"  +/
Сообщение от gmm20email (??), 23-Сен-07, 16:49 
>>>>> и почему, блин, в этой #%$#й винде
>>>>> отсутствует команда типа 'chmod +s банк-клиент.exe'
>>>>> - процентов 80 проблем ушло-бы в небытие безо всяких антивирусов
>>>> и еще процентов 800 появилось бы.
>>>> они сознательно от этого отказались при дизайне WinNT.
> А, в смысле от SUID?

Да.

> Так вернулись сейчас -- другими огородами, если правильно помню.

сейчас - это WinNT 5.2 или WinNT 6.0 ? в 5.2 я ничего такого не встречал.
да и вряд-ли в 6.0 они будут делать SUID/SGID, там наоборот они ограничивают
даже учетную запись Administrator. (т.е. борются с проблемой "неограниченный root")

> Да, неограниченный root, suid/sgid и /tmp -- три больных места UNIX.  

общий каталог /tmp сейчас защищается с помощью sticky bit. этого разве не достаточно?
если бы там были действительно серьезные проблемы из-за общего /tmp, в большинстве
дистрибутивов уже давным давно бы реализовали отдельные /tmp для каждого пользователя.

> в post-UNIX под названием Linux

для того, чтобы ядро Linux могло называться "post-UNIX"
1) в нем должны быть реализованы все возможности UNIX. ( POSIX, etc )
2) должны быть какие-то уникальные особенности, которые позволяют выделить
ядро Linux в отдельный подкласс внутри класса UNIX-like операционных систем.

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

>>> Интересная мысль.
>>факт.
>[считать неактуальным: Где ж факт-то?  Что обратное имеет подтверждение в виде
>вагона неочевидно принимаемых за признак исполняемости расширений (вовсе не только .scr)
>-- знаю, а потенциала для "ещё ~800%" не вижу.  Можно подробней?]

факт в том, что архитекторы WinNT изначально отказались от SUID/SGID при разработке
WinNT, учитывая опыт использования и проблемы, какие были с этой фичей в системах UNIX.

по поводу исполняемых .scr - здесь не надо путать ядро системы (WinNT) и Win32 subsystem.
само ядро спроектировано было достаточно грамотно и трезво. применили и модные в то время
архитектурные решения в виде микроядра (кто ж знал, что IA32 всех конкурентов задавит).
да, микроядро планировалось применять для облегчения портирования на новые аппаратные
архитектуры. например, существовали версии WinNT для процессоров DEC Alpha, MIPS, PowerPC,
SPARC, и т.п. для облегчения портирования на другие платформы кроме микроядра применяли
также технологию HAL (Hardware Abstraction Layer).

то что известно как Win32 API - это во многом портирование Win16 API под 32 бита.
Win16 API - такое кривое потому, что работает в режиме невытесняющей многозадачности.

поверх ядра NT (native API) кроме Win32 subsystem выполнялась, например, POSIX subsystem
и OS/2 subsystem. при желании - можно было добавить практически все что нужно.
например, одна из сторонних компаний, Internix, которая разработая полноценную
UNIX subsystem для WinNT была очень быстро куплена майкрософтом, сейчас их наработки
бесплатно доступны с сайта майкрософта под именем Microsoft Windows Services for UNIX,
и этот продукт сейчас позиционируется, как помощь в мигрировании с UNIX на Windows NT.

> Простые вещи должны и делаться просто.

...а сложные вещи должны быть доступны?

только вот сейчас Perl5 везде постепенно уступает свое место Python`у.

>>>> поэтому даже чтобы ping запустить на WinNT нужны права администратора.
>>>На *NIX/freenix тоже, всё-таки работа с raw socket.
>>в FreeBSD/CentOS - не нужно, у ping выставлен SUID`ный бит.
>...который и обеспечивает пресловутые права администратора.

это уже детали реализации, каким именно способом это реализовано.
но пользователю в FreeBSD/CentOS не нужны права администратора
для того, чтобы с помощью ping провести диагностику сети.

в WinNT - это невозможно. командой ping может пользоваться
только тот пользователь, который имеет права администратора.

>> в ALT Linux - у пользователя зачем-то забрали возможность
>> проводить диагностику сети. зачем было создавать лишние проблемы...
> На том хосте вовсе необязательно каждому имеющиму шелл иметь доступ к лишнему
> привелегированному бинарнику.  Если бы обязательно -- control ping public
> (и эти права сохраняются при обновлении пакета).

если действительно нужно обеспечить высокий уровень безопасности - пользуются SELinux.

>http://wiki.sisyphus.ru/devel/control

su - это сокращение от "swith user" а не "superuser".

Ответить | Правка | Наверх | Cообщить модератору

135. "необходимый минимум привилегий (и сложности)"  +/
Сообщение от Michael Shigorinemail (ok), 08-Окт-07, 10:54 
>> Да, неограниченный root, suid/sgid и /tmp -- три больных места UNIX.  
>общий каталог /tmp сейчас защищается с помощью sticky bit. этого разве не
>достаточно? если бы там были действительно серьезные проблемы из-за общего /tmp,
>в большинстве дистрибутивов уже давным давно бы реализовали отдельные /tmp для
>каждого пользователя.

Дело не только в том, что общий, а и в том, что known world writable.

>> в post-UNIX под названием Linux
>для того, чтобы ядро Linux могло называться "post-UNIX"
>1) в нем должны быть реализованы все возможности UNIX. ( POSIX, etc
>)
>2) должны быть какие-то уникальные особенности, которые позволяют выделить
>ядро Linux в отдельный подкласс внутри класса UNIX-like операционных систем.
>первое - скорее всего да. второе - нет. не вижу никаких уникальных
>особенностей.

Технически -- та же виртуализация как "мерж" майнфреймовых фич.  Про Solaris Zones знаю, и мне кажется, что OpenSolaris -- второй кандидат на ту же бирку.  Особенно если и с процессом разберутся.

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

Под UNIX я имел в виду в т.ч. субкультуру.  Под Linux -- тоже, включая и способы.

>факт в том, что архитекторы WinNT изначально отказались от SUID/SGID при разработке
>WinNT, учитывая опыт использования и проблемы, какие были с этой фичей в
>системах UNIX.

Ещё один факт -- что теперь к эквиваленту вернулись.

[знаю]

>> Простые вещи должны и делаться просто.
>...а сложные вещи должны быть доступны?
>только вот сейчас Perl5 везде постепенно уступает свое место Python`у.

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

>если действительно нужно обеспечить высокий уровень безопасности - пользуются SELinux.

Зависит.

>>http://wiki.sisyphus.ru/devel/control
>su - это сокращение от "swith user" а не "superuser".

Хех.  Если Вы про описание
  wheel: Any user can execute /bin/su, but only "wheel" group members can switch to superuser
-- то там всё именно так и задумано/работает, как описано:

user1$ groups | grep -q wheel && echo wheel
wheel
user1$ /usr/sbin/control su
wheelonly
user1$ su -
Password:
root#
user2$ groups | grep -q wheel && echo wheel
user2$
user2$ su -
Password:
su: Permission denied
user2$ _

Ответить | Правка | Наверх | Cообщить модератору

138. "необходимый минимум привилегий (и сложности)"  +/
Сообщение от gmm20email (??), 08-Окт-07, 23:29 
>>> неограниченный root, suid/sgid и /tmp -- три больных места UNIX.  
>> общий каталог /tmp сейчас защищается с помощью sticky bit. этого разве не достаточно?
>> если бы там были действительно серьезные проблемы из-за общего /tmp,
>> в большинстве дистрибутивов уже давным давно бы реализовали
>> отдельные /tmp для каждого пользователя.
> Дело не только в том, что общий, а и в том, что known world writable.

$ ll / | grep tmp

drwxrwxrwt  5 root  root   4096 Oct  8 21:27 tmp

$ man chmod

STICKY DIRECTORIES
       When the sticky bit is set on a directory, files in that directory may be unlinked or renamed only by
       root or their owner.  Without the sticky bit, anyone able to write to the  directory  can  delete  or
       rename  files.   The  sticky  bit  is  commonly  found  on directories, such as /tmp, that are world-
       writable.

если внутри /tmp создавать файлы/каталоги с правами 700 - в чем проблемы?
в результате - никто кроме владельца и root не будет иметь к этим файлам/каталогам
доступ на операции чтения / записи / исполнения / удаления / переименования и т.п.

или я чего-то не понимаю?

а то, что все временные файлы собраны в одном месте - так это же наоборот, очень хорошо.
удобно ведь, когда все логи лежат в /var/log, а все файлы пользователя в /home/$user.
после того бардака, что творился на жестких дисках пользователей, UNIX - это порядок.

[...]

>> факт в том, что архитекторы WinNT изначально отказались от SUID/SGID при разработке
>> WinNT, учитывая опыт использования и проблемы, какие были с этой фичей в
>> системах UNIX.
> Ещё один факт -- что теперь к эквиваленту вернулись.

где? в системах от WinNT 4.0 до WinNT 5.2 я такого не видел.
если ты про 6.0 - то там пишут что suid они также не используют:

http://blogs.msdn.com/windowsvistasecurity/archive/2007/08/0...

кстати, вот на эту тему мнение разработчика Postfix:

http://www.postfix.org/security.html

Set-uid

Introducing the concept was the biggest mistake made in UNIX history.
Set-uid (and its weaker cousin, set-gid) causes more trouble than it is worth.

[...]

>> если действительно нужно обеспечить высокий уровень безопасности - пользуются SELinux.
> Зависит.

так ведь других нормальных вариантов просто нет.

AppArmor кстати вчистую проигрывает SELinux в плане защиты каталога /tmp.

google search: selinux apparmor compare, там будет презентация Yuichi Nakamura

[...]

Loss by path-name tmp files
===========================

When creating randomly named file under /tmp

SELinux
– Can identify such file by naming label such as httpd_tmp_t

AppArmor
– How to identify randomly named files?
• result in allowing whole /tmp.

[...]

PS кстати в дополнение к тому разговору о лицензиях. ZFS может быть без проблем встроена
в любую из BSD систем, потому что BSD лицензия это позволяет. но лицензия GPL ограничивает
разработчиков Linux, и ZFS может быть в Linux только через FUSE.

только учти, лицензии - это слишком флеймоопасная тема. да и посмотри на тему этой ветки
обсуждения - тут про Windows и Ubuntu надо говорить, мы уже слишком далеко в offtopic ушли...

да и редактор внутри firefox`а не очень удобный, я в этом встроенном текстовом редакторе
уже несколько раз случайно нажимал ctrl-e и ctrl-b. поэтому если есть такая возможность,
лучше было бы продолжить это обсуждение емейлом.

PPS ты мой емейл от 22 числа получил? фактически меня там интересуют всего несколько
небольших тем - про ALT (формат пакетов), вл. ASP и возможно, не все ясно с CIFS.
все остальное можно молча скипать, если у тебя нет уточняющих вопросов.

Ответить | Правка | Наверх | Cообщить модератору

139. "(offtopic) разные околобезопасные штуки"  +/
Сообщение от Michael Shigorinemail (ok), 09-Окт-07, 12:22 
>>> если бы там были действительно серьезные проблемы из-за общего /tmp,
>>> в большинстве дистрибутивов уже давным давно бы реализовали
>>> отдельные /tmp для каждого пользователя.
>> Дело не только в том, что общий, а и в том, что known world writable.
>$ ll / | grep tmp

BTW ls -ld /tmp ;-)

>если внутри /tmp создавать файлы/каталоги с правами 700 - в чем проблемы?

В том, что они могут быть _уже_ созданы.  Недавно в одной из мониторилок почти случайно () наткнулся на забытый дебаг, который от рута писал в /tmp/чегототам.log и остался в if 1, а не if 0.  Чегототам забито гвоздями и не зависит даже от pid.

>или я чего-то не понимаю?

Не помню точное название, но существует несколько классов атак с применением известности общедоступности по чтению/записи /tmp и известности или возможности угадать/довести до race condition создание временных файлов/каталогов.  Соответственно и всякие fchmod() неспроста появились...

>а то, что все временные файлы собраны в одном месте - так
>это же наоборот, очень хорошо.

Изрядно плохо.  См., например, https://bugzilla.altlinux.org/show_bug.cgi?id=8030 (в ALT это теперь регулируется, раньше дефолтом был TMPDIR=$HOME/tmp/).

>удобно ведь, когда все логи лежат в /var/log

/var/log/чтотоещё/ -- удобней, особенно при необходимости раздачи и контроля прав.

>а все файлы пользователя в /home/$user.

IMHO -- включая временные ;-)

>если ты про 6.0 - то там пишут что suid они также не используют:

Деталей не изучал, но с точки зрения пользователя-то -- эквивалент...

>http://www.postfix.org/security.html
>Introducing the concept was the biggest mistake made in UNIX history.
>Set-uid (and its weaker cousin, set-gid) causes more trouble than it is
>worth.

Да, это одна из трёх основных проблем дизайна UNIX (suid, root, /tmp).

>>> если действительно нужно обеспечить высокий уровень безопасности - пользуются SELinux.
>> Зависит.
>так ведь других нормальных вариантов просто нет.

Есть, просто нормальность нормальности рознь.  RSBAC успешно применялся, в т.ч. по банковским и силовым структурам, ещё лет шесть тому.

>PPS ты мой емейл от 22 числа получил?

Да, но тут точно пошли в почту.

Ответить | Правка | Наверх | Cообщить модератору

140. "linux security"  +/
Сообщение от gmm20email (??), 09-Окт-07, 16:15 
>>>> общий каталог /tmp сейчас защищается с помощью sticky bit. этого разве не достаточно?
>>> Дело не только в том, что общий, а и в том, что known world writable.
>> если внутри /tmp создавать файлы/каталоги с правами 700 - в чем проблемы?
> В том, что они могут быть _уже_ созданы.
> Недавно в одной из мониторилок почти случайно () наткнулся на забытый дебаг,
> который от рута писал в /tmp/чегототам.log и остался в if 1, а не if 0.  
> Чегототам забито гвоздями и не зависит даже от pid.

если программа написана без ошибок - никто кроме root`а не сможет получить доступ к этому
файлу. если программа написана с ошибками, тогда как говорится нечего на зеркало пенять...

я не вижу здесь каких-то принципиальных ошибок в дизайне /tmp с правами drwxrwxrwt

> Не помню точное название, но существует несколько классов атак с применением известности
> общедоступности по чтению/записи /tmp и известности или возможности угадать/довести
> до race condition создание временных файлов/каталогов.  

это атаки на ошибки в программах.

>> а то, что все временные файлы собраны в одном месте - так это же наоборот, очень хорошо.
> Изрядно плохо.

аргументы - ?

я при каждом старте системы делаю rm -rfd /tmp/*
потом - есть планы вообще перенести /tmp на tmpfs

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

> См., например, https://bugzilla.altlinux.org/show_bug.cgi?id=8030

какие конкретно проблемы вы этими танцами с бубном (/tmp/.private/$USER) пытаетесь решить?

если даже pam_mktemp не достаточно, тогда явно нужно переходить к использованию SELinux

>> а все файлы пользователя в /home/$user.
> IMHO -- включая временные ;-)

и чем это лучше варианта /tmp/$user ?

меня только одно в этой ситуации радует, что есть такие дистрибутивы как RHEL и CentOS.

> это одна из трёх основных проблем дизайна UNIX (suid, root, /tmp).

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

Ответить | Правка | Наверх | Cообщить модератору

141. "linux security"  +/
Сообщение от Michael Shigorinemail (ok), 09-Окт-07, 17:39 
>>> если внутри /tmp создавать файлы/каталоги с правами 700 - в чем проблемы?
>> В том, что они могут быть _уже_ созданы.

Могли быть уже созданы к моменту попытки создания -- в т.ч. как симлинки.

>> Недавно в одной из мониторилок почти случайно () наткнулся на забытый дебаг,
>> который от рута писал в /tmp/чегототам.log и остался в if 1, а не if 0.  
>> Чегототам забито гвоздями и не зависит даже от pid.
>если программа написана без ошибок - никто кроме root`а не сможет получить
>доступ к этому файлу.

Если.  И то ошибка недосмотру рознь.  В данном случае формальной ошибки вроде как и нет, а вот неучёт того, что в промежутке между (или заранее) юзер сделает ln -s /etc/passwd /tmp/чегототам.log и дождётся нужного вызова, то /etc/passwd (или иной произвольный файл с известным путём) будет затёрт тарабарщиной, а симлинк потом будет грохнут.  По крайней мере в данном разе выходило бы так.

>если программа написана с ошибками, тогда как говорится нечего на зеркало
>пенять...

Errare humanum est, однако.

>> Не помню точное название, но существует несколько классов атак с применением известности
>> общедоступности по чтению/записи /tmp и известности или возможности угадать/довести
>> до race condition создание временных файлов/каталогов.  
>это атаки на ошибки в программах.

Эти ошибки порождены схожими [неверными] предположениями о свойствах /tmp.

>>> а то, что все временные файлы собраны в одном месте - так это же наоборот, очень хорошо.
>> Изрядно плохо.
>аргументы - ?

Практика.

>я при каждом старте системы делаю rm -rfd /tmp/*

Небезопасно, в ALT на то есть отдельный stmpclean (s == secure, см. http://git.altlinux.org/people/ldv/packages/stmpclean.git).

>потом - есть планы вообще перенести /tmp на tmpfs

Кажется, в 4.0 так и сделано (к моему неудовольствию -- это разумно как сознательное действие).

>делать свалку мусора в /home - это очень странное решение. я бы
>сказал, что неадекватное.
>проблемы могут быть например, если на /home нет квот - юзер забьет
>весь раздел мусором,

Если.

>или если они есть, но количество свободного места на /home для юзера
>близко к нулю.
>представляю какой это будет в результате nightmare для системного администратора.
>даже чистка этих временных каталогов от мусора выльется в нетривиальный скрипт.

Ну так зависит от полиси, а его проще писать и реализовывать, когда есть инструменты.  У меня-то они есть как раз.

>> См., например, https://bugzilla.altlinux.org/show_bug.cgi?id=8030
>какие конкретно проблемы вы этими танцами с бубном (/tmp/.private/$USER) пытаетесь решить?

Это не танцы, это как раз агрегирование приватных (раздельных!) TMPDIR в одном месте (/tmp/.private/).  Кто-то там выше спрошал про "одно место"? ;-)

>>> а все файлы пользователя в /home/$user.
>> IMHO -- включая временные ;-)
>и чем это лучше варианта /tmp/$user ?

Много мусора в /tmp, но это или вкусовое, или когда пользователей в ящике -- сотнями и больше.

>> это одна из трёх основных проблем дизайна UNIX (suid, root, /tmp).
>"критикуя - предлагай". если ты говоришь, что это плохо - предложи лучший
>вариант.

Это был комментарий к тезису о "проблеме UNIX" -- что сродственных там больше.

Предлагать -- не в моей компетенции.

Ответить | Правка | Наверх | Cообщить модератору

142. "linux security"  +/
Сообщение от gmm20email (??), 09-Окт-07, 23:05 
>>> Не помню точное название, но существует несколько классов атак с применением
>>> известности общедоступности по чтению/записи /tmp и известности или возможности
>>> угадать/довести до race condition создание временных файлов/каталогов.  
>> это атаки на ошибки в программах.
> Эти ошибки порождены схожими [неверными] предположениями о свойствах /tmp.

после создания файла/каталога всегда можно проверить все ли с ним нормально -
правильно ли выставлены права доступа, тот ли владелец и не симлинк ли это.

например, пользователи ведь и вызовы malloc могут не проверять на успешность,
что ж тогда делать - встроить в ядро сборщик мусора или вообще запретить указатели?

>> я при каждом старте системы делаю rm -rfd /tmp/*
> Небезопасно

очень интересно, чем это может быть небезопасно?

если даже там будет лежать хардлинк на /etc/shadow - unlink() просто удалит "левое" имя.
если там будут лежать какие-то симлинки - rm будет удалять сам симлинк, а не target файл.

`rm -rfd /tmp/*` выполняется одним из первых инит-скриптов, с именем S00cleantmp

> в ALT на то есть отдельный stmpclean (s == secure, см.
> http://git.altlinux.org/people/ldv/packages/stmpclean.git).

насколько я понимаю, он расчитан на то, чтобы чистить /tmp на работающей машине.
т.е. чтобы админ мог периодически из cron запускать stmpclean вместо вот этого:

find /tmp -type f -atime +3 -ctime +3 ! -name '.X*-lock' -exec rm -f -- {} \;
find -d /tmp ! -name . -type d -mtime +1 -exec rmdir -- {} \; >/dev/null 2>&1

>>> См., например, https://bugzilla.altlinux.org/show_bug.cgi?id=8030
> агрегирование приватных (раздельных!) TMPDIR в одном месте (/tmp/.private/).

не понятно зачем в /tmp/.private/$USER вместо /tmp/$USER ?
в pam_mktemp ведь есть защита от различных race conditions.

>>>> а все файлы пользователя в /home/$user.
>>> IMHO -- включая временные ;-)
>>и чем это лучше варианта /tmp/$user ?
> Много мусора в /tmp, но это или вкусовое,
> или когда пользователей в ящике -- сотнями и больше.

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

особенно, когда tmp со временем переедет из обычной файловой системы на tmpfs,
что иметь одну файловую систему tmpfs, что несколько сотен - есть разница ведь.

>>> это одна из трёх основных проблем дизайна UNIX (suid, root, /tmp).
>>"критикуя - предлагай". если ты говоришь, что это плохо - предложи лучший вариант.
>Это был комментарий к тезису о "проблеме UNIX" -- что сродственных там больше.
> Предлагать -- не в моей компетенции.

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

проблему с такими кривыми программами решает модуль pam_namespace (присутствует в Fedora),
The pam_namespace PAM module sets up a private namespace for a session with polyinstantiated directories.
A polyinstantiated directory provides a different instance of itself based on user name,
or when using SELinux, user name, security context or both.

и разумеется, защита каталога /tmp с помощью SELinux в RHEL и Fedora также присутсвует.

проблема с /tmp если решена не полностью, то на 80%-90%.

проблема с неограниченным root очень хорошо решается с помощью SELinux.
программа будучи запущена с uid 0 будет иметь минимально необходимый
для работы уровень привилегий. проблема решена почти на 100%.

suid - изменить это не так просто. хотя SELinux и тут
очень сильно минимизирует возможный ущерб при взломе.

PS учитывая, что UNIX уже более 30 лет (почти 40) - эта ОС получилась довольно удачной.
следующая версия, Plan9 имеет более правильный дизайн, но гораздо меньший успех. почему?

PPS кстати, я понял, почему мне не нравится термин "post-UNIX" применительно к Linux.
это очень сильно напоминает времена unix wars, ничем хорошим это тогда не закончилось.

Ответить | Правка | Наверх | Cообщить модератору

121. "OpenNews: Может ли Ubuntu Linux выступать в роли замены Wind..."  +/
Сообщение от Progr (?), 21-Сен-07, 13:10 
>Пример "невиндового вируса" в студию!

Сам я вирусы на лине не хватал, тк нет таковых с выходом в инет, и дома почти не пользую.
У меня и винда раз в год, а то и реже, их хватает, и то, когда по лени позволяю под админской учетной записью другим лазить.

Но я не поленился, и вбил в яндекс "Вирусы для Linux". Результаты впечатляют.
http://www.cnews.ru/news/line/index.shtml?2006/04/11/199525
http://www.ibusiness.ru/development/8393/
http://www.viruslist.com/ru/news?id=1155
Ну и так далее. Не зря же существуют антивирусы под никсы. Или вы этого не знали? Да и "технологии" используемые вирусами нынче к оси не сильно привязанны. К примеру социальный инжиниринг, работающий на пользователя, может заставить запустить нужный бинарник под рутом.

Кстать отказ работать софта без админских прав в винде, это не ее проблема, а программистов, недоделавших свою работу.

PS. Надеюсь вы прочитаете пой пост.

Ответить | Правка | К родителю #117 | Наверх | Cообщить модератору

122. "OpenNews: Может ли Ubuntu Linux выступать в роли замены Wind..."  +/
Сообщение от Progr (?), 21-Сен-07, 13:48 
Вот еще очень интерестная ссылка:
http://linux.su/130306.shtml
Ответить | Правка | Наверх | Cообщить модератору

123. "OpenNews: Может ли Ubuntu Linux выступать в роли замены Wind..."  +/
Сообщение от Michael Shigorinemail (ok), 21-Сен-07, 14:20 
>У меня и винда раз в год, а то и реже, их хватает, и то,
>когда по лени позволяю под админской учетной записью другим лазить.

Есть мнение, что Вы можете и не замечать схваченных после одного под админской.
По крайней мере в forensics analysis сложилось достаточно дружное мнение, что гарантировать отсутствие вредоносного кода, однажды получившего возможность исполнения с неограниченными (или достаточными) привилегиями -- без установки бинарников с нуля невозможно.

Надеюсь, Вас хорошие руткиты пока обходили.

>Не зря же существуют антивирусы под никсы. Или вы этого не знали?

Н-да.

Видите ли, антивирусы под *NIX существуют для того, чтобы чистить контент (почту, веб) для юзверей, сидящих на виндах за этими самыми *NIX.  Изредка -- диски, вытащенные из уже не поднимающихся машин (или с livecd).  Для снижения опасности пролома самих *NIX существуют совсем другие системы, и ориентированы они в первую очередь на умных людей и "умный" код, а не тупую массовку, скандирующую "открой эту картинку" с небольшими вариациями.

Бишь то, что для винды -- "вирус" и норма жизни, для *NIX -- "взлом" и экстраординарное событие (если есть основания считать, что проломили в root, то вменяемые сисадмины создают систему с нуля и поскольку это достаточно неприятная процедура -- стараются предпринять меры для неповторения таковой).

Этого _Вы_ не знали?

>Да и "технологии" используемые вирусами нынче к оси не сильно привязанны.

Глупости.  ActiveX очень даже хорошо привязан, как и IE ;-)

>К примеру социальный инжиниринг, работающий на пользователя,
>может заставить запустить нужный бинарник под рутом.

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

А _необходимости_ ими пользоваться -- нет.

>Кстать отказ работать софта без админских прав в винде, это не ее
>проблема, а программистов, недоделавших свою работу.

Дадас.  Это проблема политики Microsoft, которая сделала вид, что win32 -- это и win95, и winnt.  При этом кодили слишком многие вне её стен -- на/под win95.  И без никакого ощущения недоделанности своей -- под 9x-то работает, а на NT ставили-тестили админом -- тоже работает.

Пора бы уж избавляться от таких дремучих представлений.

Ответить | Правка | К родителю #121 | Наверх | Cообщить модератору

124. "OpenNews: Может ли Ubuntu Linux выступать в роли замены Wind..."  +/
Сообщение от Progr (?), 21-Сен-07, 15:18 
>...
>Надеюсь, Вас хорошие руткиты пока обходили.

Благо да. Т.к. имею привычку выяснять что за вирус заразил, соотв. и методы его удаления. При сомнениях переустановка осис нуля.

>[оверквотинг удален]
>"умный" код, а не тупую массовку, скандирующую "открой эту картинку" с
>небольшими вариациями.
>
>Бишь то, что для винды -- "вирус" и норма жизни, для *NIX
>-- "взлом" и экстраординарное событие (если есть основания считать, что проломили
>в root, то вменяемые сисадмины создают систему с нуля и поскольку
>это достаточно неприятная процедура -- стараются предпринять меры для неповторения таковой).
>
>
>Этого _Вы_ не знали?

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

>Глупости.  ActiveX очень даже хорошо привязан, как и IE ;-)
>...
>Не может, если у пользователя нет прав рута или привычки ими пользоваться
>без веского на то основания.
>
>А _необходимости_ ими пользоваться -- нет.

Я не сказал все. И под "технологии" я понимал не конкретное нечто вида ActiveX, а более абстрактные понятия. И если АктивХ - в винде, то в линуксе найдут чтонить другое. И рассматривать лучше не текущую ситуацию.
Социальный инжиниринг рассчитан не на админов по большей части, а на рядовых пользователей. И я сомневаюсь, что пересевший дома на линукс рядовой пользователь(а об этом смотрю линуксоиды любят кричать) начнет вдаваться во всякие подробности конфигурирования системы.
Представим, что пользователь получает письмо вида - "Зарегистрируйтесь на нашем сайте запустив прилагаемый бинарник из под рута и выиграйте миллион". Найдутся такие кто захотят "выиграть миллион", и если они умеют "запускать из под рута"... Да и не для всех целей нужен рут, к примеру получить что либо из личных файлов пользователя. И др.
Я вообще не вирусы пишу, поэтому до мелочей все в этом процессе рассказать не смогу.

>Дадас.  Это проблема политики Microsoft, которая сделала вид, что win32 --
>это и win95, и winnt.  При этом кодили слишком многие
>вне её стен -- на/под win95.  И без никакого ощущения
>недоделанности своей -- под 9x-то работает, а на NT ставили-тестили админом
>-- тоже работает.
>
>Пора бы уж избавляться от таких дремучих представлений.

Это - да, с этим, наверное, не как не поборешься не переписав прогу. Но это вобщем то две разные ОС. А я имел ввиду проги выпущенные под современные видны, скажем под ХР. Често сказать, удивляет, когда прога не работает без админских прав. Но это не микрософта, вроде, проблема, а сложившейся ситуации, когда нормой считается работать под админом в обычной ситуации, хотя по логике это не нужно.

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

PS. Иногда мне кажется, что люди забывают цель вирусов, и соответственно не там, и не того от них ждут.

Ответить | Правка | Наверх | Cообщить модератору

125. "Может ли Windows выступать в роли замены Linux"  +/
Сообщение от Michael Shigorinemail (ok), 21-Сен-07, 16:46 
>>Глупости.  ActiveX очень даже хорошо привязан, как и IE ;-)
>Я не сказал все.

Собсно не сказали ничего.

>И под "технологии" я понимал не конкретное нечто
>вида ActiveX, а более абстрактные понятия. И если АктивХ - в
>винде, то в линуксе найдут чтонить другое. И рассматривать лучше не
>текущую ситуацию.

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

Вот это "что-нибудь другое" для нахождения доступно 24x7, да только глобальные дыры-технологии попросту не находят применения.

>Социальный инжиниринг рассчитан не на админов по большей части, а на рядовых
>пользователей. И я сомневаюсь, что пересевший дома на линукс рядовой пользователь(а
>об этом смотрю линуксоиды любят кричать) начнет вдаваться во всякие подробности
>конфигурирования системы.

Типа там "как запустить из-под рута".

>Представим, что пользователь получает письмо вида - "Зарегистрируйтесь на нашем
>сайте запустив прилагаемый бинарник из под рута и выиграйте миллион".
>Найдутся такие кто захотят "выиграть миллион", и если они умеют "запускать из под
>рута"...

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

>Да и не для всех целей нужен рут, к примеру получить
>что либо из личных файлов пользователя. И др.

Да.  И проспамить или по'DoS'ить -- тоже.

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

Ну я намедни тоже ляпнул сдуру про win-драйверы, что не есть повод продолжать сегодня без приведения уже забытого в точности подтверждения своему тезису...

>Подводя итог. Я скорее стремлюсь представить картину, в которой линукс захватывает у
>микрософта значимую часть его "бытового" рынка.

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

С виндой у кухарки проблема в излишней функциональности, которая кухарке невдомёк, зато на руку malware'истам.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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