The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"isolat - утилита для изолированного выполнения подозрительны..."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [ Отслеживать ]

"isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от opennews (??) on 05-Янв-10, 23:59 
В рамках проекта Isolate (http://code.google.com/p/isolate/) создана утилита, предназначенная для организации изолированного выполнения приложений с минимальными привилегиями и ограниченным доступом к X-серверу. Идея по созданию isolate возникла после того, как автор проекта столкнулся с уязвимостью в медиа-плеере, позволяющей выполнить код после открытия специально оформленного MP3-файла. Задача isolate - обеспечить возможность защиты системы при выполнении неблагонадежных программ или при обработке полученного из недоверительных источников контента.


В отличие от похожих по возможностям аналогов, например, завязанной на SELinux утилиты sandbox (http://www.opennet.me/opennews/art.shtml?num=23481), isolat является многоплатформенным приложением, одинаково хорошо работающим как в Linux, так и во FreeBSD. Для обеспечения изоляции в isolate использован метод динамического формирования croot-окружения, предложенный Daniel J. Bernstein в главе 5.2 документа "Размышления о безопаснос...

URL: http://lwn.net/Articles/368690/rss
Новость: http://www.opennet.me/opennews/art.shtml?num=24907

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

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

1. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Аноним (??) on 05-Янв-10, 23:59 
Даешь виртуальную ОС для каждого приложения!!!

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

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от anonymous (??) on 06-Янв-10, 00:15 
Возможно, но маловероятно, цель вируса запуститься на максимальном числе машин при приемлемой сложности вируса, а не на вообще всех. Да и не надо виртуальной ОС для каждого приложения(всё равно это бесполезно, процессам надо взаимодействовать => будут дырки), зато для случая когда нельзя, но очень хочется такая утилитка будет замечательна.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "isolat - утилита для изолированного выполнения подозрительны..."  –1 +/
Сообщение от XoRe (ok) on 06-Янв-10, 01:12 
"Откройте для себя chroot".

Имхо, DOS/Windows негативно отражается на нашем мышлении.
Такие вещи, как chroot, scp(sftp), клиент-серверная модель иксов, программа strings, и т.д. существуют в *nix уже очень долго.
Но пользователи все открывают и открывают для себя эти вещи (а так же то, что можно с ними делать).

chroot с обвязками (со скриптами, которые сами формируют окружение и т.д.) очень мощная штука.
В том числе - и на десктопе.
Добавить к этому какую-нибудь отслеживалку действий программы, и бороться с вирусами становится гораздо проще:
1. Подозрительная программа запускается в chroot.
2. Отслеживаются и записываются все её вызовы и обращения к файлам.
3. Формируется отчет, который отсылается куда следует.
Это действие можно автоматизировать до того, что пользователь нажимает правой кнопкой мышки на программе и выбирает "проверить на вирусную активность".

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

6. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от JL2001 (ok) on 06-Янв-10, 01:24 
>Это действие можно автоматизировать до того, что пользователь нажимает правой кнопкой мышки
>на программе и выбирает "проверить на вирусную активность".

и что, кто то автоматизировал уже? или все ждут первой звезды в виде 90% десктопов?
зы: массовость на десктопах принесёт виръё качаемое и запускаемое, надо заранее готовить всякие авто-chroot для всего не с репозиториев например

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

7. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Аноним (??) on 06-Янв-10, 02:55 
а говорили, что уязвимости и вирусы только под Виндой ...
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

8. "isolat - утилита для изолированного выполнения подозрительны..."  +1 +/
Сообщение от аноним on 06-Янв-10, 03:08 
Да, но пользователи-дебилы есть везде.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

9. "isolat - утилита для изолированного выполнения подозрительны..."  +3 +/
Сообщение от аноним on 06-Янв-10, 03:18 
>гораздо проще:

До конца каникул вам задание:
1) Запустите любую более-менее сложную програму под ktrace, посмотрите какой лог там получится и попробуйте его проанализировать и куда-нибудь отправить.
2) Попробуйте дать точное определение "вирусной активности", составьте полную таблицу всех возможных действий программы, рассортированых на две группы - вирусные/не вирусные (подсказка: это как минимум все сисколлы со всеми комбинациями параметров умножить на все возможные состояния системы). Будет ли эта таблица одинаковой для всех приложений?
3) Подумайте, как вы будете автоматически тестировать все пути выполнения программы. Также подумайте, как вы будете тестировать код, которого вообще нет (но должен быть, чтобы программа не превратилась во вредоносную).

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

10. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Gambler (ok) on 06-Янв-10, 04:18 
По-хорошему, автоматизировать это надо до такого уровня, что по умолчанию все программы запускаются в chroot с минимумом привелегий. Тогда и анализировать ничего не надо. В полной изоляции вирусы нормальной системе просто не страшны. Если вирус не может изменять системные файлы, не может читать пользовательские, не может открывать сокеты или писать в память чужих процессов, то он не опасен. Только для такого надо будет основательно перестроить OC, да и сами приложения.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

11. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от upyx (ok) on 06-Янв-10, 06:00 
Читайте выше:
"Да и не надо виртуальной ОС для каждого приложения(всё равно это бесполезно, процессам надо взаимодействовать => будут дырки)".
Если программа не сможет читать пользовательские файлы, какой вообще от нее прок?

В целом, идея изолирования данных которые не должны пересекаться правильная и очень не новая. Уверен, что многие применяют этот подход на практике, например, я, для работы с ценными данными, создал отдельный раздел, который примонтируется при необходимости, и отдельного пользователя, под которым эти данные доступны.
Вот только задача следить за тем какие данные должны взаимодействовать, а какие нет - задача пользователя. А что мы знаем о пользователях? :) Правильно, если пользователю оно надо и руки из правильного места, он найдет как это сделать сам, в противном случае - все ухищрения разработчиков бес-по-ле-зны. Так вот задача в том, чтобы дать возможность первым (заинтересованным пользователям) решить эту задачи без допгемора. Представленная утилита как раз шаг в этом направлении. А бороться со вторыми неэффективно из-за многократного превосходства сил.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

12. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Tav (ok) on 06-Янв-10, 07:36 
По-хорошему, любая программа в системе должна иметь доступ только к тем ресурсам, которые ей необходимы. Например, к своему каталогу конфигурации и только тем файлам пользователя, которые пользователь явно указал через диалог открыть/сохранить. Нормально все это можно было бы обеспечить в ОС с приложениями в управляемом коде, вроде Inferno, JNode или Singularity.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

13. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Аноним (??) on 06-Янв-10, 07:38 
А разве многопользовательские ОС, работающие с защищённым режимом процессора, не изолируют память одного процесса от покушений другого?
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

14. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от null (??) on 06-Янв-10, 07:59 
Ну, вот SELinux как раз и обеспечивает.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

15. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от User294 (ok) on 06-Янв-10, 08:01 
Че-то я не понял нафиг сдался чрут. Хаксоров нынче интересует спам и проксики. Ну и как от этого поможет чрут? Ну будут срать не из основной системы так из песочницы. Результат в общем то одинаковый. И в чем тогда профит?
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

16. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от User294 (ok) on 06-Янв-10, 08:04 
> с приложениями в управляемом коде

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

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

17. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Аноним (??) on 06-Янв-10, 08:09 
а есть еще вариант с ptrace исполняемого приложения и фильтрацией всех неугодных сисколлов.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

18. "isolat - утилита для изолированного выполнения подозрительны..."  +1 +/
Сообщение от Gambler (ok) on 06-Янв-10, 09:22 
>Читайте выше:
>"Да и не надо виртуальной ОС для каждого приложения(всё равно это бесполезно, процессам надо взаимодействовать => будут дырки)".
>Если программа не сможет читать пользовательские файлы, какой вообще от нее прок?
>Вот только задача следить за тем какие данные должны взаимодействовать, а какие
>нет - задача пользователя. А что мы знаем о пользователях? :)
>Правильно, если пользователю оно надо и руки из правильного места, он
>найдет как это сделать сам, в противном случае - все ухищрения
>разработчиков бес-по-ле-зны.

Ничего не бесполезно. Процессы могут взаимодействовать через четко определенные шлюзы.

Я могу с тем же успехом сказать, что разграничивать права пользователей бесполезно.

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

Файлы в виртуалку можно заливать через определенные shared директории. А другие директории можно смонтировать как readonly. Это уже делается, но делается через ненужныый слой виртуализации в userspace, хотя доступ к памяти и файлам в OC и так "виртуальный".

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

