Веб-браузер является одним из самых используемых программ. С помощью него мы посещаем сайты, а порою и открываем огромное количество вредоносных скриптов и сайтов даже не подозревая об этом.
Например, недавно было обнаружено, что один из российских онлайн рекламных сервисов использовал эксплоит в Firefox чтобы искать и загружать им на сервера сенситивные файлы. Если пользуетесь Linux и думаете что вам боятся нечего, то спешу вас огорчить, этот эксплоит работал и в Linux. При этом, если вы пользуетесь Linux-ом, то они крали такие директории и файлы как: /etc/passwd
, .purple
, .pgsql_history
, .ssh
, .filezilla
и т.д. К счастью, начиная с Firefox 42 проделать это вроде-бы уже невозможно.
Как можно предотвратить подобную проблему вообще? Легко - просто запускайте браузеры и другие приложения, которые подключаются к интернету через песочницу. Одна из самых легких утилит для запуска программ в песочнице - это Firejail.
Установка Firejail в Debian/Ubuntu/Linux Mint
Первым делом скачать Deb-пакет с официального сайта:
Firejail 64-bit | Firejail 32-bit
После завершения скачивания, вы можете установить Firejail, путем запуска команды:
Для 64-разрядной ОС:
sudo dpkg -i ~/Downloads/firejail_0.9.32_1_amd64.deb
Для 32-разрядной ОС:
sudo dpkg -i ~/Downloads/firejail_0.9.32_1_i386.deb
Как пользоваться Firejail на примере Firefox
Пользоваться Firejail очень легко - всё, что вам нужно сделать для запуска программы в песочнице - это запустить его командой:
firejail --seccomp firefox
В Firejail еще имеется специальный приватный режим. В этом режиме все файлы созданные приложением удаляются сразу-же после его закрытия. Войти в приватный режим очень просто:
firejail --seccomp --private firefox
Как закрыть приложению доступ ко-всей файловой системе
По-умолчанию Firejail блокирует доступ браузерам только к основным директориям как: ~/.ssh
, ~/.gnupg
и т.д. Проблема в том, что иногда этого недостаточно. Зачем давать браузеру полный доступ к домашней директории?
И тут на помощь приходит специальная директива конфигурации: private
. С помощью него можно заточить определенное приложение в определенную директорию. Из-за этого ваше приложение сможет получить доступ только к тем ресурсам, которые находятся в той директории.
Для того, чтобы проделать этот "трюк", вам нужно сперва скопировать дефолтный Firejail-профайл:
mkdir ~/.config/firejail -p
cp /etc/firejail/firefox.profile ~/.config/firejail
Затем добавить в этот файл директиву profile
:
echo "private ${HOME}/firefox" >> ~/.config/firejail
С помощью этой конфигурации, вы заточите Firefox в папке ~/firefox
. Кстати,
это папку вам нужно создать вручную:
mkdir ~/firefox
Как запускать Firefox в песочнице по-умолчанию
Набирать каждый раз в терминале firejail --seccomp firefox
может быть очень утомительно. Для того, чтобы не делать это, вам нужно запустить следующие команды:
sudo su
echo "firejail --seccomp /usr/bin/firefox [email protected]" > /usr/local/bin/firefox
chmod +x /usr/local/bin/firefox
exit
Имейте в виду, что с помощью Firejail вы можете запускать в песочнице не только Firefox, но и другие приложения.