LINUX.ORG.RU
 

Безопасность в линукс, и сопоставление с windows (в определенных условиях).


0

4

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

Скажем у нас есть две системы. -Первая windows + антивирус + фаервол. Антивирус не важно, а фаервол я для примера приведу оутпост, в нем есть возможность настроить доступ к сети от каждого приложения (действуя по системе - каким приложениям не разрешено, тем запрещено). -Вторая система это linux, где пользователь сидит не под рутом и у него открыт 80 порт, и как уверяют сотни пользователь, наличие антивируса не обязательно.

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

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

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

Пускай в windows есть недостатки в этой системе, но такой подход хоть может гарантировать минимально какие то препятствия, а в случае линукс, если заражение произошло (по сути не важно как) то оно 100% эффективно (в плане того что может собрать данные пользователя и выслать их).

PS я знаю что весомый аргумент linux в том что он при таком заражение не повредит систему в целом, но я тут не даром заостряю внимание на личных данных пользователя, которые по условию важней, чем re-install системы. Я так же понимаю что по-моему мнению выигрыш в windows достигается сторонними программами, поэтому не упрекая linux хочу узнать можно ли так же минимизировать заражение в похожей ситуации (по сути возможно это контраргументом что linux нужные дополнительные меры защиты, антивирус или еще что-то)?

PSS Здешним любителям упрекать мол "он тролль", "очередной холливар", хочу сказать что объем текста который я привожу, как не как свидетельствует о моем действительном интересе к теме, настоящие тролли ленивы чтобы столько писать =)


[#]  

Какая-то польская тётка сделала систему безопасности, где каждое приложение работало в своей xen-машине. Винду такое и не снилось.

anonymous ()
[#]  

В той же бубунте для файрфокса (как я понимаю, дочерние процессы тоже затрагиваются) есть профиль AppArmor, который просто не позволяет браузеру шариться по просторам ФС. Правда, отключенный по-умолчанию, по тем же причинам, по которым большинство отключает UAC или вообще сидит под рутом администратором.

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

* ()
[#] Ответ на: комментарий от anonymous 27.01.2012 16:13:36  
>>-----Цитата---->>

Какая-то польская тётка сделала систему безопасности

<<-----Цитата----<<

Не какая-то, а Джоана «Сама» Рутковская. И не каждое приложение, а в зависимости от важности плюс сетевая подсистема в отдельной VM.

Называется CubesOS.

**** ()
[#]  
ms-dos32

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

Кроме того, ты в любой момент можешь посмотреть командой netstat все входящие/исходящие подключения с твоего компа, а фаерволов и так завались, взять хоть тот же squid или iptables. А слабая вероятность поражения обуславливается распределением прав пользователей, так что глобально этот вирус в автозагрузку не пропишется (если он все-таки запускается - надо искать в .bashrc или .xsession;

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

()
[#]  

Можно работать под одним пользователем, а браузер запускать (с помощью su или sudo) от имени другого пользователя. В этом случае, для приведенного вами сценария, будут украдены только данные того пользователя, от чьего имени был запущен браузер.

anonymous ()
[#] Ответ на: комментарий от ms-dos32 27.01.2012 16:44:59  
>>-----Цитата---->>

В Linux для запуска приложения незаметно от пользователя необходимо иметь root-права

<<-----Цитата----<<

Чтобы снести папку с любимой порнушкой права рута не требуются.

anonymous ()
[#] Ответ на: комментарий от anonymous 27.01.2012 16:54:20  
ms-dos32

Не читай@сразу отвечай.

>>-----Цитата---->>

троян украдет личные данные из домашней папки пользователя

<<-----Цитата----<<

И удалить может в том числе.

()
[#]  

> скажем в плагине флеш
ССЗБ.

Для параноиков: selinux/apparmor, отдельный пользователь для браузера, браузер в chroot'е итп.

* ()
[#] Ответ на: комментарий от ms-dos32 27.01.2012 16:44:59  
>>-----Цитата---->>

максимум, что произойдет - троян украдет личные данные из домашней папки пользователя.

<<-----Цитата----<<

Ну специально подчеркнул и привел пример о важности личных данных.
Это критический момент в данном случае.

>>-----Цитата---->>

Кроме того, ты в любой момент можешь посмотреть командой netstat все входящие/исходящие подключения с твоего компа

<<-----Цитата----<<

Ну он послал и завершил соединение, или ты предлагаешь всегда бдить netstat? Проблема заражения как раз в том, что момент сие чуда не известен для пользователя, если был бы известен всегда, то я бы нажал ресет))

>>-----Цитата---->>

Можно работать под одним пользователем, а браузер запускать (с помощью su или sudo) от имени другого пользователя. В этом случае, для приведенного вами сценария, будут украдены только данные того пользователя, от чьего имени был запущен браузер.

<<-----Цитата----<<

Да как раз думал об этом как решение безмятежного серфинга. Спасибо.

Буду копать еще копать SElinux, спасибо анонимус.

>>-----Цитата---->>

В линуксе есть apparmor, selinux и tomoyo.

<<-----Цитата----<<

Если есть что еще, пишите, вся инфа будет полезна.

()
[#] Ответ на: комментарий от list2009 27.01.2012 17:28:37  
RedPossum
>>-----Цитата---->>

Ну специально подчеркнул и привел пример о важности личных данных.

<<-----Цитата----<<

критически важные личные данные критически важно охранять, а не раскидывать в нешифрованном виде по хомякам.

*** ()
[#] Ответ на: комментарий от list2009 27.01.2012 17:28:37  
ms-dos32

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

Также: http://www.cyberciti.biz/tips/linux-investigate-sockets-network-connections.html...

()
[#]  

Удивительно, но в теме нет ни одного даже близкого к здравому ответа - Selinux apparmor iptables - всё это чушь собачья, если в браузере/флеше дыра.

Защиты в Линуксе от drive-by атак на сегодня нет вообще - единственный разумный способ - запускать браузер из другого пользователя и надеятся, что в ядре нет дыр (как недавней local root exploit - от которого, опять же, SeLinux AppArmor и прочая хрень не спасает).

Или, как вариант, запускать браузер в виртуальной машине.

Автор поднял интересную тему, но фанатики Линукса считают, что вирусов в нём быть не может, посему воинственно несут бред.

* ()
[#] Ответ на: комментарий от ms-dos32 27.01.2012 16:44:59  
>>-----Цитата---->>

В Linux для запуска приложения незаметно от пользователя необходимо иметь root-права

<<-----Цитата----<<

4.2

>>-----Цитата---->>

Если он все-таки эти права даст, то максимум, что произойдет - троян украдет личные данные из домашней папки пользователя.

<<-----Цитата----<<

а большего и не надо
кто будет твои бинарники из /usr/bin воровать?:)

>>-----Цитата---->>

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

<<-----Цитата----<<

речь в первом посте была про эксплойт к какому то плагину браузера, как пример

* ()
[#] Ответ на: комментарий от unanimous 27.01.2012 16:23:27  
>>-----Цитата---->>

AppArmor, который просто не позволяет браузеру шариться по просторам ФС.

<<-----Цитата----<<

грабилке паролей браузера прав хватит даже с включенным apparmor/etc

* ()
[#] Ответ на: комментарий от xtraeft 27.01.2012 18:06:24  
>>-----Цитата---->>

грабилке паролей браузера прав хватит даже с включенным apparmor/etc

<<-----Цитата----<<

И какой же инструмент в винде тебя от такого защитит? Кстати, в том же линуксе файрфокс держит пароли в keyring. Думаю, что так просто оттуда сторонний процесс не прочитает, хотя, конечно, если троян встраивается как какой-нибудь линкуемый модуль, то не спасет.

* ()
[#] Ответ на: комментарий от unanimous 27.01.2012 18:10:34  
>>-----Цитата---->>

И какой же инструмент в винде тебя от такого защитит?

<<-----Цитата----<<

никакой, как и в линуксе

>>-----Цитата---->>

Кстати, в том же линуксе файрфокс держит пароли в keyring.

<<-----Цитата----<<

если фф оттуда может читать, то и граббер сможет

* ()
[#] Ответ на: комментарий от xtraeft 27.01.2012 18:16:01  
>>-----Цитата---->>

если фф оттуда может читать, то и граббер сможет

<<-----Цитата----<<

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

* ()
[#]  
segfault
>>-----Цитата---->>

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

<<-----Цитата----<<

Прошу прощения, но:
1) Кому нужен флеш-плагин с заблокированным 80-м портом назначения?
2) Блокировать какое-либо соединение по номеру удаленного порта - сущий бред
3) Флеш-код, жабаскрипт и т.п. исполняются в песочнице, из которой сильно не напакостишь.
4) Конечно, есть эксплойты на эти песочницы, но есть и подобные, чтобы повысить права приложения до root/SYSTEM, и обойти любые ограничения. Так что об этом пока не будем...

Вывод: подобная защита рядовому пользователю не нужна. Для остальных есть SELinux, AppArmor и т.п.

* ()
[#] Ответ на: комментарий от segfault 27.01.2012 22:23:38  
zolden
>>-----Цитата---->>

Вывод: подобная защита рядовому пользователю не нужна

<<-----Цитата----<<

Куда катится ЛОР - аргументы "не нужен" не вошли даже во вторую десятку

** ()
[#] Ответ на: комментарий от juk4windows 27.01.2012 17:57:11  
ckotinko

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

* ()
[#]  

браузер запускаешь от одного пользователя, а данные хранишь под другим, и обязательно выставляешь на секретные файлики права 0600 (запрет на чтение группе и остальным)

* ()
[#] Ответ на: комментарий от juk4windows 27.01.2012 17:57:11  
>>-----Цитата---->>

как недавней local root exploit - от которого, опять же, SeLinux AppArmor и прочая хрень не спасает

<<-----Цитата----<<

теоретически, что мешает при помощи SELinux запретить доступ к /proc/$pid/mem ? И тогда эксплойты идут лесом при дырявом ядре

* ()
[#] Ответ на: комментарий от Harald 27.01.2012 23:01:53  

Ещё раз для особо одарённых

невозможно никакими политиками предположить векторы атаки на Линукс ядро - там тупо может быть переполнение int переменной.

* ()
[#] Ответ на: комментарий от juk4windows 27.01.2012 23:07:10  

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

* ()
[#]  
>>-----Цитата---->>

Ситуация. Появляется новая уязвимость, скажем в плагине флеш

<<-----Цитата----<<

Разницу между свободным и проприетарным, и принципиальной разнице в устранении их уязвимостей, объяснять надо?

()
[#] Ответ на: комментарий от juk4windows 27.01.2012 17:57:11  
>>-----Цитата---->>

Защиты в Линуксе от drive-by атак на сегодня нет вообще

<<-----Цитата----<<

Точно. Каждый день по 100 атак. Пользователи Linux плачут с утра до вечера, и завидуют пользователям Windows, у которых всё так безопасно и у которых никогда не бывает утечек данных.

()
[#] Ответ на: комментарий от juk4windows 27.01.2012 23:07:10  
>>-----Цитата---->>

невозможно никакими политиками предположить векторы атаки на Линукс ядро

<<-----Цитата----<<

Ух ты, специалисты лаборатории Касперского в треде!

* ()
[#] Ответ на: комментарий от ms-dos32 27.01.2012 16:44:59  
note173
>>-----Цитата---->>

Если он все-таки эти права даст

<<-----Цитата----<<

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

>>-----Цитата---->>

Кроме того, ты в любой момент можешь посмотреть командой netstat все входящие/исходящие подключения с твоего компа, а фаерволов и так завались, взять хоть тот же squid или iptables.
(если он все-таки запускается - надо искать в .bashrc или .xsession;

<<-----Цитата----<<

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

>>-----Цитата---->>

при наличии мозга пользователь не станет запускать неизвестный ему файл

<<-----Цитата----<<

Вот разве что это и спасает обычных пользователей.

*** ()
[#] Ответ на: комментарий от juk4windows 27.01.2012 23:07:10  

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

Бугагашеньки!

>Ещё раз для особо одарённых

Так что и на моей hardened-selinux гентачке тоже все пропало? Ой как срашно жить!

*** ()
[#] Ответ на: комментарий от coldy 28.01.2012 6:35:39  

В каком дистре оно встроено и человечески работает, чтобы идиот мог разобраться?

Как там с ускорением Flash через VDPAU? Никак?

Как любят фанатики Линукса предлагать "решения".

* ()
[#] Ответ на: комментарий от juk4windows 28.01.2012 12:59:59  
>>-----Цитата---->>

Flash

<<-----Цитата----<<

о, да. у нас на продакшн-сервере или рабочей станции флешлеер
кушай кашу, малыш, совсем плохой стал

anonymous ()