И не надо все проблемы безопасности сваливать на пользователя. Почитайте:

http://research.microsoft.com/en-us/um/people/cormac/papers/...

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

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

Фишка изоляции приложений как раз в том, что ее (в теории) можно сделть удобной для пользователя и при этом не очень тормозной для системы.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

19. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от pavel (??) on 06-Янв-10, 10:21 
Посмотрите пожалуйста на следующую идею http://www.npp-itb.spb.ru/. Мне, например, подход авторов нравиться, только жаль что программы закрытые.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

20. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Damon (??) on 06-Янв-10, 11:22 
>Ну будут срать не из основной системы так из песочницы. Результат в общем то одинаковый.

Не совсем. Это на сервере процесс выполняется неопределенно долго, а юзверы порой (обычно ночной) выключают ДЕСКТОП. А после включения, опять получай доступ... Несколько гиморно. А если брать вариант с пресловутым mp3, то после краха плюера, некоторая часть пользователей (а большая часть после нескольких попыток запустить) плюнет на этот файл. Т.ч. применительно к ситуации с mp3, "срать" из песочницы не получится. ИМХО, не панацея, но идея интересная, в принципе.
Все вышеописанное, ессно, относится к случаю, когда дальше песочницы проблемы не уплывут...

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

21. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Damon (??) on 06-Янв-10, 11:33 
>а есть еще вариант с ptrace исполняемого приложения и фильтрацией всех неугодных
>сисколлов.

На 100% не уверен, но разве SELinux и иже с ним не так работают?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

22. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от уауауауауа on 06-Янв-10, 11:34 
Взаимодействие процессов на уровне архитектуры должно быть максимально на высоком уровне с минимальным количеством функций.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

23. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от уауауауауа on 06-Янв-10, 11:41 
>Че-то я не понял нафиг сдался чрут. Хаксоров нынче интересует спам и
>проксики. Ну и как от этого поможет чрут? Ну будут срать
>не из основной системы так из песочницы. Результат в общем то
>одинаковый. И в чем тогда профит?

Самое страшное - это руткит. Потому что ты о нем не знаешь, а он есть. А спаммера в песочнице прибить не трудно.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

24. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Вредонос on 06-Янв-10, 11:52 
По-моему, борьба с вирусами бессмысленна, как борьба со спамом в почте. Контрпример:
Есть суперзащищённый SESESELinux (даже и не линукс, а вообще любая ось). Мы ставим, например, "автоматический переключатель раскладки". Понятно, что это как минимум - вторжение на уровне системы, запретить которое мы не можем - нужен доступ к клавиатурным сообщениям любого приложения. А теперь берём браузер, заходим на страницу электронных платежей и вуаля! Наши пароли поплыли (в скрытом виде) через переключатель в какие-нть логи. Далее, приблуда просит автообновиться со своего сайта - понятно, что 99% юзеров захотят именно это - одной кнопкой решить проблему. Всё, пароли на свободе.
Второй принципиально неустранимый путь вредить - это доступ к файлам юзера. Ты открываешь один файл(естественно, убрав защиту от записи), попутно открываются ещё два и что-то там портится. Запрашивать открытие КАЖДОГО файла - это прямой путь в дурдом. А разрешать всё автоматом - прямой путь к решету.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

25. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Вредонос on 06-Янв-10, 12:01 
>В целом, идея изолирования данных которые не должны пересекаться правильная

Ничего не правильная. У вас для текстовых файлов только vi используется? :) Возьмите тот же латех - его исходники трогают как минимум три процесса! Что, для каждого делать разрешение? А для других исходников опять отвечать на вопросы? А как быть с промежуточными файлами компилляции?

Вирусы были, есть и будут есть, тут спасение только в бэкапах и внешних, незаражённых системах.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

26. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от hate email on 06-Янв-10, 12:11 
>По-моему, борьба с вирусами бессмысленна, как борьба со спамом в почте.

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

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

27. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Damon (??) on 06-Янв-10, 12:40 
>  Совершенно безграмотное утверждение. Откуда у тебя такие "гениальные" мысли? Из
>опыта?
>Так после таких заявлений даже школьники на форуме скажут что ты "круто
>прогнал".

