在linux的shell命令中使用find查找php木马的方法
在linux的shell命令中使用find查找php木马的方法
服务器没有加入防篡改的功能,可能会被人恶意上传后门和木马。下面是学习啦小编收集整理的如何在linux的shell命令中使用find查找php木马,希望对大家有帮助~~
在linux的shell命令中使用find查找php木马的方法
工具/原料
shell find命令
shell md5sum命令
shell diff命令
方法/步骤
学习啦在线学习网 1生成md5基准参考
学习啦在线学习网 find ./ -name "*.php" -type f |xargs md5sum >aa.log
2修改其中的一个文件
1)echo "adad">>setting.php
学习啦在线学习网 2)md5sum校验文件的改变
/usr/bin/md5sum -c aa.log |grep FAILED
学习啦在线学习网 3新建立一个文件aaa.php
学习啦在线学习网 1)echo "daadfafdad">aaa.php
学习啦在线学习网 2)find ./ -name "*.php" -type f |xargs md5sum >a2.log
学习啦在线学习网 3)比较2次md5的变化
4find命令查找 新增的文件
学习啦在线学习网 echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 #find $Mulu -ctime -$Nday -type f >/datatest/hstlog/hst_newfile$Site
find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
END
学习啦在线学习网 find webshell 源码
学习啦在线学习网 自定义配置下面的目录
#指定目录
学习啦在线学习网 Mulu=目录位置
Dat=`date +%Y%m%d%H`
EXT="*.php"
Nday=2
Site="test.com"
hstlog=/datatest/hstlog
注:不仅仅检查php,还能检测所有的文本文件
源码
学习啦在线学习网 ```shell
学习啦在线学习网 #!/bin/bash
# find webshell 需要uninx 文档编码格式 换行用 echo -ne '\n'
学习啦在线学习网 # ./findwebshell [扩展名 [天数 [目录]]]
学习啦在线学习网 # 如果是* 需要用引号引起来 ./findwebshell '*' 2
# 如./findwebshell php 2
# 如./findwebshell php
学习啦在线学习网 # 如./findewebshll * 2
# 参数用 " class="main">
在linux的shell命令中使用find查找php木马的方法
服务器没有加入防篡改的功能,可能会被人恶意上传后门和木马。下面是学习啦小编收集整理的如何在linux的shell命令中使用find查找php木马,希望对大家有帮助~~
在linux的shell命令中使用find查找php木马的方法
工具/原料
学习啦在线学习网 shell find命令
学习啦在线学习网 shell md5sum命令
学习啦在线学习网 shell diff命令
方法/步骤
1生成md5基准参考
find ./ -name "*.php" -type f |xargs md5sum >aa.log
2修改其中的一个文件
1)echo "adad">>setting.php
2)md5sum校验文件的改变
学习啦在线学习网 /usr/bin/md5sum -c aa.log |grep FAILED
3新建立一个文件aaa.php
1)echo "daadfafdad">aaa.php
学习啦在线学习网 2)find ./ -name "*.php" -type f |xargs md5sum >a2.log
3)比较2次md5的变化
4find命令查找 新增的文件
学习啦在线学习网 echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 #find $Mulu -ctime -$Nday -type f >/datatest/hstlog/hst_newfile$Site
学习啦在线学习网 find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
END
find webshell 源码
学习啦在线学习网 自定义配置下面的目录
#指定目录
学习啦在线学习网 Mulu=目录位置
学习啦在线学习网 Dat=`date +%Y%m%d%H`
学习啦在线学习网 EXT="*.php"
Nday=2
学习啦在线学习网 Site="test.com"
学习啦在线学习网 hstlog=/datatest/hstlog
注:不仅仅检查php,还能检测所有的文本文件
源码
```shell
#!/bin/bash
# find webshell 需要uninx 文档编码格式 换行用 echo -ne '\n'
# ./findwebshell [扩展名 [天数 [目录]]]
# 如果是* 需要用引号引起来 ./findwebshell '*' 2
学习啦在线学习网 # 如./findwebshell php 2
# 如./findwebshell php
# 如./findewebshll * 2
学习啦在线学习网 # 参数用 "$1", "$2"
# 原理
学习啦在线学习网 # 1)对源程序做md5基准,2)定期校验md5是否发生变化
# ######配置##################
#指定目录
Mulu=目录位置
学习啦在线学习网 Dat=`date +%Y%m%d%H`
EXT="*.php"
Nday=2
Site="test.com"
hstlog=/datatest/hstlog
学习啦在线学习网 # #############################
LogMul=${hstlog}find
mkdir -p ${LogMul}
学习啦在线学习网 if [ -n "$1" ] #如果$1即参数1不为空,又即存在参数1
then
EXT="*.$1" # 使用引号来使#被转义
fi
if [ -n "$2" ] #如果$2即参数1不为空,又即存在参数1
then
Nday="$2" # 使用引号来使#被转义
fi
学习啦在线学习网 if [ -n "$3" ] #如果$3即参数1不为空,又即存在参数1
then
学习啦在线学习网 Mulu="$3" # 使用引号来使#被转义
fi
学习啦在线学习网 if [ -n "$4" ] #如果$3即参数1不为空,又即存在参数1
then
学习啦在线学习网 Site="$4" # 使用引号来使#被转义
fi
#md5 file
if [ ! -f ${hstlog}/hst$Site ]
then
学习啦在线学习网 mkdir -p ${hstlog}
学习啦在线学习网 find $Mulu -name "*.php" -type f|xargs md5sum >${hstlog}/hst$Site
fi
logFile=$LogMul/${Site}_findwebshell_$Dat.log
echo "---查找时间$Dat----" > $logFile
echo -ne '\n\n\n\n#=begin\n' >> $logFile
学习啦在线学习网 # ------------md5 file 修改
echo -ne "---md5fiel检测 ----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 /usr/bin/md5sum -c ${hstlog}/hst$Site|grep FAILED >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
# ------ 新增的文件
echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 # ------ 仅修改的文件
学习啦在线学习网 echo -ne "---仅修改的文件----$Mulu-- {$EXT}---" >> $logFile
find $Mulu -name "$EXT" -mtime -$Nday -ctime +$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
# 2天内修改的文件
echo -ne "---最近{$Nday}天修改的 ----$Mulu-- {$EXT}---" >> $logFile
#echo -ne "\n---$(pwd) === $path---\n" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" -mtime -$Nday >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 echo "---eval----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "eval" >> $logFile
#增加一句话木马的变形查找
echo "---eval 一句话木马 变形查找----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "$\w*();" >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
echo "---shell_exec----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "shell_exec" >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
echo "---base64_decode----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "base64_decode" >> $logFile
echo -ne '\n#=end\n\n\n\n' >> $logFile
############## 发邮件:
#如果开启sendmail,/etc/init.d/sendmail help 可以使用下面的代码
# 测试 echo “hello world" | mail -s "Subject" 邮箱地址
echo -ne '\n\n\n\n\n 发邮件ok\n\n\n\n\n ' >> $logFile
from_name="邮箱地址"
学习啦在线学习网 from="邮箱地址"
to="邮箱地址"
学习啦在线学习网 email_title="Test Mail"
#email_content="$(pwd)/$logFile"
学习啦在线学习网 email_content="$logFile"
email_subject="Log($Dat) $Site -webshellfinder "
echo -e "To: \"${email_title}\" <${to}>\nFrom: \"${from_name}\" <${from}>\nSubject: ${email_subject}\n\n`cat ${email_content}`" | /usr/sbin/sendmail -t
```
如何在linux的shell命令中使用find查找php木马相关文章:
# 原理
# 1)对源程序做md5基准,2)定期校验md5是否发生变化
学习啦在线学习网 # ######配置##################
#指定目录
Mulu=目录位置
Dat=`date +%Y%m%d%H`
EXT="*.php"
Nday=2
Site="test.com"
hstlog=/datatest/hstlog
学习啦在线学习网 # #############################
LogMul=${hstlog}find
mkdir -p ${LogMul}
if [ -n " class="main">
在linux的shell命令中使用find查找php木马的方法
在linux的shell命令中使用find查找php木马的方法
在linux的shell命令中使用find查找php木马的方法
fi
if [ -n "
学习啦在线学习网在linux的shell命令中使用find查找php木马的方法
服务器没有加入防篡改的功能,可能会被人恶意上传后门和木马。下面是学习啦小编收集整理的如何在linux的shell命令中使用find查找php木马,希望对大家有帮助~~
在linux的shell命令中使用find查找php木马的方法
工具/原料
学习啦在线学习网 shell find命令
shell md5sum命令
shell diff命令
方法/步骤
1生成md5基准参考
find ./ -name "*.php" -type f |xargs md5sum >aa.log
2修改其中的一个文件
1)echo "adad">>setting.php
学习啦在线学习网 2)md5sum校验文件的改变
/usr/bin/md5sum -c aa.log |grep FAILED
3新建立一个文件aaa.php
学习啦在线学习网 1)echo "daadfafdad">aaa.php
学习啦在线学习网 2)find ./ -name "*.php" -type f |xargs md5sum >a2.log
学习啦在线学习网 3)比较2次md5的变化
学习啦在线学习网 4find命令查找 新增的文件
学习啦在线学习网 echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
#find $Mulu -ctime -$Nday -type f >/datatest/hstlog/hst_newfile$Site
find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
END
学习啦在线学习网 find webshell 源码
自定义配置下面的目录
#指定目录
Mulu=目录位置
Dat=`date +%Y%m%d%H`
EXT="*.php"
Nday=2
Site="test.com"
学习啦在线学习网 hstlog=/datatest/hstlog
学习啦在线学习网 注:不仅仅检查php,还能检测所有的文本文件
源码
```shell
#!/bin/bash
# find webshell 需要uninx 文档编码格式 换行用 echo -ne '\n'
学习啦在线学习网 # ./findwebshell [扩展名 [天数 [目录]]]
# 如果是* 需要用引号引起来 ./findwebshell '*' 2
学习啦在线学习网 # 如./findwebshell php 2
# 如./findwebshell php
# 如./findewebshll * 2
学习啦在线学习网 # 参数用 "$1", "$2"
# 原理
# 1)对源程序做md5基准,2)定期校验md5是否发生变化
# ######配置##################
#指定目录
学习啦在线学习网 Mulu=目录位置
Dat=`date +%Y%m%d%H`
学习啦在线学习网 EXT="*.php"
Nday=2
Site="test.com"
hstlog=/datatest/hstlog
学习啦在线学习网 # #############################
学习啦在线学习网 LogMul=${hstlog}find
学习啦在线学习网 mkdir -p ${LogMul}
if [ -n "$1" ] #如果$1即参数1不为空,又即存在参数1
then
学习啦在线学习网 EXT="*.$1" # 使用引号来使#被转义
fi
学习啦在线学习网 if [ -n "$2" ] #如果$2即参数1不为空,又即存在参数1
then
学习啦在线学习网 Nday="$2" # 使用引号来使#被转义
fi
学习啦在线学习网 if [ -n "$3" ] #如果$3即参数1不为空,又即存在参数1
then
学习啦在线学习网 Mulu="$3" # 使用引号来使#被转义
fi
学习啦在线学习网 if [ -n "$4" ] #如果$3即参数1不为空,又即存在参数1
then
Site="$4" # 使用引号来使#被转义
fi
#md5 file
if [ ! -f ${hstlog}/hst$Site ]
then
mkdir -p ${hstlog}
学习啦在线学习网 find $Mulu -name "*.php" -type f|xargs md5sum >${hstlog}/hst$Site
fi
logFile=$LogMul/${Site}_findwebshell_$Dat.log
echo "---查找时间$Dat----" > $logFile
学习啦在线学习网 echo -ne '\n\n\n\n#=begin\n' >> $logFile
学习啦在线学习网 # ------------md5 file 修改
echo -ne "---md5fiel检测 ----$Mulu-- {$EXT}---" >> $logFile
/usr/bin/md5sum -c ${hstlog}/hst$Site|grep FAILED >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 # ------ 新增的文件
echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
# ------ 仅修改的文件
学习啦在线学习网 echo -ne "---仅修改的文件----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" -mtime -$Nday -ctime +$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
# 2天内修改的文件
echo -ne "---最近{$Nday}天修改的 ----$Mulu-- {$EXT}---" >> $logFile
#echo -ne "\n---$(pwd) === $path---\n" >> $logFile
find $Mulu -name "$EXT" -mtime -$Nday >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
echo "---eval----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "eval" >> $logFile
学习啦在线学习网 #增加一句话木马的变形查找
echo "---eval 一句话木马 变形查找----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "$\w*();" >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
echo "---shell_exec----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "shell_exec" >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
echo "---base64_decode----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "base64_decode" >> $logFile
学习啦在线学习网 echo -ne '\n#=end\n\n\n\n' >> $logFile
学习啦在线学习网 ############## 发邮件:
#如果开启sendmail,/etc/init.d/sendmail help 可以使用下面的代码
# 测试 echo “hello world" | mail -s "Subject" 邮箱地址
echo -ne '\n\n\n\n\n 发邮件ok\n\n\n\n\n ' >> $logFile
学习啦在线学习网 from_name="邮箱地址"
学习啦在线学习网 from="邮箱地址"
学习啦在线学习网 to="邮箱地址"
学习啦在线学习网 email_title="Test Mail"
#email_content="$(pwd)/$logFile"
email_content="$logFile"
email_subject="Log($Dat) $Site -webshellfinder "
echo -e "To: \"${email_title}\" <${to}>\nFrom: \"${from_name}\" <${from}>\nSubject: ${email_subject}\n\n`cat ${email_content}`" | /usr/sbin/sendmail -t
```
如何在linux的shell命令中使用find查找php木马相关文章:
学习啦在线学习网在linux的shell命令中使用find查找php木马的方法
服务器没有加入防篡改的功能,可能会被人恶意上传后门和木马。下面是学习啦小编收集整理的如何在linux的shell命令中使用find查找php木马,希望对大家有帮助~~
在linux的shell命令中使用find查找php木马的方法
工具/原料
学习啦在线学习网 shell find命令
学习啦在线学习网 shell md5sum命令
shell diff命令
方法/步骤
学习啦在线学习网 1生成md5基准参考
学习啦在线学习网 find ./ -name "*.php" -type f |xargs md5sum >aa.log
2修改其中的一个文件
1)echo "adad">>setting.php
学习啦在线学习网 2)md5sum校验文件的改变
/usr/bin/md5sum -c aa.log |grep FAILED
3新建立一个文件aaa.php
1)echo "daadfafdad">aaa.php
2)find ./ -name "*.php" -type f |xargs md5sum >a2.log
学习啦在线学习网 3)比较2次md5的变化
4find命令查找 新增的文件
echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
#find $Mulu -ctime -$Nday -type f >/datatest/hstlog/hst_newfile$Site
find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
END
学习啦在线学习网 find webshell 源码
自定义配置下面的目录
#指定目录
Mulu=目录位置
Dat=`date +%Y%m%d%H`
EXT="*.php"
Nday=2
Site="test.com"
hstlog=/datatest/hstlog
注:不仅仅检查php,还能检测所有的文本文件
源码
```shell
#!/bin/bash
# find webshell 需要uninx 文档编码格式 换行用 echo -ne '\n'
# ./findwebshell [扩展名 [天数 [目录]]]
# 如果是* 需要用引号引起来 ./findwebshell '*' 2
# 如./findwebshell php 2
# 如./findwebshell php
# 如./findewebshll * 2
# 参数用 "$1", "$2"
# 原理
# 1)对源程序做md5基准,2)定期校验md5是否发生变化
# ######配置##################
#指定目录
Mulu=目录位置
Dat=`date +%Y%m%d%H`
EXT="*.php"
Nday=2
Site="test.com"
学习啦在线学习网 hstlog=/datatest/hstlog
# #############################
学习啦在线学习网 LogMul=${hstlog}find
mkdir -p ${LogMul}
if [ -n "$1" ] #如果$1即参数1不为空,又即存在参数1
then
学习啦在线学习网 EXT="*.$1" # 使用引号来使#被转义
fi
学习啦在线学习网 if [ -n "$2" ] #如果$2即参数1不为空,又即存在参数1
then
学习啦在线学习网 Nday="$2" # 使用引号来使#被转义
fi
if [ -n "$3" ] #如果$3即参数1不为空,又即存在参数1
then
Mulu="$3" # 使用引号来使#被转义
fi
学习啦在线学习网 if [ -n "$4" ] #如果$3即参数1不为空,又即存在参数1
then
Site="$4" # 使用引号来使#被转义
fi
学习啦在线学习网 #md5 file
if [ ! -f ${hstlog}/hst$Site ]
then
mkdir -p ${hstlog}
find $Mulu -name "*.php" -type f|xargs md5sum >${hstlog}/hst$Site
fi
logFile=$LogMul/${Site}_findwebshell_$Dat.log
学习啦在线学习网 echo "---查找时间$Dat----" > $logFile
echo -ne '\n\n\n\n#=begin\n' >> $logFile
学习啦在线学习网 # ------------md5 file 修改
学习啦在线学习网 echo -ne "---md5fiel检测 ----$Mulu-- {$EXT}---" >> $logFile
/usr/bin/md5sum -c ${hstlog}/hst$Site|grep FAILED >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
# ------ 新增的文件
学习啦在线学习网 echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 # ------ 仅修改的文件
echo -ne "---仅修改的文件----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" -mtime -$Nday -ctime +$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
# 2天内修改的文件
echo -ne "---最近{$Nday}天修改的 ----$Mulu-- {$EXT}---" >> $logFile
#echo -ne "\n---$(pwd) === $path---\n" >> $logFile
find $Mulu -name "$EXT" -mtime -$Nday >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
echo "---eval----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "eval" >> $logFile
学习啦在线学习网 #增加一句话木马的变形查找
echo "---eval 一句话木马 变形查找----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "$\w*();" >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
echo "---shell_exec----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "shell_exec" >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
echo "---base64_decode----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "base64_decode" >> $logFile
学习啦在线学习网 echo -ne '\n#=end\n\n\n\n' >> $logFile
学习啦在线学习网 ############## 发邮件:
#如果开启sendmail,/etc/init.d/sendmail help 可以使用下面的代码
学习啦在线学习网 # 测试 echo “hello world" | mail -s "Subject" 邮箱地址
echo -ne '\n\n\n\n\n 发邮件ok\n\n\n\n\n ' >> $logFile
学习啦在线学习网 from_name="邮箱地址"
学习啦在线学习网 from="邮箱地址"
学习啦在线学习网 to="邮箱地址"
学习啦在线学习网 email_title="Test Mail"
学习啦在线学习网 #email_content="$(pwd)/$logFile"
学习啦在线学习网 email_content="$logFile"
学习啦在线学习网 email_subject="Log($Dat) $Site -webshellfinder "
学习啦在线学习网 echo -e "To: \"${email_title}\" <${to}>\nFrom: \"${from_name}\" <${from}>\nSubject: ${email_subject}\n\n`cat ${email_content}`" | /usr/sbin/sendmail -t
```
学习啦在线学习网 如何在linux的shell命令中使用find查找php木马相关文章:
then
Nday="
学习啦在线学习网在linux的shell命令中使用find查找php木马的方法
学习啦在线学习网 服务器没有加入防篡改的功能,可能会被人恶意上传后门和木马。下面是学习啦小编收集整理的如何在linux的shell命令中使用find查找php木马,希望对大家有帮助~~
在linux的shell命令中使用find查找php木马的方法
工具/原料
学习啦在线学习网 shell find命令
shell md5sum命令
学习啦在线学习网 shell diff命令
方法/步骤
1生成md5基准参考
学习啦在线学习网 find ./ -name "*.php" -type f |xargs md5sum >aa.log
2修改其中的一个文件
1)echo "adad">>setting.php
学习啦在线学习网 2)md5sum校验文件的改变
学习啦在线学习网 /usr/bin/md5sum -c aa.log |grep FAILED
3新建立一个文件aaa.php
学习啦在线学习网 1)echo "daadfafdad">aaa.php
学习啦在线学习网 2)find ./ -name "*.php" -type f |xargs md5sum >a2.log
3)比较2次md5的变化
学习啦在线学习网 4find命令查找 新增的文件
echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 #find $Mulu -ctime -$Nday -type f >/datatest/hstlog/hst_newfile$Site
find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
END
find webshell 源码
学习啦在线学习网 自定义配置下面的目录
#指定目录
Mulu=目录位置
Dat=`date +%Y%m%d%H`
学习啦在线学习网 EXT="*.php"
Nday=2
学习啦在线学习网 Site="test.com"
学习啦在线学习网 hstlog=/datatest/hstlog
注:不仅仅检查php,还能检测所有的文本文件
源码
学习啦在线学习网 ```shell
#!/bin/bash
学习啦在线学习网 # find webshell 需要uninx 文档编码格式 换行用 echo -ne '\n'
学习啦在线学习网 # ./findwebshell [扩展名 [天数 [目录]]]
# 如果是* 需要用引号引起来 ./findwebshell '*' 2
# 如./findwebshell php 2
# 如./findwebshell php
# 如./findewebshll * 2
学习啦在线学习网 # 参数用 "$1", "$2"
# 原理
# 1)对源程序做md5基准,2)定期校验md5是否发生变化
# ######配置##################
#指定目录
Mulu=目录位置
Dat=`date +%Y%m%d%H`
学习啦在线学习网 EXT="*.php"
Nday=2
Site="test.com"
学习啦在线学习网 hstlog=/datatest/hstlog
学习啦在线学习网 # #############################
学习啦在线学习网 LogMul=${hstlog}find
学习啦在线学习网 mkdir -p ${LogMul}
if [ -n "$1" ] #如果$1即参数1不为空,又即存在参数1
then
学习啦在线学习网 EXT="*.$1" # 使用引号来使#被转义
fi
if [ -n "$2" ] #如果$2即参数1不为空,又即存在参数1
then
Nday="$2" # 使用引号来使#被转义
fi
if [ -n "$3" ] #如果$3即参数1不为空,又即存在参数1
then
Mulu="$3" # 使用引号来使#被转义
fi
if [ -n "$4" ] #如果$3即参数1不为空,又即存在参数1
then
学习啦在线学习网 Site="$4" # 使用引号来使#被转义
fi
#md5 file
学习啦在线学习网 if [ ! -f ${hstlog}/hst$Site ]
then
学习啦在线学习网 mkdir -p ${hstlog}
find $Mulu -name "*.php" -type f|xargs md5sum >${hstlog}/hst$Site
fi
logFile=$LogMul/${Site}_findwebshell_$Dat.log
echo "---查找时间$Dat----" > $logFile
学习啦在线学习网 echo -ne '\n\n\n\n#=begin\n' >> $logFile
学习啦在线学习网 # ------------md5 file 修改
学习啦在线学习网 echo -ne "---md5fiel检测 ----$Mulu-- {$EXT}---" >> $logFile
/usr/bin/md5sum -c ${hstlog}/hst$Site|grep FAILED >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
# ------ 新增的文件
学习啦在线学习网 echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 # ------ 仅修改的文件
echo -ne "---仅修改的文件----$Mulu-- {$EXT}---" >> $logFile
find $Mulu -name "$EXT" -mtime -$Nday -ctime +$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 # 2天内修改的文件
echo -ne "---最近{$Nday}天修改的 ----$Mulu-- {$EXT}---" >> $logFile
#echo -ne "\n---$(pwd) === $path---\n" >> $logFile
find $Mulu -name "$EXT" -mtime -$Nday >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 echo "---eval----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "eval" >> $logFile
#增加一句话木马的变形查找
学习啦在线学习网 echo "---eval 一句话木马 变形查找----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "$\w*();" >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
echo "---shell_exec----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "shell_exec" >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 echo "---base64_decode----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "base64_decode" >> $logFile
echo -ne '\n#=end\n\n\n\n' >> $logFile
############## 发邮件:
学习啦在线学习网 #如果开启sendmail,/etc/init.d/sendmail help 可以使用下面的代码
学习啦在线学习网 # 测试 echo “hello world" | mail -s "Subject" 邮箱地址
echo -ne '\n\n\n\n\n 发邮件ok\n\n\n\n\n ' >> $logFile
学习啦在线学习网 from_name="邮箱地址"
from="邮箱地址"
to="邮箱地址"
email_title="Test Mail"
#email_content="$(pwd)/$logFile"
学习啦在线学习网 email_content="$logFile"
email_subject="Log($Dat) $Site -webshellfinder "
echo -e "To: \"${email_title}\" <${to}>\nFrom: \"${from_name}\" <${from}>\nSubject: ${email_subject}\n\n`cat ${email_content}`" | /usr/sbin/sendmail -t
```
学习啦在线学习网 如何在linux的shell命令中使用find查找php木马相关文章:
fi
学习啦在线学习网 if [ -n "" ] #如果即参数1不为空,又即存在参数1
then
学习啦在线学习网 Mulu="" # 使用引号来使#被转义
fi
if [ -n "" ] #如果即参数1不为空,又即存在参数1
then
Site="" # 使用引号来使#被转义
fi
学习啦在线学习网 #md5 file
学习啦在线学习网 if [ ! -f ${hstlog}/hst$Site ]
then
mkdir -p ${hstlog}
find $Mulu -name "*.php" -type f|xargs md5sum >${hstlog}/hst$Site
fi
logFile=$LogMul/${Site}_findwebshell_$Dat.log
学习啦在线学习网 echo "---查找时间$Dat----" > $logFile
echo -ne '\n\n\n\n#=begin\n' >> $logFile
# ------------md5 file 修改
学习啦在线学习网 echo -ne "---md5fiel检测 ----$Mulu-- {$EXT}---" >> $logFile
/usr/bin/md5sum -c ${hstlog}/hst$Site|grep FAILED >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
# ------ 新增的文件
学习啦在线学习网 echo -ne "---新增文件----$Mulu-- {$EXT}---" >> $logFile
find $Mulu -name "$EXT" -ctime -$Nday -type f >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
学习啦在线学习网 # ------ 仅修改的文件
学习啦在线学习网 echo -ne "---仅修改的文件----$Mulu-- {$EXT}---" >> $logFile
find $Mulu -name "$EXT" -mtime -$Nday -ctime +$Nday -type f >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
# 2天内修改的文件
学习啦在线学习网 echo -ne "---最近{$Nday}天修改的 ----$Mulu-- {$EXT}---" >> $logFile
学习啦在线学习网 #echo -ne "\n---$(pwd) === $path---\n" >> $logFile
find $Mulu -name "$EXT" -mtime -$Nday >> $logFile
echo -ne '\n\n\n\n\n' >> $logFile
echo "---eval----" >> $logFile
find $Mulu -name "$EXT" |xargs grep "eval" >> $logFile
学习啦在线学习网 #增加一句话木马的变形查找
echo "---eval 一句话木马 变形查找----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "$\w*();" >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
echo "---shell_exec----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "shell_exec" >> $logFile
学习啦在线学习网 echo -ne '\n\n\n\n\n' >> $logFile
echo "---base64_decode----" >> $logFile
学习啦在线学习网 find $Mulu -name "$EXT" |xargs grep "base64_decode" >> $logFile
echo -ne '\n#=end\n\n\n\n' >> $logFile
############## 发邮件:
学习啦在线学习网 #如果开启sendmail,/etc/init.d/sendmail help 可以使用下面的代码
# 测试 echo “hello world" | mail -s "Subject" 邮箱地址
echo -ne '\n\n\n\n\n 发邮件ok\n\n\n\n\n ' >> $logFile
from_name="邮箱地址"
学习啦在线学习网 from="邮箱地址"
学习啦在线学习网 to="邮箱地址"
email_title="Test Mail"
#email_content="$(pwd)/$logFile"
学习啦在线学习网 email_content="$logFile"
学习啦在线学习网 email_subject="Log($Dat) $Site -webshellfinder "
学习啦在线学习网 echo -e "To: \"${email_title}\" <${to}>\nFrom: \"${from_name}\" <${from}>\nSubject: ${email_subject}\n\n`cat ${email_content}`" | /usr/sbin/sendmail -t
```
学习啦在线学习网 如何在linux的shell命令中使用find查找php木马相关文章: