File permissions.secure of Package permissions

# /etc/permissions.secure
#
# Copyright (c) 2001 SuSE GmbH Nuernberg, Germany.  All rights reserved.
#
# Author: Roman Drahtmueller <draht@suse.de>, 2001
#
# 
# See /etc/permissions for general hints on how to use this file.
#
# /etc/permissions.secure is designed for the use in a multi-user and
# networked installation. Most privileged file modes are disabled here.
# Many programs that still have their suid- or sgid-modes have had their
# security problems in the past already.
# The primary target of this configuration is to make the basic things
# such as changing passwords, the basic networking programs as well as
# some of the all-day work programs properly function for the unprivileged
# user. The dial-out packages are executable for users belonging to the
# "dialout" group - therefore, these users are to be treated "privileged".
# Packages such as (remote-) batch queueing systems, games, programs for 
# the linux text console, everything linked against OOP libraries and
# most other exotic utilities are turned into unprivileged binary files
# in order for them not to cause any security problems if one or more of
# the programs turn out to have buffer overruns or otherwise locally 
# exploitable programming errors.
# This file is not designed to make your system as closed and as restrictive
# as at all possible. In many cases, restricted access to a configuration 
# file is of no use since the data used can be obtained from the /proc file
# system or interface configuration as well. Also, system programs such as
# /sbin/ifconfig or /sbin/route are not changed because nosey users can
# bring their own. "Security by obscurity" will add any significant 
# security-related advantage to the system. Keep in mind that curiosity
# is a major motivation for your users to try to see behind the curtain.
#
# If you need the functionality of a program that usually runs as a
# privileged user, then use it as root, or, if you are not root, ask your 
# system administrator for advice. In many cases, adding a user to the 
# "trusted" group gives her access to the resources that are not accessible
# any more if the admin chose to select "secure" as the permissions default.
#
# Please make use of the diff program to see the differences between the
# permissions.easy and permissions.secure files if things don't work as
# they should and you suspect a permission or privilege problem.
# The word "easy" is a reference for the /etc/permissions.easy file.
#
# As usual, these settings are "suggested". If you feel so inclined, 
# please feel free to change the modes in this files, but keep a log 
# of your changes for future reference.

# Please always keep in mind that your system listens on network sockets
# in the default configuration. Change this by disabling the services that 
# you do not need or by restricting access to them using packet filters
# or tcp wrappers (see hosts_access(5)) to gain a higher level of security
# in your system.

#
# Directories
#
# no lock files for emacs:
/var/lib/xemacs/lock                                    root:trusted      1775
# for screen's session sockets:
/var/run/uscreens                                       root:root         1777

#
# /etc
#
/etc/crontab                                            root:root          600
/etc/exports                                            root:root          644
/etc/fstab                                              root:root          644
/etc/ftpaccess                                          root:root          644
/etc/ftpusers                                           root:root          644
/etc/inetd.conf                                         root:root          644
/etc/inittab                                            root:root          644
/etc/mtab                                               root:root          644
/etc/rmtab                                              root:root          644
/var/lib/nfs/rmtab                                      root:root          644
/etc/syslog.conf                                        root:root          600