Если выдрать фразу из контекста, то да, безграмотно, но в общем контексте мысль звучит правильно. Слишком силен мотив "... а вот у нас в ... все делается одной кнопкой! Зачем мне что-то учить, если я ВСЕ могу сделать одной кнопкой!". Вот и расплачиваются юзверы за неграмотность, переодической переустановкой оси, потерей данных и т.д. Обезъянки в экспериментах психологов тоже жмут на кнопочку и получают награду, только по ту сторону кнопочки сидит кто-то и контролирует эксперимент. Т.ч. продолжайте жать кнопочку, и тешить себя иллюзией, что все _У_ВАС_ под контролем! :-)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

28. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от XoRe (ok) on 06-Янв-10, 13:45 
>Че-то я не понял нафиг сдался чрут. Хаксоров нынче интересует спам и
>проксики. Ну и как от этого поможет чрут? Ну будут срать
>не из основной системы так из песочницы. Результат в общем то
>одинаковый. И в чем тогда профит?

Сейчас активизировались смс-вирусы.
Очень неприятные штуки попадаются, скажу я вам.
Особенно, когда вирус только вышел и антивирусы его ещё не ловят.
Приходится делать это ручками.
Естественно, это под windows.
Но все же.

Плюс руткиты.
Плюс вирусы, которые по кукисам браузера заходят на всякие социальные сети и спамят там.
Плюс тырилки паролей от сайтов.
Кстати, на некоторых сайтах поля для ввода номера кредитки - запоминаемые.
Так что данные кредитной карточки тоже можно заиметь)
Плюс всякие тырилки ключей от интернет кошельков.
Плюс логи асек/джабберов.
Вот для таких chroot - самое оно.
Защиты на уровне uid пользователя не хватает - все перечисленные данные лежат в папке юзера.

P.S.
Имхо, проксики - уже не так акутально.
Клиентские каналы растут, безлимиты множатся.
И от спама получше стали бороться.
Та же корбина по умолчанию блокирует исходящие от клиентов соединения на 25 порт.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

29. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от XoRe (ok) on 06-Янв-10, 13:57 
>>гораздо проще:
>
>До конца каникул вам задание:

По цене договоримся?)
Не студент уже, извините, за зачет не работаю.

Вообще я, конечно, делать этого не стану.
Но есть проекты, где эта идея пришлась бы очень кстати.
Мало того, могу сказать, что моя идея не нова.
Тот же антивирус касперского смотрит, куда обращается программа и на основании этого выдает результат "хорошая/плохая", "нормальная/подозрительная".
Естественно, там полно заранее созданных профилей для популярных программ.
Ну и что-то близкое чруту там реализовано.

Я думаю, что в *nix такие вещи делать проще.
И я думаю, что это по силу создателям бесплатных антивирусов.
А в gnome/kde можно будет нарисовать апплетик под эту функциональность)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

30. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Crazy Alex (??) on 06-Янв-10, 14:39 
Лишь бы ЭТО было отключаемым... При разумной работе с компьютером (не о домохозяйках речь, конечно) эти навороты не нужны практические никогда. Всего-то надо - не запускать неизвестный софт да вовремя обновляться, ну и бэкапы никто не отменял (сейчас они, кстати, чуть ли не сами возникают - то в удаленном репозитории GIT, то еще по сети куда-то данные закинешь...)
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

31. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Crazy Alex (??) on 06-Янв-10, 14:51 
Если ставим этот самый переключатель невесть откуда бинарем, либо с сайта никому не известного автора - ССЗБ. Если же из репозитория, либо софтина хорошо известна (и, соответственно, почти с гарантией ее код смотрели) - проблемы вряд ли будут.

Но в целом - согласен - либо удобная (и вообще годная к использованию) среда, либо автоматическая защита. Можно еще вистовский UAC припомнить...

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

32. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от JL2001 (ok) on 06-Янв-10, 15:26 
>Второй принципиально неустранимый путь вредить - это доступ к файлам юзера. Ты
>открываешь один файл(естественно, убрав защиту от записи), попутно открываются ещё два
>и что-то там портится. Запрашивать открытие КАЖДОГО файла - это прямой
>путь в дурдом. А разрешать всё автоматом - прямой путь к
>решету.

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

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

33. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Аноним (??) on 06-Янв-10, 16:44 
> По цене договоримся?)
> Не студент уже, извините, за зачет не работаю.

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

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

34. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Tav (ok) on 06-Янв-10, 16:57 
Я говорю о теории. На практике ошибки есть везде, особенно в закрытых непонятно-кем-написанных прошивках мобильников. С Java-апплетами тоже были неприятности, но сейчас дыры в реализации JavaScript браузеров как-то больше угрозы представляют.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

35. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от XoRe (ok) on 06-Янв-10, 21:52 
>> По цене договоримся?)
>> Не студент уже, извините, за зачет не работаю.
>
>Если за бесплатно не работаете, зачем указываете кому и что делать?
>Если то что вы перечислили вам нужно, флаг вам в руки. И
>плата в виде респектов гарантируется.

Прошу прощения, но я не указывал)
Я лишь описал свою идею.
Возможно, кому-то она покажется интересной и её реализуют.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

36. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от pavlinux email(ok) on 07-Янв-10, 01:14 
Где, про вирусы сказано???

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

37. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от pavlinux email(ok) on 07-Янв-10, 01:17 
>>> По цене договоримся?)
>>> Не студент уже, извините, за зачет не работаю.
>>
>>Если за бесплатно не работаете, зачем указываете кому и что делать?
>>Если то что вы перечислили вам нужно, флаг вам в руки. И
>>плата в виде респектов гарантируется.
>
>Прошу прощения, но я не указывал)
>Я лишь описал свою идею.
>Возможно, кому-то она покажется интересной и её реализуют.

А где идея?! По пунктам можно?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

38. "isolate - утилита для изолированного выполнения подозрительн..."  +/
Сообщение от pavlinux email(ok) on 07-Янв-10, 01:34 
Кто нить пытался запустить браузёр Chrome в chroot?!

1. Либо mount -o bind /tmp /chroot/chrome/tmp
либо отрубать -nolisten tcp у Хorg
2. Ему нужон /proc, так что без mount -o bind /proc /chroot/chrome/proc
не обойтись

3. Все chroot для Хрома составляет 413Mb, забавно, но это 4013 файлов !!!

4. Более того, я пытался запустить в /chroot не от рута, а от юзера, так и не вышло.

... Ща попробую эту тулузу

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

39. "isolate - утилита для изолированного выполнения подозрительн..."  +/
Сообщение от szh (ok) on 07-Янв-10, 01:58 
> 1. Либо mount -o bind /tmp /chroot/chrome/tmp
> либо отрубать -nolisten tcp у Хorg

для доступа к X серверу нужно только пару файлов расшарить, а не весь /tmp/
предполагаю /tmp/.X11-unix/ и .ICE-unix

> 4. Более того, я пытался запустить в /chroot не от рута, а от юзера, так и не вышло.

и кажется для авторизации к Xorg файл из /var/run/gdm/... нужен (MIT-MAGIC-COOKIE)

> 2. Ему нужон /proc, так что без mount -o bind /proc /chroot/chrome/proc
> не обойтись

открой для себя pid namespaces и lxc - http://lxc.sourceforge.net/lxc.html
полагаю хрому можно оставить только вид на его процессы.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

40. "isolate - утилита для изолированного выполнения подозрительн..."  +/
Сообщение от pavlinux email(ok) on 07-Янв-10, 02:16 
>> 1. Либо mount -o bind /tmp /chroot/chrome/tmp
>> либо отрубать -nolisten tcp у Хorg
>
>для доступа к X серверу нужно только пару файлов расшарить, а не
>весь /tmp/
>предполагаю /tmp/.X11-unix/ и .ICE-unix

Ну да, их
>
>> 4. Более того, я пытался запустить в /chroot не от рута, а от юзера, так и не вышло.
>
>и кажется для авторизации к Xorg файл из /var/run/gdm/... нужен (MIT-MAGIC-COOKIE)

.Xauthority

>
>> 2. Ему нужон /proc, так что без mount -o bind /proc /chroot/chrome/proc
>> не обойтись
>
>открой для себя pid namespaces и lxc - http://lxc.sourceforge.net/lxc.html
>полагаю хрому можно оставить только вид на его процессы.

30686 ?        Sl     0:00 /proc/self/exe --channel=30321.94042f70.1626825946 --type=extension --lang=ru --force-fieldtest=As
30694 ?        Sl     0:00 /proc/self/exe --channel=30321.94044ac0.590293936 --type=extension --lang=ru --force-fieldtest=Asy
30695 ?        Sl     0:00 /proc/self/exe --channel=30321.940466c0.777766351 --type=extension --lang=ru --force-fieldtest=Asy
30696 ?        Sl     0:00 /proc/self/exe --channel=30321

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

