安基网 首页 安全 攻防案例 查看内容

记一次生产环境脚本入侵检测与报警案例(简易版入侵检测系统)

2019-11-4 08:50| 投稿: xiaotiger |来自: 互联网


免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

摘要: 概述因业务需要,需监控某web站点目录下所有文件是否被恶意篡改(文件内容被改了),如果有就打印改动的文件名(发邮件),定时任务每3分钟执行一次。下面简单介绍下实现过程。一、生成md5验证文件1、文件的校验文件find /var/html/www/* -type f |xargs md5sum >/tmp/check/web_file_check.md5sum2 ...

概述

因业务需要,需监控某web站点目录下所有文件是否被恶意篡改(文件内容被改了),如果有就打印改动的文件名(发邮件),定时任务每3分钟执行一次。

下面简单介绍下实现过程。


一、生成md5验证文件

1、文件的校验文件

find /var/html/www/* -type f |xargs md5sum >/tmp/check/web_file_check.md5sum

2、目录的校验文件

tree /var/html/www/ -d >/tmp/check/web_dir_check.txt
md5sum /tmp/check/web_dir_check.txt
md5sum /tmp/check/web_dir_check.txt >/tmp/check/web_dir_check.md5sum

二、邮箱

Sendmail配置发送邮件的邮箱认证信息

vi /etc/mail.rc

--- 增加如下内容 ---
set from=yourname@your-domain.com
set smtp=mail.your-domain.com
set smtp-auth-user=yourname
set smtp-auth-password=yourpasswd
set smtp-auth=login


三、脚本内容

#!/bin/bash
#############################################################
# File Name: web_file_check.sh
# 前提: yum install -y tree
#############################################################
�6�7
Dir=/tmp/check/
Web_Dir=/tmp/html/
Check_File1=/tmp/check/web_file_check.md5sum
Check_File2=/tmp/check/web_dir_check.md5sum
Check_Dir=/tmp/check/web_dir_check.txt
Check_Out=/tmp/check/check_out.md5sum
Mail_info=/tmp/check/mail.txt
�6�7
Date=`date +%F_%T`
Host_Name=`hostname`
Host_IP=`hostname -I`
Email_Addr=huangwb@fslgz.com
�6�7
echo "=========================inital============================"
[ -d $Dir ] || mkdir -p $Dir
if [ ! -f $Check_File1 ]
then
find /tmp/html/* -type f |xargs md5sum >/tmp/check/web_file_check.md5sum
elif [ ! -f $Check_File2 ]
then
tree /tmp/html/ -d >/tmp/check/web_dir_check.txt
md5sum /tmp/check/web_dir_check.txt
md5sum /tmp/check/web_dir_check.txt >/tmp/check/web_dir_check.md5sum
fi
�6�7
echo "========================check_out============================"
md5sum -c $Check_File1 >$Check_Out 2>/dev/null
Back_num1=$?
tree -d $Web_Dir >$Check_Dir
md5sum -c $Check_File2 &>/dev/null
Back_num2=$?
�6�7
echo "======================开始校验并触发告警====================="
if [ $Back_num1 -ne 0 ]
then
echo "发生主机:$Host_Name 主机IP地址:$Host_IP" > $Mail_info
echo "在 $Date 的检测中发现以下文件被篡改" >>$Mail_info
echo "==================================================" >>$Mail_info
egrep -i "失败|failed" $Check_Out >>$Mail_info
echo "==================================================" >>$Mail_info
echo "请尽快登陆服务器进行处理!!!" >>$Mail_info

mail -s "【警告】web站点文件被篡改" -a $Check_File1 $Email_Addr <$Mail_info
fi
�6�7
if [ $Back_num2 -ne 0 ]
then
echo "目录检测信息" >$Mail_info
echo "在 $Date 的检测中发现目录被篡改" >>$Mail_info
mail -s "【警告】web站点目录被篡改" -a $Check_Dir $Email_Addr<$Check_Dir
fi
�6�7


四、测试

删除文件后执行结果

查看邮件:


觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~



小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

本文出自:https://www.toutiao.com/a6753599783396442636/

免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

 最新
返回顶部