#
# suid system programs that need the suid bit to work:
#
/bin/su                                                 root:root         4755
# disable at and cron for users that do not belnong to the group "trusted"
/usr/bin/at                                             root:trusted      4750
/usr/bin/crontab                                        root:trusted      4750
/usr/bin/gpasswd                                        root:shadow       4755
/usr/bin/newgrp                                         root:root         4755
/usr/bin/passwd                                         root:shadow       4755
/usr/bin/chfn                                           root:shadow       4755
/usr/bin/chage                                          root:shadow       4755
/usr/bin/chsh                                           root:shadow       4755
/usr/bin/expiry                                         root:shadow       4755
# the default configuration of the sudo package in SuSE distribution is to
# intimidate users.
/usr/bin/sudo                                           root:root         4755
/usr/sbin/su-wrapper                                    root:root         0755
# opie password system
# #66303
/usr/bin/opiepasswd                                     root:root         4755
/usr/bin/opiesu                                         root:root         4755
# "user" entries in /etc/fstab make mount work for non-root users:
/usr/bin/ncpmount                                       root:trusted      4750
/usr/bin/ncpumount                                      root:trusted      4750
# #331020
/sbin/mount.nfs                                         root:root         0755
# mount/umount have had their problems already:
/bin/mount                                              root:root         4755
/bin/umount                                             root:root         4755
/bin/eject                                              root:audio        4750
#
# #133657
/usr/bin/fusermount                                     root:trusted      4750
# #66203
/usr/lib/majordomo/wrapper                              root:daemon       4750
# glibc backwards compatibility
/usr/lib/pt_chown                                       root:root         4755
/usr/lib64/pt_chown                                     root:root         4755
# needs setuid root when using shadow via NIS:
# #216816
/sbin/unix_chkpwd                                       root:shadow       4755
/sbin/unix2_chkpwd                                      root:shadow       4755
# qpopper
/usr/sbin/popauth                                       pop:trusted       4750
# from the squid package
/usr/sbin/pam_auth                                      root:shadow       4755

# still to be converted to utempter
/usr/lib/vte/gnome-pty-helper                           root:tty          2755

#
# mixed section: most of it is disabled in this permissions.secure:
#
#########################################################################
# rpm subsystem:
/usr/src/packages/SOURCES/                              root:root          755
/usr/src/packages/BUILD/                                root:root          755
/usr/src/packages/RPMS/                                 root:root          755
/usr/src/packages/RPMS/alpha/                           root:root          755
/usr/src/packages/RPMS/alphaev56/                       root:root          755
/usr/src/packages/RPMS/alphaev67/                       root:root          755
/usr/src/packages/RPMS/alphaev6/                        root:root          755
/usr/src/packages/RPMS/arm4l/                           root:root          755
/usr/src/packages/RPMS/athlon/                          root:root          755
/usr/src/packages/RPMS/i386/                            root:root          755
/usr/src/packages/RPMS/i486/                            root:root          755
/usr/src/packages/RPMS/i586/                            root:root          755
/usr/src/packages/RPMS/i686/                            root:root          755
/usr/src/packages/RPMS/ia64/                            root:root          755
/usr/src/packages/RPMS/mips/                            root:root          755
/usr/src/packages/RPMS/ppc/                             root:root          755
/usr/src/packages/RPMS/ppc64/                           root:root          755
/usr/src/packages/RPMS/powerpc/                         root:root          755
/usr/src/packages/RPMS/powerpc64/                       root:root          755
/usr/src/packages/RPMS/s390/                            root:root          755
/usr/src/packages/RPMS/s390x/                           root:root          755
/usr/src/packages/RPMS/sparc/                           root:root          755
/usr/src/packages/RPMS/sparcv9/                         root:root          755
/usr/src/packages/RPMS/sparc64/                         root:root          755
/usr/src/packages/RPMS/x86_64/                          root:root          755
/usr/src/packages/RPMS/armv4l/                          root:root          755
/usr/src/packages/RPMS/hppa/                            root:root          755
/usr/src/packages/RPMS/hppa2.0/                         root:root          755
/usr/src/packages/RPMS/noarch/                          root:root          755
/usr/src/packages/SPECS/                                root:root          755
/usr/src/packages/SRPMS/                                root:root          755
#########################################################################
# video
/usr/bin/v4l-conf                                       root:video        4750
# Itanium ia32 emulator
/usr/lib/ia32el/suid_ia32x_loader                       root:root         0755
# scotty:
# #66211
/usr/bin/ntping                                         root:trusted      4750
# This is not extensively tested.
/usr/bin/vlock                                          root:shadow       0755
/usr/bin/Xorg                                           root:root         0711
# turned off write and wall by disabling sgid tty:
/usr/bin/wall                                           root:tty          0755
/usr/bin/write                                          root:tty          0755
# thttpd: sgid + executeable only for group www. Useless...
/usr/bin/makeweb                                        root:www          2750
# yaps, pager software, accesses /dev/ttyS? . Disabled sgid uucp.
/usr/bin/yaps                                           root:uucp         0755
# ncpfs tool: trusted only
/usr/bin/nwsfind                                        root:trusted      4750
/usr/bin/ncplogin                                       root:trusted      4750
/usr/bin/ncpmap                                         root:trusted      4750
# lpdfilter:
# checks itself that only lp and root can call it
/usr/lib/lpdfilter/bin/runlpr                           root:root         4755
# pcmcia:
# Needs setuid to eject cards (#100120)
/sbin/pccardctl                                         root:trusted      4750
# gnokii nokia cellphone software
# #66209
/usr/sbin/mgnokiidev                                    root:uucp          755
# pcp, performance co-pilot
# setuid root is used to write /var/log/pcp/NOTICES
# #66205
/usr/lib/pcp/pmpost                                     root:trusted      4750
# mailman mailing list software
# #66315
/usr/lib/mailman/cgi-bin/admin                          root:mailman      2755
/usr/lib/mailman/cgi-bin/admindb                        root:mailman      2755
/usr/lib/mailman/cgi-bin/edithtml                       root:mailman      2755
/usr/lib/mailman/cgi-bin/listinfo                       root:mailman      2755
/usr/lib/mailman/cgi-bin/options                        root:mailman      2755
/usr/lib/mailman/cgi-bin/private                        root:mailman      2755
/usr/lib/mailman/cgi-bin/roster                         root:mailman      2755
/usr/lib/mailman/cgi-bin/subscribe                      root:mailman      2755
/usr/lib/mailman/cgi-bin/confirm                        root:mailman      2755
/usr/lib/mailman/cgi-bin/create                         root:mailman      2755
/usr/lib/mailman/cgi-bin/editarch                       root:mailman      2755
/usr/lib/mailman/cgi-bin/rmlist                         root:mailman      2755
/usr/lib/mailman/mail/mailman                           root:mailman      2755

