#!/bin/bash #################################################################################################### #### author: SlickStack ############################################################################ #### link: https://slickstack.io ################################################################### #### mirror: https://mirrors.slickstack.io/bash/ss-scan-malware.txt ################################ #### path: /var/www/ss-scan-malware ################################################################ #### destination: n/a (not a boilerplate) ########################################################## #### purpose: Scans the entire SlickStack directory tree (only) for malware using ClamAV ########### #### module version: ClamAV 0.101.x ################################################################ #### sourced by: ss core cron jobs ################################################################# #################################################################################################### ## SS-SCAN-MALWARE SCANS AND LOGS ANY COMMON LINUX MALWARE TO: /var/www/logs/clamav.log ## ## USE SS-CLEAN TO DELETE GENERAL JUNK FILES OR SS-OPTIMIZE TO IMPROVE DATABASE ## ## source ss-config ## source /var/www/ss-config ## source ss-functions ## source /var/www/ss-functions ## BELOW THIS RELIES ON SS-CONFIG AND SS-FUNCTIONS #################################################################################################### #### TABLE OF CONTENTS (SS-Scan-Malware) ########################################################### #################################################################################################### ## this is a brief summary of the different code snippets you will find in this script ## ## each section should be commented so you understand what is being accomplished ## ## A. Touch Timestamp File ## B. Message (Begin Script) #################################################################################################### #### A. SS-Scan-Malware: Touch Timestamp File ###################################################### #################################################################################################### ## this is a dummy timestamp file that will remember the last time this script was run ## ## it can be useful for developer reference and is sometimes used by SlickStack ## ## script timestamp ## ss_touch "${TIMESTAMP_SS_SCAN_MALWARE}" #################################################################################################### #### B. SS-Scan-Malware: Message (Begin Script) #################################################### #################################################################################################### ## this is a simple message that announces to the shell the purpose of this bash script ## ## it will only be noticed by sudo users who manually call ss core bash scripts ## ## echo message ## ss_echo "${COLOR_INFO}Running ss-scan-malware... ${COLOR_RESET}" #################################################################################################### #### SS-Scan-Malware: Scan SlickStack Directory Tree For Malware (Via ClamAV) ###################### #################################################################################################### ## on average the ClamAV scanning process takes around 5-10 minutes on typical servers ## ## verbose results are printed via CLI (also saved to /var/www/logs/clamav.log) ## ## ensure ClamAV log file exists ## if [[ ! -f "/var/www/logs/clamav.log" ]]; then touch "/var/www/logs/clamav.log" chown clamav:clamav /var/www/logs/clamav.log fi ## scan SlickStack directory tree (only) for common malware ## clamscan -ir /var/www -l /var/www/logs/clamav.log #################################################################################################### #### PLACEHOLDER: Reset Permissions (SlickStack Scripts) ########################################### #################################################################################################### ## we include this permissions reset in all cron jobs and bash scripts for redundancy ## ## chmod 0700 means only the root/sudo users can execute any SlickStack scripts ## ## THIS SNIPPET DOES NOT RELY ON SS-CONFIG OR SS-FUNCTIONS ## SNIPPET: ss bash scripts, ss cron jobs ## UPDATED: 02JUL2022 chown root:root /var/www/ss* ## must be root:root chown root:root /var/www/crons/*cron* ## must be root:root chown root:root /var/www/crons/custom/*cron* ## must be root:root chmod 0700 /var/www/ss* ## 0700 means only root/sudo can execute chmod 0700 /var/www/crons/*cron* ## 0700 means only root/sudo can execute chmod 0700 /var/www/crons/custom/*cron* ## 0700 means only root/sudo can execute #################################################################################################### #### SlickStack: External References Used To Improve This Script (Thanks, Interwebz) ############### #################################################################################################### ## Ref: