summaryrefslogtreecommitdiffstats
path: root/etc/security
diff options
context:
space:
mode:
Diffstat (limited to 'etc/security')
-rw-r--r--etc/security234
1 files changed, 0 insertions, 234 deletions
diff --git a/etc/security b/etc/security
deleted file mode 100644
index 32d948b..0000000
--- a/etc/security
+++ /dev/null
@@ -1,234 +0,0 @@
-#!/bin/sh -
-#
-# Copyright (c) 2000 The FreeBSD Project
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-# SUCH DAMAGE.
-#
-# @(#)security 5.3 (Berkeley) 5/28/91
-# $FreeBSD$
-#
-
-PATH=/sbin:/bin:/usr/bin
-LC_ALL=C; export LC_ALL
-rc=0
-LOG=/var/log
-TMP=/var/run/_secure.$$
-
-separator () {
- echo ''
- echo ''
-}
-
-catmsgs() {
- find $LOG -name 'messages.*' -mtime -2 |
- sort -t. -r -n +1 -2 |
- xargs zcat -f
- [ -f $LOG/messages ] && cat $LOG/messages
-}
-
-sflag=FALSE ignore=
-while getopts as c
-do
- case "$c" in
- a) ignore="$ignore|^amd:";;
- s) sflag=TRUE;;
- esac
-done
-
-yesterday=`date -v-1d "+%b %e "`
-
-host=`hostname`
-
-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 problems, the possibility of overrunning
-# the args to ls, is still here...
-#
-MP=`mount -t ufs | grep -v " nosuid" | awk '{ print $3 }' | sort`
-set ${MP}
-while [ $# -ge 1 ]; do
- mount=$1
- shift
- find $mount -xdev -type f \
- \( -perm -u+x -or -perm -g+x -or -perm -o+x \) \
- \( -perm -u+s -or -perm -g+s \) -print0
-done | xargs -0 -n 20 ls -liTd | sort +10 > ${TMP}
-
-if [ ! -f ${LOG}/setuid.today ]; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "No ${LOG}/setuid.today"
- cp ${TMP} ${LOG}/setuid.today || rc=3
-fi
-
-if ! cmp ${LOG}/setuid.today ${TMP} >/dev/null; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "${host} setuid diffs:"
- diff -w ${LOG}/setuid.today ${TMP}
- mv ${LOG}/setuid.today ${LOG}/setuid.yesterday || rc=3
- mv ${TMP} ${LOG}/setuid.today || rc=3
-fi
-
-# Show changes in the way filesystems are mounted
-#
-[ -n "$ignore" ] && cmd="egrep -v ${ignore#|}" || cmd=cat
-if mount -p | $cmd > $TMP; then
- if [ ! -f $LOG/mount.today ]; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "No $LOG/mount.today"
- cp $TMP $LOG/mount.today || rc=3
- fi
- if ! cmp $LOG/mount.today $TMP >/dev/null 2>&1; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "$host changes in mounted filesystems:"
- diff -b $LOG/mount.today $TMP
- mv $LOG/mount.today $LOG/mount.yesterday || rc=3
- mv $TMP $LOG/mount.today || rc=3
- fi
-fi
-
-separator
-echo 'Checking for uids of 0:'
-n=$(awk -F: '/^#/ {next} $3==0 {print $1,$3}' /etc/master.passwd |
- tee /dev/stderr |
- sed -e '/^root 0$/d' -e '/^toor 0$/d' |
- wc -l)
-[ $n -gt 0 -a $rc -lt 1 ] && rc=1
-
-separator
-echo 'Checking for passwordless accounts:'
-n=$(awk -F: 'NF > 1 && $1 !~ /^[#+-]/ && $2=="" {print $0}' /etc/master.passwd |
- tee /dev/stderr | wc -l)
-[ $n -gt 0 -a $rc -lt 1 ] && rc=1
-
-# Show denied packets
-#
-if ipfw -a l 2>/dev/null | egrep "deny|reset|unreach" > ${TMP}; then
- if [ ! -f ${LOG}/ipfw.today ]; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "No ${LOG}/ipfw.today"
- cp ${TMP} ${LOG}/ipfw.today || rc=3
- fi
-
- if ! cmp ${LOG}/ipfw.today ${TMP} >/dev/null; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "${host} denied packets:"
- diff -b ${LOG}/ipfw.today ${TMP} | egrep "^>"
- mv ${LOG}/ipfw.today ${LOG}/ipfw.yesterday || rc=3
- mv ${TMP} ${LOG}/ipfw.today || rc=3
- fi
-fi
-
-# Show ipfw rules which have reached the log limit
-#
-IPFW_LOG_LIMIT=`sysctl -n net.inet.ip.fw.verbose_limit 2> /dev/null`
-if [ $? -eq 0 ] && [ "${IPFW_LOG_LIMIT}" -ne 0 ]; then
- ipfw -a l | grep " log " | perl -n -e \
- '/^\d+\s+(\d+)/; print if ($1 >= '$IPFW_LOG_LIMIT')' > ${TMP}
- if [ -s "${TMP}" ]; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo 'ipfw log limit reached:'
- cat ${TMP}
- fi
-fi
-
-# Show IPv6 denied packets
-#
-if ip6fw -a l 2>/dev/null | egrep "deny|reset|unreach" > ${TMP}; then
- if [ ! -f ${LOG}/ip6fw.today ]; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "No ${LOG}/ip6fw.today"
- cp ${TMP} ${LOG}/ip6fw.today || rc=3
- fi
-
- if ! cmp ${LOG}/ip6fw.today ${TMP} >/dev/null; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "${host} IPv6 denied packets:"
- diff -b ${LOG}/ip6fw.today ${TMP} | egrep "^>"
- mv ${LOG}/ip6fw.today ${LOG}/ip6fw.yesterday || rc=3
- mv ${TMP} ${LOG}/ip6fw.today || rc=3
- fi
-fi
-
-# Show ip6fw rules which have reached the log limit
-#
-IP6FW_LOG_LIMIT=`sysctl -n net.inet6.ip6.fw.verbose_limit 2> /dev/null`
-if [ $? -eq 0 ] && [ "${IP6FW_LOG_LIMIT}" -ne 0 ]; then
- ip6fw -a l | grep " log " | perl -n -e \
- '/^\d+\s+(\d+)/; print if ($1 >= '$IP6FW_LOG_LIMIT')' > ${TMP}
- if [ -s "${TMP}" ]; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo 'ip6fw log limit reached:'
- cat ${TMP}
- fi
-fi
-
-# Show kernel log messages
-#
-if dmesg -a 2>/dev/null > ${TMP}; then
- if [ ! -f ${LOG}/dmesg.today ]; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "No ${LOG}/dmesg.today"
- cp ${TMP} ${LOG}/dmesg.today || rc=3
- fi
-
- if ! cmp ${LOG}/dmesg.today ${TMP} >/dev/null 2>&1; then
- [ $rc -lt 1 ] && rc=1
- separator
- echo "${host} kernel log messages:"
- diff -b ${LOG}/dmesg.today ${TMP} | egrep "^>"
- mv ${LOG}/dmesg.today ${LOG}/dmesg.yesterday || rc=3
- mv ${TMP} ${LOG}/dmesg.today || rc=3
- fi
-fi
-
-# Show login failures
-#
-separator
-echo "${host} login failures:"
-n=$(catmsgs | grep -ia "^$yesterday.*login failure" | tee /dev/stderr | wc -l)
-[ $n -gt 0 -a $rc -lt 1 ] && rc=1
-
-# Show tcp_wrapper warning messages
-#
-separator
-echo "${host} refused connections:"
-n=$(catmsgs | grep -i "^$yesterday.*refused connect" | tee /dev/stderr | wc -l)
-[ $n -gt 0 -a $rc -lt 1 ] && rc=1
-
-rm -f ${TMP}
-
-exit $rc
OpenPOWER on IntegriCloud