1.1, Аноним (-), 23:59, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Даешь виртуальную ОС для каждого приложения!!!
Сильно подозреваю, что вирусы начнут использовать дырки в chroot-окружении. Так что витки вооружений будут бесконечны.
| |
|
2.2, anonymous (??), 00:15, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
Возможно, но маловероятно, цель вируса запуститься на максимальном числе машин при приемлемой сложности вируса, а не на вообще всех. Да и не надо виртуальной ОС для каждого приложения(всё равно это бесполезно, процессам надо взаимодействовать => будут дырки), зато для случая когда нельзя, но очень хочется такая утилитка будет замечательна.
| |
|
3.22, уауауауауа (?), 11:34, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
Взаимодействие процессов на уровне архитектуры должно быть максимально на высоком уровне с минимальным количеством функций.
| |
|
|
1.5, XoRe (ok), 01:12, 06/01/2010 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
"Откройте для себя chroot".
Имхо, DOS/Windows негативно отражается на нашем мышлении.
Такие вещи, как chroot, scp(sftp), клиент-серверная модель иксов, программа strings, и т.д. существуют в *nix уже очень долго.
Но пользователи все открывают и открывают для себя эти вещи (а так же то, что можно с ними делать).
chroot с обвязками (со скриптами, которые сами формируют окружение и т.д.) очень мощная штука.
В том числе - и на десктопе.
Добавить к этому какую-нибудь отслеживалку действий программы, и бороться с вирусами становится гораздо проще:
1. Подозрительная программа запускается в chroot.
2. Отслеживаются и записываются все её вызовы и обращения к файлам.
3. Формируется отчет, который отсылается куда следует.
Это действие можно автоматизировать до того, что пользователь нажимает правой кнопкой мышки на программе и выбирает "проверить на вирусную активность".
| |
|
2.6, JL2001 (ok), 01:24, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>Это действие можно автоматизировать до того, что пользователь нажимает правой кнопкой мышки
>на программе и выбирает "проверить на вирусную активность".
и что, кто то автоматизировал уже? или все ждут первой звезды в виде 90% десктопов?
зы: массовость на десктопах принесёт виръё качаемое и запускаемое, надо заранее готовить всякие авто-chroot для всего не с репозиториев например
| |
2.9, аноним (?), 03:18, 06/01/2010 [^] [^^] [^^^] [ответить]
| +3 +/– |
>гораздо проще:
До конца каникул вам задание:
1) Запустите любую более-менее сложную програму под ktrace, посмотрите какой лог там получится и попробуйте его проанализировать и куда-нибудь отправить.
2) Попробуйте дать точное определение "вирусной активности", составьте полную таблицу всех возможных действий программы, рассортированых на две группы - вирусные/не вирусные (подсказка: это как минимум все сисколлы со всеми комбинациями параметров умножить на все возможные состояния системы). Будет ли эта таблица одинаковой для всех приложений?
3) Подумайте, как вы будете автоматически тестировать все пути выполнения программы. Также подумайте, как вы будете тестировать код, которого вообще нет (но должен быть, чтобы программа не превратилась во вредоносную).
| |
|
3.29, XoRe (ok), 13:57, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>>гораздо проще:
>
>До конца каникул вам задание:
По цене договоримся?)
Не студент уже, извините, за зачет не работаю.
Вообще я, конечно, делать этого не стану.
Но есть проекты, где эта идея пришлась бы очень кстати.
Мало того, могу сказать, что моя идея не нова.
Тот же антивирус касперского смотрит, куда обращается программа и на основании этого выдает результат "хорошая/плохая", "нормальная/подозрительная".
Естественно, там полно заранее созданных профилей для популярных программ.
Ну и что-то близкое чруту там реализовано.
Я думаю, что в *nix такие вещи делать проще.
И я думаю, что это по силу создателям бесплатных антивирусов.
А в gnome/kde можно будет нарисовать апплетик под эту функциональность)
| |
|
4.33, Аноним (-), 16:44, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
> По цене договоримся?)
> Не студент уже, извините, за зачет не работаю.
Если за бесплатно не работаете, зачем указываете кому и что делать?
Если то что вы перечислили вам нужно, флаг вам в руки. И плата в виде респектов гарантируется.
| |
|
5.35, XoRe (ok), 21:52, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> По цене договоримся?)
>> Не студент уже, извините, за зачет не работаю.
>
>Если за бесплатно не работаете, зачем указываете кому и что делать?
>Если то что вы перечислили вам нужно, флаг вам в руки. И
>плата в виде респектов гарантируется.
Прошу прощения, но я не указывал)
Я лишь описал свою идею.
Возможно, кому-то она покажется интересной и её реализуют.
| |
|
6.37, pavlinux (ok), 01:17, 07/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>>> По цене договоримся?)
>>> Не студент уже, извините, за зачет не работаю.
>>
>>Если за бесплатно не работаете, зачем указываете кому и что делать?
>>Если то что вы перечислили вам нужно, флаг вам в руки. И
>>плата в виде респектов гарантируется.
>
>Прошу прощения, но я не указывал)
>Я лишь описал свою идею.
>Возможно, кому-то она покажется интересной и её реализуют.
А где идея?! По пунктам можно?
| |
|
7.48, XoRe (ok), 20:08, 09/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
>>>
>>>Если за бесплатно не работаете, зачем указываете кому и что делать?
>>>Если то что вы перечислили вам нужно, флаг вам в руки. И
>>>плата в виде респектов гарантируется.
>>
>>Прошу прощения, но я не указывал)
>>Я лишь описал свою идею.
>>Возможно, кому-то она покажется интересной и её реализуют.
>
>А где идея?! По пунктам можно?
Идей несколько.
1. Опция "установить в чруте".
Будет актуально, когда в linux хлынет куча софта, который будет ставится не из рпозиториев.
Ну и с играми так же.
Плюс, это может быть полезно для того, чтобы узнать, какие файлы и куда устанавливаются.
Причем, узнать это ДО реальной установки.
2. Пункт в меню "проанализировать программу".
Запускается в чруте, собирается инфа о том, какие функции она пытается выполнить.
Формируется отчет и отправляется кому следует.
| |
|
8.49, pavlinux (ok), 21:26, 09/01/2010 [^] [^^] [^^^] [ответить] | +/– | etc skel - давно есть useradd groupadd - тоже shmfs tmpfs - уж лет как 10 moun... большой текст свёрнут, показать | |
|
|
|
|
|
|
2.10, Gambler (ok), 04:18, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
По-хорошему, автоматизировать это надо до такого уровня, что по умолчанию все программы запускаются в chroot с минимумом привелегий. Тогда и анализировать ничего не надо. В полной изоляции вирусы нормальной системе просто не страшны. Если вирус не может изменять системные файлы, не может читать пользовательские, не может открывать сокеты или писать в память чужих процессов, то он не опасен. Только для такого надо будет основательно перестроить OC, да и сами приложения.
| |
|
3.11, upyx (ok), 06:00, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
Читайте выше:
"Да и не надо виртуальной ОС для каждого приложения(всё равно это бесполезно, процессам надо взаимодействовать => будут дырки)".
Если программа не сможет читать пользовательские файлы, какой вообще от нее прок?
В целом, идея изолирования данных которые не должны пересекаться правильная и очень не новая. Уверен, что многие применяют этот подход на практике, например, я, для работы с ценными данными, создал отдельный раздел, который примонтируется при необходимости, и отдельного пользователя, под которым эти данные доступны.
Вот только задача следить за тем какие данные должны взаимодействовать, а какие нет - задача пользователя. А что мы знаем о пользователях? :) Правильно, если пользователю оно надо и руки из правильного места, он найдет как это сделать сам, в противном случае - все ухищрения разработчиков бес-по-ле-зны. Так вот задача в том, чтобы дать возможность первым (заинтересованным пользователям) решить эту задачи без допгемора. Представленная утилита как раз шаг в этом направлении. А бороться со вторыми неэффективно из-за многократного превосходства сил.
| |
|
4.18, Gambler (ok), 09:22, 06/01/2010 [^] [^^] [^^^] [ответить] | +1 +/– | Ничего не бесполезно Процессы могут взаимодействовать через четко определенные ... большой текст свёрнут, показать | |
4.25, Вредонос (?), 12:01, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>В целом, идея изолирования данных которые не должны пересекаться правильная
Ничего не правильная. У вас для текстовых файлов только vi используется? :) Возьмите тот же латех - его исходники трогают как минимум три процесса! Что, для каждого делать разрешение? А для других исходников опять отвечать на вопросы? А как быть с промежуточными файлами компилляции?
Вирусы были, есть и будут есть, тут спасение только в бэкапах и внешних, незаражённых системах.
| |
|
3.30, Crazy Alex (??), 14:39, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
Лишь бы ЭТО было отключаемым... При разумной работе с компьютером (не о домохозяйках речь, конечно) эти навороты не нужны практические никогда. Всего-то надо - не запускать неизвестный софт да вовремя обновляться, ну и бэкапы никто не отменял (сейчас они, кстати, чуть ли не сами возникают - то в удаленном репозитории GIT, то еще по сети куда-то данные закинешь...)
| |
|
|
1.12, Tav (ok), 07:36, 06/01/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
По-хорошему, любая программа в системе должна иметь доступ только к тем ресурсам, которые ей необходимы. Например, к своему каталогу конфигурации и только тем файлам пользователя, которые пользователь явно указал через диалог открыть/сохранить. Нормально все это можно было бы обеспечить в ОС с приложениями в управляемом коде, вроде Inferno, JNode или Singularity.
| |
|
2.16, User294 (ok), 08:04, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
> с приложениями в управляемом коде
Даже трояны на яве с мобилок невзирая на воистину фашистские ограничения (каждый пук надо подтверждать) и то умудряются спамить и производить прочую левую активность, а вы говорите. Надежный способ только один - "в случае аварии выдерни шнур, выдави стекло" :P.
| |
|
3.34, Tav (ok), 16:57, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
Я говорю о теории. На практике ошибки есть везде, особенно в закрытых непонятно-кем-написанных прошивках мобильников. С Java-апплетами тоже были неприятности, но сейчас дыры в реализации JavaScript браузеров как-то больше угрозы представляют.
| |
|
|
1.13, Аноним (-), 07:38, 06/01/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
А разве многопользовательские ОС, работающие с защищённым режимом процессора, не изолируют память одного процесса от покушений другого?
| |
1.15, User294 (ok), 08:01, 06/01/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Че-то я не понял нафиг сдался чрут. Хаксоров нынче интересует спам и проксики. Ну и как от этого поможет чрут? Ну будут срать не из основной системы так из песочницы. Результат в общем то одинаковый. И в чем тогда профит?
| |
|
2.20, Damon (??), 11:22, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>Ну будут срать не из основной системы так из песочницы. Результат в общем то одинаковый.
Не совсем. Это на сервере процесс выполняется неопределенно долго, а юзверы порой (обычно ночной) выключают ДЕСКТОП. А после включения, опять получай доступ... Несколько гиморно. А если брать вариант с пресловутым mp3, то после краха плюера, некоторая часть пользователей (а большая часть после нескольких попыток запустить) плюнет на этот файл. Т.ч. применительно к ситуации с mp3, "срать" из песочницы не получится. ИМХО, не панацея, но идея интересная, в принципе.
Все вышеописанное, ессно, относится к случаю, когда дальше песочницы проблемы не уплывут...
| |
2.23, уауауауауа (?), 11:41, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>Че-то я не понял нафиг сдался чрут. Хаксоров нынче интересует спам и
>проксики. Ну и как от этого поможет чрут? Ну будут срать
>не из основной системы так из песочницы. Результат в общем то
>одинаковый. И в чем тогда профит?
Самое страшное - это руткит. Потому что ты о нем не знаешь, а он есть. А спаммера в песочнице прибить не трудно.
| |
|
3.44, User294 (ok), 18:29, 07/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>Самое страшное - это руткит. Потому что ты о нем не знаешь,
>а он есть. А спаммера в песочнице прибить не трудно.
Вообще мне нравится по возможности игра на опережение. Режем все к такой-то фене на контейнеры, по одному на сервис. Ставим на хосте невидимый (из контейнеров) монитор изменений (и прочие причандалы по вкусу). Меняем системные утили в контейнерах на капканы сообщающие хосту что нас поимели. Бурчим под нос "welcome" и ждем хаксоров с их руткитами и чем там еще :). Которые при заходе на такое окружение с двойным дном незамедлительно вкусят все прелести своего же подхода на своей же шкуре. А даже если вдруг рута поимеют - да и хрен с ним. Слепить автоматом снапшотик на изучение да заглушить да и все дела, не долго радоваться будут. А потом поняв как пролезли - откатить на заведомо исправный снапшот и зафиксить дырку. Вот это да, современный подход к борьбе с хаксорами - клин клином вышибают :). Это правда для серверов актуально. А десктоп я просто предпочту на всякий пожарный с доверяемого LiveCD бутануть при изучении что за нафиг. Мало ли какое там у кого дерьмо в системе водится. Зная о том что руткиты - бывают, можно и заранее перестраховаться от них :)
| |
|
4.45, JL2001 (ok), 19:52, 07/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
я и на десктопе от такого бы не отказался, это уже больше похоже на действительно надёжный линукс
| |
|
|
2.28, XoRe (ok), 13:45, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>Че-то я не понял нафиг сдался чрут. Хаксоров нынче интересует спам и
>проксики. Ну и как от этого поможет чрут? Ну будут срать
>не из основной системы так из песочницы. Результат в общем то
>одинаковый. И в чем тогда профит?
Сейчас активизировались смс-вирусы.
Очень неприятные штуки попадаются, скажу я вам.
Особенно, когда вирус только вышел и антивирусы его ещё не ловят.
Приходится делать это ручками.
Естественно, это под windows.
Но все же.
Плюс руткиты.
Плюс вирусы, которые по кукисам браузера заходят на всякие социальные сети и спамят там.
Плюс тырилки паролей от сайтов.
Кстати, на некоторых сайтах поля для ввода номера кредитки - запоминаемые.
Так что данные кредитной карточки тоже можно заиметь)
Плюс всякие тырилки ключей от интернет кошельков.
Плюс логи асек/джабберов.
Вот для таких chroot - самое оно.
Защиты на уровне uid пользователя не хватает - все перечисленные данные лежат в папке юзера.
P.S.
Имхо, проксики - уже не так акутально.
Клиентские каналы растут, безлимиты множатся.
И от спама получше стали бороться.
Та же корбина по умолчанию блокирует исходящие от клиентов соединения на 25 порт.
| |
|
1.17, Аноним (-), 08:09, 06/01/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
а есть еще вариант с ptrace исполняемого приложения и фильтрацией всех неугодных сисколлов.
| |
|
2.21, Damon (??), 11:33, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>а есть еще вариант с ptrace исполняемого приложения и фильтрацией всех неугодных
>сисколлов.
На 100% не уверен, но разве SELinux и иже с ним не так работают?
| |
|
1.24, Вредонос (?), 11:52, 06/01/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
По-моему, борьба с вирусами бессмысленна, как борьба со спамом в почте. Контрпример:
Есть суперзащищённый SESESELinux (даже и не линукс, а вообще любая ось). Мы ставим, например, "автоматический переключатель раскладки". Понятно, что это как минимум - вторжение на уровне системы, запретить которое мы не можем - нужен доступ к клавиатурным сообщениям любого приложения. А теперь берём браузер, заходим на страницу электронных платежей и вуаля! Наши пароли поплыли (в скрытом виде) через переключатель в какие-нть логи. Далее, приблуда просит автообновиться со своего сайта - понятно, что 99% юзеров захотят именно это - одной кнопкой решить проблему. Всё, пароли на свободе.
Второй принципиально неустранимый путь вредить - это доступ к файлам юзера. Ты открываешь один файл(естественно, убрав защиту от записи), попутно открываются ещё два и что-то там портится. Запрашивать открытие КАЖДОГО файла - это прямой путь в дурдом. А разрешать всё автоматом - прямой путь к решету.
| |
|
2.26, hate (?), 12:11, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>По-моему, борьба с вирусами бессмысленна, как борьба со спамом в почте.
Совершенно безграмотное утверждение. Откуда у тебя такие "гениальные" мысли? Из опыта?
Так после таких заявлений даже школьники на форуме скажут что ты "круто прогнал".
| |
|
3.27, Damon (??), 12:40, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Совершенно безграмотное утверждение. Откуда у тебя такие "гениальные" мысли? Из
>опыта?
>Так после таких заявлений даже школьники на форуме скажут что ты "круто
>прогнал".
Если выдрать фразу из контекста, то да, безграмотно, но в общем контексте мысль звучит правильно. Слишком силен мотив "... а вот у нас в ... все делается одной кнопкой! Зачем мне что-то учить, если я ВСЕ могу сделать одной кнопкой!". Вот и расплачиваются юзверы за неграмотность, переодической переустановкой оси, потерей данных и т.д. Обезъянки в экспериментах психологов тоже жмут на кнопочку и получают награду, только по ту сторону кнопочки сидит кто-то и контролирует эксперимент. Т.ч. продолжайте жать кнопочку, и тешить себя иллюзией, что все _У_ВАС_ под контролем! :-)
| |
|
2.31, Crazy Alex (??), 14:51, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
Если ставим этот самый переключатель невесть откуда бинарем, либо с сайта никому не известного автора - ССЗБ. Если же из репозитория, либо софтина хорошо известна (и, соответственно, почти с гарантией ее код смотрели) - проблемы вряд ли будут.
Но в целом - согласен - либо удобная (и вообще годная к использованию) среда, либо автоматическая защита. Можно еще вистовский UAC припомнить...
| |
|
3.46, Аноним (-), 15:06, 09/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>Если ставим этот самый переключатель невесть откуда бинарем, либо с сайта никому
>не известного автора - ССЗБ. Если же из репозитория, либо софтина
>хорошо известна (и, соответственно, почти с гарантией ее код смотрели) -
>проблемы вряд ли будут.
>
>Но в целом - согласен - либо удобная (и вообще годная к
>использованию) среда, либо автоматическая защита. Можно еще вистовский UAC припомнить...
UAC не работает... Он только пользователей напрягает и они думают что в безопасности. А на самом деле вирусам то пофиг))
8 из 10 вирусов UAC всё же пропускает... См. http://www.sophos.com/blogs/chetw/g/2009/11/03/windows-7-vulnerable-8-10-viru
| |
|
2.32, JL2001 (ok), 15:26, 06/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>Второй принципиально неустранимый путь вредить - это доступ к файлам юзера. Ты
>открываешь один файл(естественно, убрав защиту от записи), попутно открываются ещё два
>и что-то там портится. Запрашивать открытие КАЖДОГО файла - это прямой
>путь в дурдом. А разрешать всё автоматом - прямой путь к
>решету.
программы которым надо "всё разрешать" чтоб они работали надо ставить с офф репозиториев системы или с офф репа программы при наличии у неё известности и открытых исходников (в этом случае в идеале ещё и собирать с исходников самому ;) )
а если ставить непойми что непойми откуда и разрешать прямой доступ к диску и в инет да ещё и пароль рута вводить в непонятное окошечко - это как жрать землю со скотобойни и жаловаться на болящий живот
| |
|
1.38, pavlinux (ok), 01:34, 07/01/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Кто нить пытался запустить браузёр 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 не от рута, а от юзера, так и не вышло.
... Ща попробую эту тулузу
| |
|
2.39, szh (ok), 01:58, 07/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
> 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
полагаю хрому можно оставить только вид на его процессы.
| |
|
3.40, pavlinux (ok), 02:16, 07/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> 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
| |
|
|
|
2.42, szh (ok), 13:05, 07/01/2010 [^] [^^] [^^^] [ответить]
| +/– |
> По коду, такое ощущение, что полный даун писал, ну или студент 2-ого курса, который на первом асилил Ц++
> uname() и getenv(LD_LIBRARY_PATH), да вообще, весь getenv(), точно ниасили.
Полагаю он принимает патчи.
| |
|
|