# libgnomesu (#75823, #175616)
/usr/lib/libgnomesu/gnomesu-pam-backend                 root:root         4755

# control-center2 (#104993)
/usr/sbin/change-passwd                                 root:root         4755

#
# cups (#66305,#406058)
#
/usr/bin/lppasswd                                       lp:lp             2755

#
# smb printing with kerberos authentication (#177114)
#
/usr/bin/get_printing_ticket                            root:lp           4750

#
# networking (need root for the privileged socket)
#
/bin/ping                                               root:root         4755
/bin/ping6                                              root:root         4755
/usr/sbin/traceroute6                                   root:root         4755
# mtr is linked against ncurses. no suid bit, for root only:
/usr/sbin/mtr                                           root:dialout      0755
/usr/bin/rcp                                            root:root         4755
/usr/bin/rlogin                                         root:root         4755
/usr/bin/rsh                                            root:root         4755

# heartbeat #66310
# cl_status needs to be allowed to connect to the heartbeat API. If the setgid
# bit is removed, one can manually add users to the haclient group instead.
/usr/bin/cl_status                                      root:haclient     2555

# exim
/usr/sbin/exim                                          root:root         4755

#
# dialup networking programs
#
/usr/sbin/pppoe-wrapper                                 root:dialout      4750
# i4l package (#100750):
/sbin/isdnctrl                                          root:dialout      4750
# #66111
/usr/bin/vboxbeep                                       root:trusted      0755


#
# linux text console utilities
# 
# setuid needed on the text console to set the terminal content on ctrl-o
# #66112
/usr/lib/mc/cons.saver                                  root:root         0755


