[Comm] user apps security

Grigory Tuboltsev =?iso-8859-1?q?gtubolcev_=CE=C1_newmail=2Eru?=
Пт Июл 7 11:42:20 MSD 2006


У меня несколько "юзерских" вопросов про безопасность:

1. Если я правильно понимаю, тот факт, что приложения исполняются не
из-под рута, говорит лишь о том, что "захваченное" вирусом или
нападющим пользовательское приложение не может получить права рута и
полный контроль над системой. Однако такое  приложение 
а) получает
доступ к о всем файлам того пользователя, из-под которого оно запущено.
Оно может прочитать, стереть, послать нападающему и т.д. как минимум
все данные в домашнем каталоге этого пользователя. Обратиться к любому
узлу в инете. Разослать спам, или поучаствовать в бот-сети, или стать
перевалочной станцией для атаки на другие хосты. Незачем искать пароль
рута - на рабочей станции работает обычно один человек и все его
документы обычно в одном лишь домашнем каталоге того юзера, из-под
которого запускаются потенциально опасные программы. "Невзламываемость"
файрфокса, мозиллы, конкверора, оперы и прочих, думаю, уже никто из
здравомыслящих людей не воспринимает всерьёз. 
б)захваченное приложение может запустить
локальный клавиатурный сниффер из-под этого пользователя, перехватив
все его пароли к почте, гпг-ключам, и проч., в т.ч. пароль, вводимый
из-под su , пароли, вводимые при telnet к другим хостам и т.п. 
в) захваченное приложение может таки получить доступ к руту,
воспользовавшись одной из свежих local-root уязвимостей, которые нельзя
применить издалека, а при наличии локального шелла - запросто.

2. Если я прав хотя бы в пункте "а", то у меня возникает вопрос. Как бы
мне средствами rsbac (?), novell appArmor (?) или другими устроить для
всех потенциально опасных пользовательских приложений локальную
"клетку", jail. Самые опасные: броузер, почтовая программа, фтп-клиент,
аська, клиенты файлообменников и вообще всё, что общается с сетью. Плюс
то, что работает с полученными из внешнего мира документами - ОпенОффис
и т.п. Очень хочется, например, броузеру, запретить абсолютно всё,
кроме 
1) ходить в инет через порты х, у, z  
2) читать/писать в один
отдельный каталог + читать свой конф. файл. Доступ ко всем другим
каталогам запретить даже на чтение.  
То же самое с ОпенОффис - в свете последних уязвимостей захват
ОпенОффиса вирусом перестал быть фантастикой. Что для этого нужно ?
Кто-нибудь уже это делал ? Я так понимаю, надо брать каждое отдельное
приложение и как-то выяснять его стандартное поведение, составлять
профиль ? Кто уже решал задачку по сочетанию одной из вышеупомянутых
систем с X-ами ? МСВС не предлагать - они вряд ли станут с нами
делиться наработками :)

3. Как (и какими средствами) запретить всем локальным приложениям
ходить в интернет ? Как бы так сделать,чтобы "всем нельзя в интернет, а
вот этому конкретному бинарнику можно, но только после проверки его md5
и только вот на этот порт, и то только с трех до шести вечера" :) Мне,
например, совсем не нравится когда свежеустановленное приложение при
первом запуске радостно без спросу лезет в сеть и где-то там что-то
регистрирует. Откуда я знаю,что оно не мой секретный ключ отсылает
кому-то ? :) Если с гнутыми прораммами ещё есть какая-то уверенность,
то с проприетарными, которые - alas! - иногда всё же приходится
устанавливать, никакой уверенности нету.

4. Есть ли хоть какой-то удобоваримый гуй для создания шифрованных
партиций\контейнеров наподобие pgp disk ? Желательно на GTK...  Я знаю,
что можно пошаманить с losetup, но хочется гуй... я не админ, я юзер,
мне мышкокнопочки нужны. В сузе есть такой довольно кривой гуй в рамках
Yast но у меня он не работает.

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

Заранее спасибо, 
С уважением,
Григорий Тубольцев.



Подробная информация о списке рассылки community