Shell脚本根据Hash值判断web服务器页面是不是被更改
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell脚本根据Hash值判断web服务器页面是不是被更改相关的知识,希望对你有一定的参考价值。
参考技术A 当页面被恶意木马攻击更改后,监控状态脚本并不能检测出异常,但是Web的页面已经存在相当大的安全隐患.所以能不能寻找到一种方法判断自己所负责的Web服务器页面内容是否遭到恶意木马的攻击和修改显得十分重要.通过Hash值的方法可以非常高效的检测到WEB服务器页面的数据内容是否完整,如果页面内容被恶意木马更改,新页面的Hash值是不同于原始的Hash值的,我们就可以以此作为判断的依据!获取Hash值的方法:
md5sum /var/www/html/index.html
url="Web服务器页面地址"
如 http://127.0.0.1/index.html
date=$(date +"%Y-%m-%d %H:%M:%S")
source_hash="获取到的原始Hash值"
url_hash=$(curl -s $url | md5sum | cut -d ' ' -f1)
if [ "$url_hash" != "$source_hash" ];then
mail -s Hash is changed root@localhost <<- EOF
检测时间为:$date
数据完整性检验失败,Hash值不同,$url,页面数据被更改
请尽快排查异常
EOF
else
cat >> /var/log/http_check.log <<-EOF
$date "$url,数据完整性校验正常"
EOF
fi
chmod +x /check_http_hash.sh
/check_http_hash.sh
cat /var/log/http_check.log
2019-11-23 15:38:55 "http://127.0.0.1/index.html,数据完整性校验正常"
修改/var/www/html/index.html文件的内容,模拟网站页面被更改的情况!
/check_http_hash.sh
检测时间为:2019-11-23 16:00:08
数据完整性检验失败,Hash值不同,http://127.0.0.1/index.html,页面数据被更改
请尽快排查异常
这一个脚本跟上一篇文章的 http服务状态监测脚本 两者相辅相成,也可以考虑把它们两个合并成同一个脚本!并且一同添加到周期性计划任务中!
以上是关于Shell脚本根据Hash值判断web服务器页面是不是被更改的主要内容,如果未能解决你的问题,请参考以下文章