#
# terminal emulators
# This and future SuSE products have support for the utempter, a small helper
# program that does the utmp/wtmp update work with the necessary rights.
# The use of utempter obsoletes the need for sgid bits on terminal emulator
# binaries. We mention screen here, but all other terminal emulators have
# moved to /etc/permissions, with modes set to 0755.

# needs setuid to access /dev/console
# framebuffer terminal emulator (japanese)
/usr/bin/jfbterm                                        root:tty          0755

#
# kde
# (all of them are disabled in permissions.secure except for 
# the helper programs)
#
# arts wrapper, normally suid root:
/opt/kde3/bin/artswrapper                               root:root         0755
# needs setuid root when using shadow via NIS:
# #66218
/opt/kde3/bin/kcheckpass                                root:shadow       4755
/usr/lib/kde4/libexec/kcheckpass                        root:shadow       4755
/usr/lib64/kde4/libexec/kcheckpass                      root:shadow       4755
# This has a meaning... hmm...
/opt/kde3/bin/kdesud                                    root:nogroup      2755
/usr/lib/kde4/libexec/kdesud                            root:nogroup      2755
/usr/lib64/kde4/libexec/kdesud                          root:nogroup      2755
# used for getting proxy settings from dhcp
/opt/kde3/bin/kpac_dhcp_helper                          root:root         0755
# used to distract the oom killer
# #203535
/opt/kde3/bin/start_kdeinit                             root:root         4755
# edits /etc/smb.conf
# #66312
/usr/bin/fileshareset                                   root:root         0755

#
# amanda
#
# Well, if you are gid disk already, you don't need these amanda binaries
# to get root.
# Anyway, we don't keep the suid bits.
/usr/sbin/amcheck                                       root:disk         0750
/usr/lib/amanda/calcsize                                root:disk         0750
/usr/lib/amanda/rundump                                 root:disk         0750
/usr/lib/amanda/planner                                 root:disk         0750
/usr/lib/amanda/runtar                                  root:disk         0750
/usr/lib/amanda/dumper                                  root:disk         0750
/usr/lib/amanda/killpgrp                                root:disk         0750


#
# gnats
#
/usr/lib/gnats/gen-index                                gnats:root        4555
/usr/lib/gnats/pr-edit                                  gnats:root        4555
/usr/lib/gnats/queue-pr                                 gnats:root        4555


#
# news (inn)
#
# the inn start script changes it's uid to news:news. Later innstart and
# innfeed are called by this user. Those programs do not need to be called by
# anyone else, therefore the strange permissions 4554 are required for
# operation. (#67032)
#
/usr/lib/news/bin/rnews                                 news:uucp         4550
/usr/lib/news/bin/startinnfeed                          root:news         4554
/usr/lib/news/bin/inndstart                             root:news         4554
/usr/lib/news/bin/inews                                 news:news         2555


#
# fax
#
# restrictive, only for "trusted" group users:
# faxq helper:
/usr/lib/mgetty+sendfax/faxq-helper                     fax:root          4711
/var/spool/fax/outgoing                                 fax:root          0755
/var/spool/fax/outgoing/locks                           fax:root          0755
# TODO: package should set this permissions
/var/spool/fax/archive                                  fax:uucp           700
/var/spool/fax/bin                                      fax:uucp           755
/var/spool/fax/client                                   fax:uucp           755
/var/spool/fax/config                                   fax:uucp           755
/var/spool/fax/dev                                      fax:uucp           755
/var/spool/fax/docq                                     fax:uucp           700
/var/spool/fax/doneq                                    fax:uucp           700
/var/spool/fax/etc                                      fax:uucp           755
/var/spool/fax/info                                     fax:uucp           755
/var/spool/fax/log                                      fax:uucp           755
/var/spool/fax/pollq                                    fax:uucp           700
/var/spool/fax/recvq                                    fax:uucp           755
/var/spool/fax/sendq                                    fax:uucp           700
/var/spool/fax/status                                   fax:uucp           755
/var/spool/fax/tmp                                      fax:uucp           700

