/mandos/release

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/release

« back to all changes in this revision

Viewing changes to debian/rules

  • Committer: Teddy Hogeborn
  • Date: 2014-06-08 03:10:08 UTC
  • mto: (237.7.272 trunk)
  • mto: This revision was merged to the branch mainline in revision 317.
  • Revision ID: teddy@recompile.se-20140608031008-mc9bd7b024a3q0y0
Address a very theoretical possible security issue in mandos-client.

If there were to run some sort of "cleaner" process for /run/tmp (or
/tmp), and mandos-client were to run for long enough for that cleaner
process to remove the temporary directory for GPGME, there was a
possibility that another unprivileged process could trick the (also
unprivileged) mandos-client process to remove other files or symlinks
which the unprivileged mandos-client process was allowed to remove.
This is not currently known to have been exploitable, since there are
no known initramfs environments running such cleaner processes.

* plugins.d/mandos-client.c (main): Use O_NOFOLLOW when opening
                                    tempdir for cleaning.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#!/usr/bin/make -f
2
 
 
3
 
ifeq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
4
 
    MAKEFLAGS += OPTIMIZE=-O0
5
 
endif
6
 
 
7
 
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
8
 
    NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
9
 
    MAKEFLAGS += -j$(NUMJOBS)
10
 
endif
11
 
 
12
2
%:
13
3
        dh $@
14
4
 
29
19
        $(MAKE) DESTDIR=$(CURDIR)/debian/mandos-client \
30
20
                install-client-nokey
31
21
 
32
 
override_dh_fixperms-arch:
 
22
override_dh_fixperms:
33
23
        dh_fixperms --exclude etc/keys/mandos \
 
24
                --exclude etc/mandos/clients.conf \
34
25
                --exclude etc/mandos/plugins.d \
35
 
                --exclude etc/mandos/plugin-helpers \
36
 
                --exclude usr/lib/$(DEB_HOST_MULTIARCH)/mandos/plugins.d \
37
 
                --exclude usr/lib/$(DEB_HOST_MULTIARCH)/mandos/plugin-helpers \
 
26
                --exclude usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null)/mandos/plugins.d \
38
27
                --exclude usr/share/doc/mandos-client/examples/network-hooks.d
39
28
        chmod --recursive g-w -- \
40
29
        "$(CURDIR)/debian/mandos-client/usr/share/doc/mandos-client/examples/network-hooks.d"
41
30
 
42
 
override_dh_fixperms-indep:
43
 
        dh_fixperms --exclude etc/mandos/clients.conf
44
 
 
45
31
override_dh_auto_test-arch: ;