Дэвид Драйсдейл (David Drysdale) из компании Google опубликовал (https://lkml.org/lkml/2014/6/30/170) в списке рассылки разработчиков ядра Linux набор патчей с реализацией фреймворка Capsicum (http://www.cl.cam.ac.uk/research/security/capsicum/), предоставляющего механизмы для изолированного выполнения приложений и ограничения использования приложениями определённых функций. Система изначально разработана для проекта FreeBSD, включена в состав базовой системы начиная с выпуска FreeBSD 9 (http://www.opennet.me/opennews/art.shtml?num=32749) и расширена в ветке FreeBSD 10. Поддержка режима изоляции, основанного на использовании Capsicum, интегрирована в OpenSSH 6.5 (http://www.opennet.me/opennews/art.shtml?num=38971).
Capsicum расширяет POSIX API и предоставляет несколько новых системных примитивов, нацеленных на поддержку модели безопасности через управление возможностями объектов ("object-capability") для Unix-систем. Capsicum нацелен на дополнение традиционного централизованного мандатного контроля доступа средствами для защиты отдельных приложений и активируется на стороне самого приложения. Используя Capsicum, приложение можно запустить в режиме повышенной изоляции (sandbox), при котором программа сможет выполнять только заведомо разрешённые штатные действия.
Capsicum вводит в обиход новый класс файловых дескрипторов - capability, который предоставляет ограниченный набор прав, ассоциированных с ним. Попытки выполнить действия с дескриптором данного типа, не разрешённые заданными правами, отклоняются с выводом ошибки ENOTCAPABLE. Новые полномочия могут определяться только иерархически, как подмножество уже заданных прав, привязанных к существующему capability-дескриптору.
Предоставляется также специальный режим "capability", блокирующий обращение ко всем системным вызовам из которых возможен доступ к глобальному пространству имён. Комбинируя эти две возможности, использующее Capsicum приложение может эффективно изолировать себя в sandbox, определив права доступа для необходимых в работе файлов и сокетов, закрыв все остальные файловые дескрипторы и активировав режим capability, который не позволит открыть не подпадающие под созданные правила новые файловые дескрипторы.
URL: https://lkml.org/lkml/2014/6/30/170
Новость: http://www.opennet.me/opennews/art.shtml?num=40110
Респект. Очень нужная вещь.
чем оно лучше seccomp?
> чем оно лучше seccomp?Чем seccomp.
Нужная-то нужная, но люди не торопятся свои приложения переписывать под капсикум, зная (и особо отмечая) человеческую лень, боюсь, что многие нынешние опенсорсные гиганты, типа постфикса, ехима, сэндмыла, апача и пр. никогда не получат поддержку капсикума.Если конечно кто-то не проспонсирует разработчиков...
> Нужная-то нужная, но люди не торопятся свои приложения переписывать под капсикум, зная
> (и особо отмечая) человеческую лень, боюсь, что многие нынешние опенсорсные гиганты,
> типа постфикса, ехима, сэндмыла, апача и пр. никогда не получат поддержку
> капсикума.
> Если конечно кто-то не проспонсирует разработчиков...ну для этого есть GSoC, например :-)
sendmail, кроме того, входит в состав базовой системы FreeBSD, так что вероятность того, что для него поддержка появится, выше, чем для остальных перечисленных.
> sendmail, кроме того, входит в состав базовой системы FreeBSD,Ну да, это конечно мощный локомотив развития, столько success story вокруг о том как вхождение в базовую систему помогло тем или иным программам...
Особенно если учитывать, что его мало кто вообще использует.
Так я и говорю - ему так сильно помогло что он в базовой системе...
Теперь ждём когда для Linux портируют NetGraph.
А чего ждете-то?
http://repo.or.cz/w/ana-net.git/
А сильно ли нужен NetGraph? ИМХО его "ВОЛШЕБНОСТЬ" сильно преувеличена "ценителями".
seccomp filter http://www.opennet.me/opennews/art.shtml?num=34387 уже есть и почти тоже самое.
Но интерфейс через одно место спроектирован, а так да, слова похожие в описании.
Патчей им наложить! А то у них утечки памяти^W бабла наблюдаются...
Если мы безрезультатно потратили пять с лишним миллиардов долларов на то, что частный предприниматель в США потратил 100 миллионов, то вряд ли мы тратили эти деньги, чтобы создать ракету. Скорее, наоборот: мы создавали ракету, чтобы эти деньги украсть", - уверена Латынина.
Модератор согласен с Латыниной ? ;) :)
стрелка осцылографа уверено? o_O
партияжуликовиворофф?
навальногофпрезеденты?
затокрымнаш и дедывоевали уже изъяли из ваших методичек?
А как связан Крым Няш и воровство в КоммОсРюсси ?
Или если срать - так срать - на всё без разбора, лишь бы побольше?
Дадададададада :)))
Помню, помню, пару лет назад на Linux форумах просил прогу мне посоветовать, ну или запилить, еслу кому не трудно. До сих пор никто до конца это дело не довёл. :(Hello!
Sorry, my english not very good.Many programs at work collect information about the system and the periphery, and often create a unique id of computer.
Programs can send data about your computer on their servers. Servers of companies and corporations, banks, government agencies or hackers.
Unique id of computer often stored in files, which are created in proprietary programs (files of various office suites, a program for creating virtual books, and other).
Information about your computer to collect various clients:
clients of payment systems, voip-telephony clients, clients of instant messaging and etc.Google have many a spyware programs. They collect a huge databases of statistics about the users.
Google Earth, Picasa, Google Talk, Google Chrome... and a lot of different web-services (search engine Google, Gmail, Google translate...).Google is required by law to provide any data about users to government agencies (FBI,...), to CIA, and even ordinary police.
I want to protect myself from all this.I need a special program (environment) in which I will run other programs.
I do not need a virtual machine, because it requires a lot of resources (power processor and more memory).
The program should not take away computer's resources. And should work on any tablet and weak netbook.
I just need to layer like Wine.
I need a program similar to Wine, but for Linux software.Programs running in this environment will have no real access to resources, they will only see that I show them.
If proprietary software with spyware runs and gets my real Mac-address, the names, options, configs of the computer hardware, receives information about the OS, then all the real information needs to be hidden.
The programs running in this environment also should not have direct access to the storage media (hard drives, flash, ...).
Programs running in this special environment will only see that I show them!
Environment have a GUI, many settings and the different profiles, I can add, delete, and modify profiles.
If I choose the profile "Commodore 64", then the program running in the environment see "Commodore 64" and nothing more.
If I choose the profile "K computer", then the program see "K computer".
If I choose "BeOS" or "Amiga" or "Zeta" or "Xbox" or "PlayStation" or "Nintendo" or "Windows 8" or "Windows 3.1" or "Mac" or "Linux v2.4" or "KDE 3.5" or "Gnome 2",... then the program can see only it and nothing more.But these are specific examples, more often, need just change the configuration of computer, mac-adress, memory size, processor speed, video card, resolution and color depth, the name and version of the system, the name of the computer components ...
Сan select and customize absolutely any hardware configuration and operating system (can choose the operating system and configure them).
But do not forget, it's only cover, visibility, we just show to the programs ephemeral image, but the reality is different.
Once again, this special environment must work very quickly and should not take away computer's resources (it should fly on the tablets). This is one of the top priorities.
...и чтобы можно было грабить корованы.
> Помню, помню, пару лет назад на Linux форумах просил прогу мне посоветовать,
> ну или запилить, еслу кому не трудно. До сих пор никто
> до конца это дело не довёл. :(А ты это... денег то занес команде разработчиков? Если ты им зарплаты платил, а они не сделали тебе то что ты хотел - да, они кАзлы! А если ты решил что все забесплатно побегут тебя ублажать, именно так как ты хотел - ты чего-то сильно не понял в этой жизни. В следующий раз попробуй написать в ООН чтобы они тебе предоставили курьера который будет в ларек за пивом бегать. А если откажутся - обжалуй это решение в Спортлото.
Либо я чего-то не понимаю, либо через cgroups и unshare можно запилить нечто подобное без необходимости патчить каждую программу (потребуется только запускать через враппер).
> Либо я чего-то не понимаю, либо через cgroups и unshare можно запилить
> нечто подобное без необходимости патчить каждую программу (потребуется только запускать
> через враппер).Точно, не понимаешь
> It is possible to use Skype in a safe Docker container. The program is then run through an SSH tunnel with X11 forwarding and sound is heard through PulseAudio's Network Server.
Интересная идея: просить хакеров ограничить свои трояны. Или ленивых быдлокодеров добавить еще строк в свои поделки
Главное, что-бы поддержку данной технологии заставили юзать корпоратов, вроде Microsoft с их skype. Пожалуй, песочника для skype гораздо нужней, чем для exim или postfix.
мс будут сами должны сажать свой зонд в песочницу? Точно?
Так или иначе параноики могут не дожидаться подачки от мс и посадить зонд своими силами google://apparmor skype. Оно как-то надежнее
Не понял в чем отличие от apparmor и selinux. Они тоже встроены в ядро, имеют аналогичный функционал и переписывать ничего не надо.