#
# uucp
#
/var/spool/uucppublic                                   root:uucp         1770
/usr/bin/uucp                                           uucp:uucp         6555
/usr/bin/uuname                                         uucp:uucp         6555
/usr/bin/uustat                                         uucp:uucp         6555
/usr/bin/uux                                            uucp:uucp         6555
/usr/lib/uucp/uucico                                    uucp:uucp         6555
/usr/lib/uucp/uuxqt                                     uucp:uucp         6555


#
# games of all kinds, toys
# all suid and sgid bits cleared.
#

# bsd-games
/usr/games/atc                                          games:games       0755
/usr/games/battlestar                                   games:games       0755
/usr/games/canfield                                     games:games       0755
/usr/games/cribbage                                     games:games       0755
/usr/games/phantasia                                    games:games       0755
/usr/games/robots                                       games:games       0755
/usr/games/sail                                         games:games       0755
/usr/games/snake                                        games:games       0755
/usr/games/tetris-bsd                                   games:games       0755

# Maelstrom
/usr/games/Maelstrom                                    games:games       0755

# pachi
/usr/games/pachi                                        games:games       0755
/usr/games/martian                                      games:games       0755

# nethack
/usr/lib/nethack/nethack.tty                            games:games       0755

# chromium,
/usr/games/chromium                                     games:games       0755

# xscrabble
/usr/games/xscrab                                       games:games       0755

# trackballs
/usr/games/trackballs                                   games:games       0755

# ltris
/usr/games/ltris                                        games:games       0755

# xlogical
/usr/games/xlogical                                     games:games       0755

# lbreakout
/usr/games/lbreakout2                                   games:games       0755

# xgalaga
/usr/bin/xgalaga                                        games:games       0755

# rocksndiamonds
/usr/games/rocksndiamonds                               games:games       0755

# gnome-games
/usr/bin/glines                                         games:games       0755
/usr/bin/gnibbles                                       games:games       0755
/usr/bin/gnobots2                                       games:games       0755
/usr/bin/gnometris                                      games:games       0755
/usr/bin/gnomine                                        games:games       0755
/usr/bin/gnotravex                                      games:games       0755
/usr/bin/gnotski                                        games:games       0755
/usr/bin/gtali                                          games:games       0755
/usr/bin/mahjongg                                       games:games       0755
/usr/bin/same-gnome                                     games:games       0755

# zypp (#385207)
/usr/sbin/zypp-refresh-wrapper                          root:root         0755

# PolicyKit (#295341)
/usr/lib/PolicyKit/polkit-set-default-helper            polkituser:root   4755
/usr/lib/PolicyKit/polkit-read-auth-helper              root:polkituser   2755
/usr/lib/PolicyKit/polkit-revoke-helper                 root:polkituser   2755
/usr/lib/PolicyKit/polkit-explicit-grant-helper         root:polkituser   2755
/usr/lib/PolicyKit/polkit-grant-helper                  root:polkituser   2755
/usr/lib/PolicyKit/polkit-grant-helper-pam              root:polkituser   4750

# dbus-1 (#333361)
/lib/dbus-1/dbus-daemon-launch-helper                   root:messagebus   4750
/lib64/dbus-1/dbus-daemon-launch-helper                 root:messagebus   4750

# policycoreutils (#440596)
/usr/bin/newrole                                        root:root         0755

# VirtualBox (#429725)
/usr/lib/virtualbox/VirtualBox                          root:vboxusers    0755
/usr/lib/virtualbox/VirtualBox3                         root:vboxusers    0755
/usr/lib/virtualbox/VBoxBFE                             root:vboxusers    0755
/usr/lib/virtualbox/VBoxHeadless                        root:vboxusers    0755
/usr/lib/virtualbox/VBoxSDL                             root:vboxusers    0755
openSUSE Build Service is sponsored by