#!/bin/sh ################################################################################# # # Lynis # ------------------ # # Copyright 2007-2015, Michael Boelen (michael@rootkit.nl), The Netherlands # Web site: http://www.rootkit.nl # # Lynis comes with ABSOLUTELY NO WARRANTY. This is free software, and you are # welcome to redistribute it under the terms of the GNU General Public License. # See LICENSE file for usage of this software. # ################################################################################# # # Kernel # ################################################################################# # InsertSection "Kernel Hardening" # ################################################################################# # # Test : KRNL-6000 # Description : Check sysctl parameters # Sysctl : net.ipv4.icmp_ingore_bogus_error_responses (=1) if [ ! "${SYSCTL_READKEY}" = "" ]; then PREQS_MET="YES"; else PREQS_MET="NO"; fi Register --test-no KRNL-6000 --preqs-met ${PREQS_MET} --weight L --network NO --description "Check sysctl key pairs in scan profile" if [ ${SKIPTEST} -eq 0 ]; then N=0 Display --indent 2 --text "- Comparing sysctl key pairs with scan profile" FIND=`grep "^sysctl:" ${PROFILE} | sed 's/ /:space:/g'` for I in ${FIND}; do tFINDkey=`echo ${I} | awk -F: '{ print $2 }'` tFINDexpvalue=`echo ${I} | awk -F: '{ print $3 }'` tFINDhp=`echo ${I} | awk -F: '{ print $4 }' | grep "[0-9]"` tFINDdesc=`echo ${I} | awk -F: '{ print $5 }' | sed 's/:space:/ /g'` tFINDcurvalue=`${SYSCTL_READKEY} ${tFINDkey} 2> /dev/null` if [ ! "${tFINDcurvalue}" = "" ]; then if [ "${tFINDexpvalue}" = "${tFINDcurvalue}" ]; then logtext "Result: sysctl key ${tFINDkey} contains equal expected and current value (${tFINDexpvalue})" Display --indent 4 --text "- ${tFINDkey} (exp: ${tFINDexpvalue})" --result OK --color GREEN AddHP ${tFINDhp} ${tFINDhp} else logtext "Result: sysctl key ${tFINDkey} has a different value than expected in scan profile. Expected=${tFINDexpvalue}, Real=${tFINDcurvalue}" Display --indent 4 --text "- ${tFINDkey} (exp: ${tFINDexpvalue})" --result DIFFERENT --color RED AddHP 0 ${tFINDhp} N=1 fi else logtext "Result: key ${tFINDkey} does not exist on this machine" fi done # Add suggestion if one or more sysctls have a different value than scan profile if [ ${N} -eq 1 ]; then ReportSuggestion ${TEST_NO} "One or more sysctl values differ from the scan profile and could be tweaked" fi fi # ################################################################################# # wait_for_keypress # #================================================================================ # Lynis - Copyright 2007-2015, Michael Boelen - http://cisofy.com - The Netherlands