ROOTPLOIT
Server: Apache
System: Linux node6122.myfcloud.com 6.14.3-x86_64-linode168 #1 SMP PREEMPT_DYNAMIC Mon Apr 21 19:47:55 EDT 2025 x86_64
User: bashacomputer (1004)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib64/nagios/plugins/check_a2_largelogs.shared
#!/bin/bash
# OPSTEAM-14968 - script to find log files larger than 3GB
# BFENG-749 - log file names
#
INTERVAL=86400                         # interval to find large logs
LOG="/tmp/check_largelogs_cache.log"   # default path to log file

# cacheage function
cacheage () {
  file=$1
  now=$(date +%s)
  mtime=$(stat -c %Y "$file")
  delta=$(( now - mtime ))
  echo $delta
}

# generate cache function
generate_cache () {
  large_logs=$(find /var/log/ -type f -size +3G \( ! -iname "lastlog" \) | tr '\n' '|')
  if [[ -n "$large_logs" ]]; then
    # Remove trailing pipe for cleaner output
    large_logs=${large_logs%|}
    printf 'large logs found in /var/log directory: %s\n' "$large_logs" > $LOG
    exit 2
  fi
}

# generate cache
if [ ! -e $LOG ]; then
  touch $LOG
  generate_cache
else
  age=$(cacheage $LOG)
  if [ "$age" -ge "$INTERVAL" ]; then
    generate_cache
  fi
fi

# this will output large logs status from cache
if [ -s "$LOG" ]; then
  cat $LOG
fi