我在专用服务器上托管的一个网站被黑客入侵了。一些图片被感染了,比如<?php eval(base64_decode(....));?>
。我正在寻找一个通用的 shell 命令,它能够读取最常见图像类型(jpg、gif、tiff 等)的标头。
我试过杰黑德和其他的一样,jut jhead 只能从 JPG 读取 EXIF 数据。
目的是找到所有受感染的图像,如下所示:
find -type f \( -iname "*jpg" -or -iname "*.jpeg" -or ... \) -exec sh -c 'magicimgheadersdisplay "{}" | grep eval" \;
答案1
grep -l
可用于报告受感染的文件。尝试以下命令
find -type f \( -iname "*jpg" -or -iname "*.jpeg" -or ... \) -print0 | xargs -0 grep -l '<?php eval(base64_decode'
和-print0
参数-0
允许文件名和路径包含空格。
答案2
strings
将显示在文件中找到的任何可打印位。从那里您可以将其输入grep
以查找其中的文本。