来源:自学PHP网 时间:2015-04-17 13:03 作者: 阅读:次
[导读] 如果没有保留快照、Hash、时间戳等原始对比信息的话,这个只能遍历了判断文件修改时间的方法不可取,因为攻击者极大可能修改了文件时间。如果遍历的话,高效的处理算法是很关键...
如果没有保留快照、Hash、时间戳等原始对比信息的话,这个只能遍历了……
判断文件修改时间的方法不可取,因为攻击者极大可能修改了文件时间。 如果遍历的话,高效的处理算法是很关键的。 如果有Web 访问日志的话,我想,首先可以过滤掉一些0 访问量的文件,可以大大的减少需要遍历的文件数量,但是有个缺点,如果是图片包含方式的木马,虽然该图片是0 访问,但是仍被其他脚本加载执行…… 不过这个缺点,可以在之后关键词匹配的时候发现出来(判断脚本中所有包含语句,所包含的文件后缀),所以遗漏的几率很小,几乎不会遗漏,凡是遗漏的都是废弃的后门,虽然是图片后缀,但是没有任何一个文件包含,所以也是无法执行的,废弃的,无危害…… 总的来说,我可以概括为以下几个步骤: 1、获取文件列表,获取的同时采用【黑名单】过滤掉“.mdb、.html、.css、.js、.txt、.jpg、.gif、.bmp、.mp3、.wav、.mid……”(提示一下,在过滤文件的同时,可以增加一个if 判断,顺道判断特殊文件名、畸形目录等变形后门,例如:/a.asp/a.jpg、a.asp;a.jpg、a.asp;jpg、aux.asp、com1.asp……,可以直接判定为后门!根本不用再用关键词匹配,省去大量时间……),等非脚本后缀的文件(还可以过滤超大体积的文件),注意:一定是黑名单过滤,如果你使用白名单的话,会遗漏一些特殊路径的文件,例如:a.asp;a.jpg、a.asp;jpg、file(没后缀的)……,经过这个过滤后缀操作,大概可以排除60% - 70% 以上的非脚本文件,甚至更多(越华丽的网站,图片越多,脚本只占极少数)…… www.2cto.com 2、如果存在Web 访问日志的话,如上所述,可以分析一下文件访问频率(可以重点检查访问率高的文件),又可以排除很大一批0 访问量的文件,这些文件大多数都是一些通用的函数库文件,一般一个网站通用的包含文件很多,而针对前台用户访问的文件只占极少数,这样又可以过滤很大一批文件,起码有10%,不过这个有个缺陷,首先如果日志很大的话,分析会很消耗时间,而且可能会漏掉一些包含式的后门,这个根据情况使用吧。 3、经过以上的处理,大概只剩下10% - 20% 的文件需要处理,也就是个10 万多的文件(Win7 旗舰版安装完后,C 盘大约有6 多万文件,这实在不算多),挨个读取进行关键词匹配,如果你关键词匹配的算法比较好的话,应该不需要很长时间了。 4、其他过滤算法。 坐等其他大牛更先进的方案…… 作者 核攻击 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com