please relocate "nameservice" usage in evince AppArmor profile
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
evince (Ubuntu) |
Fix Released
|
Medium
|
Jamie Strandboge | ||
Natty |
Fix Released
|
Medium
|
Jamie Strandboge |
Bug Description
Binary package hint: evince
Right now, the "nameservice" abstraction is listed in the abstractions/evince file, which means that both evince and evince-thumbnailer have full network privileges. I think it would be better to move "nameservice" from the abstraction to the core evince profile so that the thumbnailer is not allowed to communicate with the network (it should be doing strictly local-only operations, AFAICT).
ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: evince 2.32.0-0ubuntu9
ProcVersionSign
Uname: Linux 2.6.38-3-generic x86_64
Architecture: amd64
Date: Thu Feb 17 12:53:32 2011
ProcEnviron:
LANGUAGE=en_US:en
PATH=(custom, user)
LANG=en_US.UTF-8
LC_MESSAGES=
SHELL=/bin/bash
ProcVersionSign
SourcePackage: evince
Related branches
Changed in evince (Ubuntu Natty): | |
status: | Confirmed → Fix Committed |
Right, so I remember why this was needed. When profiling, evince-thumbnailer needed /etc/apsswd and /etc/nsswitch.conf, so the nameservice abstraction was added. This seems rather silly, so I strace'd it: hyperlink. pdf /tmp/out.png
$ strace -c evince-thumbnailer ./test_
...
-nan 0.000000 0 1 getuid
-nan 0.000000 0 1 geteuid
...
I'm guessing this is do to the following: hyperlink. pdf /tmp/out.png 2>&1 | grep dbus gio-volu" ..., 159) = 159 usr/lib/ libdbus- glib-1. so.2", O_RDONLY) = 4 lib/libdbus- 1.so.3" , O_RDONLY) = 4 usr/lib/ gio/modules/ libgvfsdbus. so", {st_mode= S_IFREG| 0644, st_size=172976, ...}) = 0 usr/lib/ gio/modules/ libgvfsdbus. so", {st_mode= S_IFREG| 0644, st_size=172976, ...}) = 0 usr/lib/ gio/modules/ libgvfsdbus. so", O_RDONLY) = 3 lib/libdbus- 1.so.3" , O_RDONLY) = 3 /tmp/dbus- Szq019joqT" }, 23) = 0
$ strace evince-thumbnailer ./test_
read(4, "libgvfsdbus.so: gio-vfs,
open("/
open("/
stat("/
stat("/
open("/
open("/
connect(3, {sa_family=AF_FILE, path=@"