Commit graph

43 commits

Author SHA1 Message Date
netblue30
018d75775e reorganize github etc directory 2020-04-21 08:24:28 -04:00
Fred Barclay
3848b98961
Replace nodbus with dbus-* filters
See
- 07fac581f6 for new dbus filters
- https://github.com/netblue30/firejail/pull/3326#issuecomment-610423183

Except for ocenaudio, access/restrictions on dbus options should
be unchanged

Ocenaudio profile: dbus filters were sandboxed (initially `nodbus`
was enabled) since comments indicated blocking dbus meant
preferences were broken
2020-04-07 16:14:25 -05:00
glitsj16
db2bdaadd2
add lua support for mpv (#3243)
* allow lua in mpv.profile

* fix allow-lua.inc for mpv

* extra lua blacklisting for mpv
2020-02-24 17:18:53 +00:00
Daniel M. Capella
08061fb590 Fix wusc in mpv (#3108)
Partly fixes #3107.
2020-01-03 05:04:11 +00:00
glitsj16
8822422e55
Move libdrm whitelisting to wusc 2019-10-30 23:42:05 +00:00
rusty-snake
af7e105e02
Update mpv.profile 2019-10-30 20:56:39 +00:00
rusty-snake
b09ef52b9c
Update mpv.profile 2019-10-27 22:23:13 +00:00
rusty-snake
6e44b5dde4
whitelist-usr-share-common.inc (#2972)
* Work on whitelist-usr-share-common

* sorting; add Modules + QT/KDE stuff

* add wusc.inc to more profiles [needs testing]

* update

* gitg, firefox, evince

* /usr/share/{p11-kit,pixmaps,pki,qt5,tcl8.6,terminfo}

* more profiles

* remove wusc.inc from feedreader

Even with 'whitelist /usr/share/*', feedreader trys to dereference a
NULL pointer.

* more profiles

* whitelist /usr/share breaks wget

even with whitelist /usr/share/*

* extend wusc.inc

* update

* Add alsa,crypto-policies and zoneinfo

* readd wusc.inc to wget and feedreader

* update

* testing results: Debian Buster with KDE

* more KDE stuff

* fix tb
2019-10-05 19:24:37 +00:00
veloute
3df2e2112e added 'noblacklist ${PICTURES}' to mpv.profile (#2898)
* added 'noblacklist ${PICTURES}' to mpv.profile

* Update mpv.profile

fix typo
2019-08-11 07:30:55 +00:00
glitsj16
f314dc0700
Fix slow OSD in mpv.profile
Fixes #2838.
2019-07-07 07:59:42 +00:00
glitsj16
0dffeb15b6
Add youtube-dl config handling (#2836)
* Add youtube-dl config to disable-programs.inc

* Add config handling to youtube-dl

* Add youtube-dl config handling to celluloid.profile

* Add youtube-dl config handling to mpv.profile

* Add youtube-dl config handling to smplayer.profile

* Add youtube-dl config handling to mpsyt.profile
2019-07-06 23:35:40 +00:00
Vincent43
2529d1d486
Merge pull request #2766 from rusty-snake/fix-all-private-bin_etc-lines
automatically fixed all private-{bin,etc} lines
2019-06-15 11:53:03 +00:00
glitsj16
726aebb3ab
Re-order mpv profile
Leaving alphabetical ordering of private-bin up to https://github.com/netblue30/firejail/pull/2766.
2019-06-15 01:45:54 +00:00
rusty-snake
019fa047d6
automatically fixed all private-{bin,etc} lines 2019-06-13 19:49:13 +02:00
rusty-snake
17f8035132
Create allow-INTERPETER.inc (#2736)
* Create allow-INTERPETER.inc

 * allow-lua.inc
 * allow-perl.inc
 * allow-python2.inc
 * allow-python3.inc

* Create allow-java.inc

* Update profiles to use new allow-INTERPRETER.inc includes

* Update profiles to use new allow-INTERPRETER.inc includes 2/x

* Fix order of allow-INTERPRETER.inc includes

* Update profiles to use new allow-INTERPRETER.inc includes 3/x

* Fixup comment about allow-java.inc

https://github.com/netblue30/firejail/pull/2736#discussion_r289597997

* Add Arch Linux specific paths to allow-perl.inc
2019-06-01 20:19:01 +00:00
rusty-snake
a9c921c0ec
Update gajim.profile and mpv.profile 2019-04-18 10:42:56 +02:00
smitsohu
aa2bdffc4b
add disable-exec.inc to all profiles with apparmor (#2576)
* add disable-exec.inc to all profiles with apparmor - #2385 #2505

* drop disable-exec.inc from generic electron.profile
2019-03-12 20:44:51 +00:00
pirate486743186
aee08f8309 allowing local python* in mpv and youtube-dl #2262 2018-11-26 03:34:14 +01:00
netblue30
92bff8a23c
Merge pull request #2201 from SkewedZeppelin/u2f-ap
Add nou2f to all profiles
2018-10-17 08:00:00 -05:00
Glenn Washburn
7c533c9aa5 Remove "/etc/firejail/" from all include paths, now that profile_read will search for the file. 2018-10-17 00:43:54 -05:00
Tad
284e0750e5 Add nou2f to all profiles
- Closes #2194
2018-10-15 13:14:15 -04:00
Tad
82a0cd2e71 Cleanup descriptions 2018-08-13 22:35:05 -04:00
Tad
40330b246d Add descriptions to profiles, pulled from Ubuntu 18.04 2018-08-13 21:48:41 -04:00
ಚಿರಾಗ್ ನಟರಾಜ್
cc7c48983c
Document #1945 2018-07-25 19:10:29 -04:00
Tad
e5aba00d01 Add disable-xdg.inc to ~100 profiles 2018-07-24 12:52:13 -04:00
Fred Barclay
2d8ff695ad
WIP: Blacklist common programming interpreters. (#1837)
* Use path variable instead of full path when blacklisting devel tools.

* Part 1: blacklist python, perl, ruby, etc in disable-interpreters.inc

* Part 2: allow access to java as needed

* Typo: missing blacklist

* Part 3: allow perl access as needed

* typo

* Add xreader thumbnailer and previewer profiles

* Add xplayer audio-preview and thumbnailer profiles

* Add atril thumbnailer and previewer profiles

* More fixups after adding disable-interpreters.inc

* Blacklist javac

* More javac noblacklisting

* Remove javac from dex2jar, libreoffice, multimc5, and pdfsam profiles

* --nodbus, first draft for #1825

* dbus.c

* rework akonadi integration

the usr.sbin.mysqld-akonadi apparmor profile, enforced by default in ubuntu and
debian testing (and probably opensuse), doesn't play well with a number of firejail options.
the reason for this is that once the no_new_privs bit is set, apparmor profile
transitions are forbidden.

enforcing our own apparmor policy instead is also no solution, because
these programs don't even start without d-bus.

relaxing the kmail profile was necessary so that kmail can fire up akonadi itself,
just in case akonadi has not been started earlier already by another program.
this is always an issue when kmail is the only installed akonadi client, but
there may be more circumstances. for reasons outlined above this doesn't help
debian and ubuntu (opensuse?) users though :-/

a brief summary of the seccomp exceptions: chroot is needed for qt webengine,
io_prioset for the akonadi indexing agent, io_getevents, io_submit, io_setup
are needed for mysqld. when akonadi has an sqlite3 backend, less exceptions
to the seccomp filter are necessary, but mysqld is the default.

in the future all kontact suite profiles  (itm only kmail, knotes) should
probably be redirections to akonadi_control, but the issues with apparmor
make this somewhat impractical for now (options like 'protocol' couldn't go to
akonadi_control.local any more, if current kmail redirected to there).

* Add nodbus to some profiles - part 1

* Spotify works with nodbus on Arch

* Enable nodbus for keepassx and keepassxc profiles.

I've tested on keepassxc but should work for keepassx as well. Settings are not immutable.

* recalibrate dbus access, deploy nodbus option

see #1822 and #1825. also systematically replaces
'blacklist /run/user/*/bus' with 'nodbus'.

with contributions from @Fred-Barclay

* various blacklist additions

* Add a profile for ncdu, enable private-etc in Steam again, and fixup gnome-recipes

* comment nodbus where it interferes with dconf

pending further discussion

* Add a disabled and extensive private-bin for Steam

* Further improve private-bin in steam

* comment apparmor, net where they interfere with dconf - #1843

* gnome-calculator fixup

* spectre support for clang compiler

* spectre clang support

* enable/disable dbus handling in /etc/firejail/firejail.config

* nodbus man pages, etc.

* redirect knotes to kmail, some tweaks

* testing

* gimp fixup

* Even more fixups after adding disable-interpreters.inc

* AWS and GCP store credentials in local directories as part of project setup.

Configuration for cloud providers is sensitive information; it should be
in the default block list. I didn't see profiles for gcloud or awscli,
so haven't added any exclusions.

boto and kubectl are not provider-specific, but also store credentials for
whichever platforms they happen to be being used with.

* testing

* consolidate makefiles

* gitignore

* Use path variable instead of full path when blacklisting devel tools.

* Part 1: blacklist python, perl, ruby, etc in disable-interpreters.inc

* Part 2: allow access to java as needed

* Typo: missing blacklist

* Part 3: allow perl access as needed

* typo

* More fixups after adding disable-interpreters.inc

* Blacklist javac

* More javac noblacklisting

* Remove javac from dex2jar, libreoffice, multimc5, and pdfsam profiles

* Cleanup rebase leftovers

* imagej doesn't need javac access

* Add cc to blacklisted compilers

* Use wildcards when blacklisting some gcc paths

* Blacklist lua in disable-interpreters

* Correct blacklist for node.js

* Fred Barclay note: some of these commits (all of the ones that don't affect files inside etc/) aren't mine but were added during a rebase + squash
2018-04-02 10:56:55 -05:00
smitsohu
7a37dc31ab recalibrate dbus access, deploy nodbus option
see #1822 and #1825. also systematically replaces
'blacklist /run/user/*/bus' with 'nodbus'.

with contributions from @Fred-Barclay
2018-03-28 03:23:59 +02:00
Tad
68fd00cfe4 Move apparmor option to the top of the options list in all profiles 2018-03-17 15:56:06 -04:00
netblue30
31550dd0b3 man page, README.md, RELNOTES 2018-02-21 09:28:42 -05:00
startx2017
30306cb16a python cleanup in profile files 2017-10-13 09:54:24 -04:00
netblue30
efcda9cb5f whitelisting /var 2017-09-17 11:27:51 -04:00
Reiner Herrmann
20d96e1fc6 Fix mpv running with youtube-dl on Debian systems
youtube-dl uses python3 as shebang, which symlinks to python3.5.
-> both need to be added to private-bin.

Reported by Martin Dosch on https://bugs.debian.org/872287
2017-08-15 21:42:21 +02:00
Tad
00ea93e518 Fix comments in 88 profiles
There may actually be some other comments that were removed, but the bulk have been restored
2017-08-07 01:26:34 -04:00
Tad
9e3ba319be Unify all profiles 2017-08-07 01:22:08 -04:00
Vladimir Schowalter
20fbc19e57 various profile fixes (#1433)
* calibre: add netlink protocol (FB note: removed before merge)

calibre started without netlink protocol throws following error in console:

Exception in thread Thread-8:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/usr/lib/calibre/calibre/utils/mdns.py", line 43, in run
    _all_ip_addresses = self.get_all_ips()
  File "/usr/lib/calibre/calibre/utils/mdns.py", line 27, in get_all_ips
    for x in netifaces.interfaces():
OSError: [Errno 95] Operation not supported

* mpv: add nogroups, tracelog, ipc-namespace, private-dev

I used testes all above options and didn't noticed any breakage.

* qbittorrent: add netlink protocol, private-etc

Netlink protocol is needed if user select to bind specific network interface in config. Otherwise it throws an error in qbittorent log:
The network interface defined is invalid: tun0

Example private-etc is added but commented out by default. It's tested but as there are many different system configurations users should enable it manually.

* vlc: disable memory-deny-write-execute

With memory-deny-write-execute vlc freezes after loading video file. According to b18f42ab02 memory-deny-write-execute is similar to PAX mprotect feature and linked github project explicitly disables that feature for vlc binary, see deb39e0b91

* Update vlc.profile

* wine: add nogroups

Nogroups should be safe addition for wine

* wireshark: allow users to run wireshark as non-root

Wireshark can be run unprivileged when user is part of wireshark group. Unfortunately enabling nogroups,nonewprivs and seccomp will break it with permissions errors.

Also added example private-etc option which is commented out by default for now.

* cosmetic fix

* mpv: comment out ipc-namespace for now

As requested in review https://github.com/netblue30/firejail/pull/1433#discussion_r131550515

* calibre: disable netlink protocol

It throws an error but actual breakage isn't observed for now.
2017-08-06 16:42:24 -05:00
announ
09ab9dcde0 Allow ~/.netrc for youtube-dl 2017-07-04 00:15:56 +00:00
announ
f17e3c97af Allow env for youtube-dl in mpv profile
youtube-dl uses `/usr/bin/env` as its interpreter.
If `env` is not available, mpvʼs execution of youtube-dl fails.
2017-06-30 15:05:37 +00:00
netblue30
dce9b9b9eb added /etc/firejail/globals.local for global customizations 2017-05-23 12:02:22 -04:00
Pig Monkey
d618ded0de allow python and python3 for youtube-dl in MPV profile
This is required for MPV to successfully use youtube-dl on Arch. I'm not
sure if other distros still ship youtube-dl with python2, or if
python2.7 can be removed.
2017-05-18 15:31:50 -07:00
netblue30
975c6f327f persistent support for all profile files 2017-02-09 10:53:33 -05:00
avoidr
c34aceb3df mpv.profile: make youtube-dl work 2016-06-20 04:03:07 +02:00
netblue30
783251e074 private-bin conversion 2016-06-10 08:40:24 -04:00
netblue30
9e3469e1cf added gThumb and mpv profiles 2016-06-06 11:54:53 -04:00