blob: 30533acd09afd143d3cdf7a8d2d26ee3f3af8ed8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
#!/bin/sh -
#
# @(#)security 5.3 (Berkeley) 5/28/91
# $Id$
#
PATH=/sbin:/bin:/usr/bin
host=`hostname -s`
echo "Subject: $host security check output"
LOG=/var/log
TMP=/tmp/_secure.$$
umask 027
echo "checking setuid files and devices:"
# don't have ncheck, but this does the equivalent of the commented out block.
# note that one of the original problem, the possibility of overrunning
# the args to ls, is still here...
#
# add this after -a when find supports isofs, and you don't want to check
# your cd roms
# \( ! \( -fstype isofs \) -o -prune \) \
# do skip checking cdroms
find / -fstype local -a \
\( -perm -u+s -or -perm -g+s \) | \
sed -e "/\/dev\//d" -e "s;//;/;g" | sort | xargs -n 20 ls -lgT > $TMP
#MP=`mount -t ufs | sed 's;/dev/;&r;' | awk '{ print $1 " " $3 }'`
#set $MP
#ls -lgT `while test $# -ge 2; do
# device=$1
# shift
# mount=$1
# shift
# ncheck -s $device | sed -e "/:$/d" -e "/\/dev\//d" \
# -e "s;[^/]*;$mount;" -e "s;//;/;g" | sort
#done` > $TMP
if cmp $LOG/setuid.today $TMP >/dev/null; then :; else
echo "$host setuid/device diffs:"
diff $LOG/setuid.today $TMP
mv $LOG/setuid.today $LOG/setuid.yesterday
mv $TMP $LOG/setuid.today
fi
rm -f $TMP
echo ""
echo ""
echo "checking for uids of 0:"
awk 'BEGIN {FS=":"} $3=="0" {print $1,$3}' /etc/master.passwd
|