41. "isolate - утилита для изолированного выполнения подозрительн..."  +/
Сообщение от pavlinux email(ok) on 07-Янв-10, 03:05 
Не работает

/isolate /opt/google/chrome/google-chrome
Could not execute /opt/google/chrome/google-chrome: No such file or directory                
suse64:/media/disk/src/Secirity/isolate-read-only # ./isolate /opt/google/chrome/google-chrome
google-chrome          google-chrome.desktop                                                  
suse64:/media/disk/src/Secirity/isolate-read-only # ./isolate /opt/google/chrome/google-chrome
Could not execute /opt/google/chrome/google-chrome: No such file or directory                  
suse64:/media/disk/src/Secirity/isolate-read-only # ./isolate /opt/google/chrome/chrome
/usr/bin/xauth:  creating new authority file /root/992d59fe-Xauthority                
Could not execute /opt/google/chrome/chrome: No such file or directory                
suse64:/media/disk/src/Secirity/isolate-read-only # ./isolate firefoxc
terminate called after throwing an instance of 'std::runtime_error'  
  what():  File not found in $PATH                                    
suse64:/media/disk/src/Secirity/isolate-read-only # ./isolate firefox
Could not execute firefox: No such file or directory
suse64:/media/disk/src/Secirity/isolate-read-only # ^C
suse64:/media/disk/src/Secirity/isolate-read-only # exit
pavel@suse64:/usr/src/Secirity/isolate-read-only> ./isolate /usr/lib64/firefox/firefox
firefox     firefox.sh
pavel@suse64:/usr/src/Secirity/isolate-read-only> ./isolate /usr/lib64/firefox/firefox.sh
Could not execute /usr/lib64/firefox/firefox.sh: No such file or directory
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/usr': Отказано в доступе
/bin/rm: невозможно удалить каталог `/tmp/isolation/9c042f2a/tmp': Отказано в доступе
/bin/rm: невозможно удалить каталог `/tmp/isolation/9c042f2a/libexec': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/bash': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/libreadline.so.6': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/libncurses.so.5': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/libdl.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/libc.so.6': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/libresolv.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/libnss_files.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/libnss_dns.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/libnss_compat.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/lib64/ld-2.10.1.so': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/etc/nsswitch.conf': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/etc/resolv.conf': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/9c042f2a/bin/sh': Отказано в доступе
WARNING: Could not delete /tmp/isolation/9c042f2a
pavel@suse64:/usr/src/Secirity/isolate-read-only> sudo ./isolate /usr/lib64/firefox/firefox.sh
root's password:
Could not execute /usr/lib64/firefox/firefox.sh: No such file or directory
pavel@suse64:/usr/src/Secirity/isolate-read-only>  ./isolate ls
Could not execute ls: Permission denied
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/usr': Отказано в доступе
/bin/rm: невозможно удалить каталог `/tmp/isolation/e595e9c5/tmp': Отказано в доступе
/bin/rm: невозможно удалить каталог `/tmp/isolation/e595e9c5/libexec': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libselinux.so.1': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/librt.so.1': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libpthread.so.0': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libdl.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libcap.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/ld-linux-x86-64.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libc.so.6': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libattr.so.1': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libacl.so.1': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libresolv.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libnss_files.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libnss_dns.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/libnss_compat.so.2': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/lib64/ld-2.10.1.so': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/etc/nsswitch.conf': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/etc/resolv.conf': Отказано в доступе
/bin/rm: невозможно удалить `/tmp/isolation/e595e9c5/bin/ls': Отказано в доступе
WARNING: Could not delete /tmp/isolation/e595e9c5
pavel@suse64:/usr/src/Secirity/isolate-read-only> sudo ./isolate /usr/lib64/firefox/firefox.sh
Could not execute /usr/lib64/firefox/firefox.sh: No such file or directory
pavel@suse64:/usr/src/Secirity/isolate-read-only>

Более того, пути к библиотекам зашиты намертво  

===================================================================
--- isolate.cpp (revision 19)
+++ isolate.cpp (working copy)
@@ -547,9 +547,8 @@
       size_t n = 0;
       string_set *lbrrs = new string_set(), *pths = new string_set();

-      pths->insert("/lib");
-      pths->insert("/usr/lib");
-      pths->insert("/usr/local/lib");
+      pths->insert("/lib64");
+      pths->insert("/usr/lib64");

       while (n < shdr.sh_size && (data = elf_getdata(scn, data)) ) {
             char *bfr = static_cast<char *>(data->d_buf);
@@ -982,7 +981,7 @@
             string_set pths;
             pths.insert("/tmp");
             pths.insert("/bin");
-            pths.insert("/lib");
+            pths.insert("/lib64");
             pths.insert("/libexec");
             pths.insert("/etc");
             for (string_set::iterator i = pths.begin(); i != pths.end(); ++i) {
@@ -1147,7 +1146,7 @@

             /* We need to set this so that the loader can find libs in
              * /usr/local/lib. */
-            char * const nvrnmnt[] = { "LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib",
+            char * const nvrnmnt[] = { "LD_LIBRARY_PATH=/lib64:/lib:/usr/lib64:/usr/lib",
                                        "DISPLAY=:0.0",
                                        "HOME=/",
                                        "LOGNAME=isolator",


По коду, такое ощущение, что полный даун писал, ну или студент 2-ого курса, который на первом асилил Ц++

uname() и getenv(LD_LIBRARY_PATH), да вообще, весь getenv(), точно ниасили.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

42. "isolate - утилита для изолированного выполнения подозрительн..."  +/
Сообщение от szh (ok) on 07-Янв-10, 13:05 
> По коду, такое ощущение, что полный даун писал, ну или студент 2-ого курса, который на первом асилил Ц++
> uname() и getenv(LD_LIBRARY_PATH), да вообще, весь getenv(), точно ниасили.

Полагаю он принимает патчи.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

44. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от User294 (ok) on 07-Янв-10, 18:29 
>Самое страшное - это руткит. Потому что ты о нем не знаешь,
>а он есть. А спаммера в песочнице прибить не трудно.

Вообще мне нравится по возможности игра на опережение. Режем все к такой-то фене на контейнеры, по одному на сервис. Ставим на хосте невидимый (из контейнеров) монитор изменений (и прочие причандалы по вкусу). Меняем системные утили в контейнерах на капканы сообщающие хосту что нас поимели. Бурчим под нос "welcome" и ждем хаксоров с их руткитами и чем там еще :). Которые при заходе на такое окружение с двойным дном незамедлительно вкусят все прелести своего же подхода на своей же шкуре. А даже если вдруг рута поимеют - да и хрен с ним. Слепить автоматом снапшотик на изучение да заглушить да и все дела, не долго радоваться будут. А потом поняв как пролезли - откатить на заведомо исправный снапшот и зафиксить дырку. Вот это да, современный подход к борьбе с хаксорами - клин клином вышибают :). Это правда для серверов актуально. А десктоп я просто предпочту на всякий пожарный с доверяемого LiveCD бутануть при изучении что за нафиг. Мало ли какое там у кого дерьмо в системе водится. Зная о том что руткиты - бывают, можно и заранее перестраховаться от них :)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

45. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от JL2001 (ok) on 07-Янв-10, 19:52 
я и на десктопе от такого бы не отказался, это уже больше похоже на действительно надёжный линукс
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

46. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от Аноним (??) on 09-Янв-10, 15:06 
>Если ставим этот самый переключатель невесть откуда бинарем, либо с сайта никому
>не известного автора - ССЗБ. Если же из репозитория, либо софтина
>хорошо известна (и, соответственно, почти с гарантией ее код смотрели) -
>проблемы вряд ли будут.
>
>Но в целом - согласен - либо удобная (и вообще годная к
>использованию) среда, либо автоматическая защита. Можно еще вистовский UAC припомнить...

UAC не работает... Он только пользователей напрягает и они думают что в безопасности. А на самом деле вирусам то пофиг))
8 из 10 вирусов UAC всё же пропускает... См. http://www.sophos.com/blogs/chetw/g/2009/11/03/windows-7-vul.../

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

48. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от XoRe (ok) on 09-Янв-10, 20:08 
>[оверквотинг удален]
>>>
>>>Если за бесплатно не работаете, зачем указываете кому и что делать?
>>>Если то что вы перечислили вам нужно, флаг вам в руки. И
>>>плата в виде респектов гарантируется.
>>
>>Прошу прощения, но я не указывал)
>>Я лишь описал свою идею.
>>Возможно, кому-то она покажется интересной и её реализуют.
>
>А где идея?! По пунктам можно?

Идей несколько.
1. Опция "установить в чруте".
Будет актуально, когда в linux хлынет куча софта, который будет ставится не из рпозиториев.
Ну и с играми так же.
Плюс, это может быть полезно для того, чтобы узнать, какие файлы и куда устанавливаются.
Причем, узнать это ДО реальной установки.

2. Пункт в меню "проанализировать программу".
Запускается в чруте, собирается инфа о том, какие функции она пытается выполнить.
Формируется отчет и отправляется кому следует.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

49. "isolat - утилита для изолированного выполнения подозрительны..."  +/
Сообщение от pavlinux email(ok) on 09-Янв-10, 21:26 
>>А где идея?! По пунктам можно?
>
>Идей несколько.
>1. Опция "установить в чруте".
>Будет актуально, когда в linux хлынет куча софта, который будет ставится не
>из репозиториев. >Ну и с играми так же. >Плюс, это может быть полезно для того,
> чтобы узнать, какие файлы и куда устанавливаются.
> Причем, узнать это ДО реальной установки.

/etc/skel - давно есть
useradd/groupadd - тоже
shmfs/tmpfs - уж лет как 10
mount --bind - недавно, но есть.
bourne AGAIN shell  - молчу.

складываем ... получаем
ID=$RANDOM

mkdir -p -m 0700 /trash/$ID/
groupadd  -g $ID
useradd -d /trash/$ID/ -g $ID -u $ID
mount -t shmfs none /trash/$ID/ -o size 2Gb,mode=0700,gid=$ID,uid=$ID
mkdir -p -m 0700 /trash/$ID/bin
chown -R $ID:$ID /trash/$ID

sudo -u $ID /tmp/instal.exe  :)


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

ldd /opt/google/chrome/chrome
readelf -a /opt/google/chrome/chrome
objdump -D /opt/google/chrome/chrome
objdump -d /opt/google/chrome/chrome | awk '{print $4" "$5" "$6 " "$7}' | tr " " "\n" | grep -v [:alfa:] | sort -u
strings /opt/google/chrome/chrome

......

У меня есть модулёк, который заменяет всё syscall на их же, но перед этим делает
sprintf(LOG_FILE, %d:%d:%d:%s:%d:%s\n", time, uid, gid, path, syscall_NR, syscall_NAME);

Дело в том,
1. Что это подобные проги, типа запуска из chroot, нужны для чайников.
2. Если это чайнег, собранная инфа ему вообще ни о чём не расскажет.
3. Если из chroot запускает не чайник, значит он боится не программу,
а результатов дальнейшей работы с ней юзеров, веба, других приложений.
4. Вариантов уязвимостей бесконечно много, 99.999% из них ещё не открыты.
5. Следовательно предсказание о текущей безобидности программы не означает
её безвредность в будущем. vmsplice - никто не ждал :)
6. Для UNIX подобных осей, а они вся сейчас такие, только морды разные, вполне
хватает знания о том что программа хочет UID = 0; И этого достаточно.
7. Если этого недостаточно, то это уже проблемы OS, а не юзера или приложения.


  Появление подобных программ, типа rkhunter, snort, Apparrmor, и т.п. ведёт к тупости админов, не понимания системы. Если человек не осознал и не изучил методы атак
на компьютеры, методы предохранения, (к проституткам тоже без презервативов ходите?),
способы защиты данных и сети. Так нах..я нам такие юзеры. Если у тебя украли счёт кредитной карты  и сняли всё бабло - САМ ВИНОВАТ.
  Да, это намного сложнее, чем купить сейф и положить туда все бумаги и номера счетов,
это труднее чем дойти до банка, и вручную перевести денег или оплатить счёта.
Но не труднее, чем прочитать "Основы компьютерной безопасности", "ОС Для чайников" и подобные, Воину и Мир в школе заставляли читать?! Ждёте указа ГосДумы о обязательной сертификации и получение прав на использование Компьютерной техники?!


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору


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

Индекс форумов | Темы | Пред. тема | След. тема




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

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