一种面向海量日志的WebShell挖掘方法技术

技术编号:17011628 阅读:24 留言:0更新日期:2018-01-11 08:22
本发明专利技术提供了一种面向海量日志的WebShell挖掘方法,包括以下步骤:步骤1:收集单一入口类型的网站名单;步骤2:对日志进行检测,得到满足条件的URL,进而判断高度疑似WebShell;步骤3:检测可访问性,包括获取步骤2中URL对应域名的404页面内容和URL的页面内容,比较两次请求页面内容的莱文斯坦比,排除掉自定义404页面,以此判断该URL是否真实存在,若该URL真实存在则判断该URL为WebShell。本发明专利技术基于单一入口类型网站特殊的网站结构,配合自动化检测过滤掉自定义404页面,缩小嫌疑范围,大大提高识别WebShell的精准度,从而降低人工分析的成本。

【技术实现步骤摘要】
一种面向海量日志的WebShell挖掘方法
本专利技术涉及WebShell挖掘领域,特别是一种面向海量日志的WebShell挖掘方法。
技术介绍
WebShell,顾名思义,“web”的含义是显然需要服务器开放web服务,“shell”的含义是取得对服务器某种程度上操作权限。黑客在入侵了一个网站后,通常会将这些asp或php后门文件与网站服务器WEB目录下正常的网页文件混在一起,然后就可以使用浏览器来访问这些asp或者php后门,得到一个命令执行环境,以达到控制网站服务器的目的(可以上传下载文件,查看数据库,执行任意程序命令等)。由于WebShell其大多是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。现有技术中,通过收集网络上公开的WebShell并分析其特征,或者添加一些敏感函数建立WebShell特征库,然后在网站的访问日志中匹配这些特征或敏感函数,如果匹配上,则人工再次确认是否为WebShell。其存在以下不足:1)基于特征匹配容易出现大量误报;2)WebShell特征随时变换,特征库不能完全包含所有的特征,容易出现遗漏。
技术实现思路
本专利技术所要解决的技术问题是提供一种面向海量日志的WebShell挖掘方法,用于在海量网站日志中分析出真实的WebShell,其基于单一入口类型网站特殊的网站结构,配合自动化检测过滤掉自定义404页面,缩小嫌疑范围,大大提高识别WebShell的精准度,从而降低人工分析的成本。为解决上述技术问题,本专利技术采用的技术方案是:一种面向海量日志的WebShell挖掘方法,包括以下步骤:步骤1:收集单一入口类型的网站名单;步骤2:对日志进行检测,即:步骤2.1:收集步骤1中确定的单一入口类型网站的访问日志;步骤2.2:在步骤2.1提取的日志中,提取出HTTP状态码仅为200的URL;步骤2.3:将步骤2.2中得到的URL去掉参数,并取出动态脚本类型的URL;步骤2.4:比较步骤2.3得到中的URL是否与步骤1中收集的与此URL对应域名的URL一致,如果一致则判断为正常访问;如果所比较的两个URL不一致则判断为高度疑似WebShell;步骤3:检测可访问性,即:步骤3.1:获取步骤2.3中URL对应域名的404页面内容;步骤3.2:获取步骤2.3中URL的页面内容;步骤3.3:比较两次请求页面内容的莱文斯坦比,排除掉自定义404页面,以此判断该URL是否真实存在;步骤3.4:如果该URL真实存在则判断该URL为WebShell。进一步的,所述步骤1具体为:步骤1.1:提取一段时间内所有返回HTTP200状态码的网站访问日志并取出访问的URL;步骤1.2:将所有的URL去掉参数,取出动态脚本类型的URL;步骤1.3:以步骤1.2中URL的域名为单位,统计出每个域名出现不同URL的个数;步骤1.4:提取出只有一个URL的域名并确定该网站为单一入口类型网站。进一步的,还步骤4:对步骤3的判断结果进行人工复检。与现有技术相比,本专利技术的有益效果是:传统的基于WebShell特征库的日志匹配方法会出现大量的误报,比如在面对扫描器时,经常会触发特征规则,实际上它并不是一次真实的WebShell访问请求,本专利技术通过单一入口型网站特殊的访问模型,再配合自动化URL检测,可以大大减少人工审查的工作量。附图说明图1是本专利技术方法中单一入口型网站名单收集流程示意图。图2是本专利技术方法中日志检测流程示意图。图3是本专利技术方法中可访问性检测流程示意图。具体实施方式下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术主要是针对单一入口类型网站特殊的网站访问模型进行分析。在单一入口类型的网站中,所有网站功能都通过同一个URL进行路由,也就是全站只有一个URL,而绝大多数的WebShell都是单独的一个脚本文件,在访问的时候通常是直接访问该WebShell的路径。由此在对网站长期的监控中如果发现出现了类似这样异常的URL访问请求,则属于高风险访问,需要对其进行进一步的分析。由于很多网站都有自定义404功能,所以经常会出现访问了一个不存在的URL,而网站返回的是HTTP200状态码,因此单从状态码是不能判断该URL所指向的资源是否真的存在。本专利技术中自动检测通过判断网页内容的莱文斯坦比来识别自定义404页面,过滤出真实有效的访问请求,由此来提高识别WebShell的精准度。详述如下:一、收集单一入口类型网站名单如图1所示,具体说明如下:步骤1:提取一段时间内(如一个月)所有返回HTTP200状态码的网站访问日志并取出访问的URL。如:http://www.test.com.cn/index.php?id=1&act=loginhttp://www.abc.net/index.asp?id=1&act=loginhttp://www.host.cn/index.jsp?id=1&act=login步骤2:将所有的URL去掉参数、取出动态脚本类型的URL。如:http://www.test.com.cn/index.phphttp://www.abc.net/index.asphttp://www.host.cn/index.jsp步骤3:以步骤2中URL的域名为单位,统计出每个域名出现不同URL的个数。步骤4:提取出只有一个URL的域名并确定该网站为单一入口类型网站。二、对日志进行检测如图2所示,具体说明如下:步骤1:收集步骤一中确定的单一入口类型网站的访问日志。步骤2:在步骤1提取的日志中,去除掉HTTP状态码不是200的URL。步骤3:将步骤2中的URL去掉参数后并取出动态脚本类型的URL。步骤4:比较步骤3中的URL是否与模块一中对应域名的URL一致,如果一致则判断为正常访问。步骤5:如果两个URL不一致则判断为高度疑似WebShell。三、可访问性检测如图3所示,具体说明如下:步骤1:获取步骤二中URL对应域名的404页面内容。步骤2:获取步骤二中URL的页面内容。步骤3:比较两次请求页面内容的莱文斯坦比排除掉自定义404页面,以此判断该URL是否真实存在。步骤4:如果该URL真实存在则判断该URL为WebShell。步骤三的作用就是识别自定义404页面从而排除掉无意义的访问日志。下面解释一下什么是自定义404页面和使用莱文斯坦比识别自定义404页面的原理。莱文斯坦比是一种用于比较两个字符串之间相似度的算法,目前已经有很成熟的算法库来实现该算法,只需要提供两个字符串即可得到它们的相似度。而自定义404页面就是:按照HTTP协议规范,当访问一个存在的页面时,服务器返回200状态码,当访问一个不存在的页面时,服务器会反回404状态码,但是有些网站处于安全性考虑,即使访问一个不存在的网页,它也会返回一个200状态码(即访问成功),这样做可以防止某些恶意爬虫爬取网站数据,或者防止黑客猜测网站目录和文件,即出于安全性的考虑。既然访问一个不存在的页面服务器不再返回404状态码,那么就不能再用这种方法来判断该页面是否存在。所以这里换了一种方式来判断,由于网站的404页面内容基本都是一致的,那么先访问一个肯定不存在的页面,比如:www本文档来自技高网...
一种面向海量日志的WebShell挖掘方法

【技术保护点】
一种面向海量日志的WebShell挖掘方法,其特征在于,包括以下步骤:步骤1:收集单一入口类型的网站名单;步骤2:对日志进行检测,即:步骤2.1:收集步骤1中确定的单一入口类型网站的访问日志;步骤2.2:在步骤2.1提取的日志中,提取出HTTP状态码仅为200的URL;步骤2.3:将步骤2.2中得到的URL去掉参数,并取出动态脚本类型的URL;步骤2.4:比较步骤2.3得到中的URL是否与步骤1中收集的与此URL对应域名的URL一致,如果一致则判断为正常访问;如果所比较的两个URL不一致则判断为高度疑似WebShell;步骤3:检测可访问性,即:步骤3.1:获取步骤2.3中URL对应域名的404页面内容;步骤3.2:获取步骤2.3中URL的页面内容;步骤3.3:比较两次请求页面内容的莱文斯坦比,排除掉自定义404页面,以此判断该URL是否真实存在;步骤3.4:如果该URL真实存在则判断该URL为WebShell。

【技术特征摘要】
1.一种面向海量日志的WebShell挖掘方法,其特征在于,包括以下步骤:步骤1:收集单一入口类型的网站名单;步骤2:对日志进行检测,即:步骤2.1:收集步骤1中确定的单一入口类型网站的访问日志;步骤2.2:在步骤2.1提取的日志中,提取出HTTP状态码仅为200的URL;步骤2.3:将步骤2.2中得到的URL去掉参数,并取出动态脚本类型的URL;步骤2.4:比较步骤2.3得到中的URL是否与步骤1中收集的与此URL对应域名的URL一致,如果一致则判断为正常访问;如果所比较的两个URL不一致则判断为高度疑似WebShell;步骤3:检测可访问性,即:步骤3.1:获取步骤2.3中URL对应域名的404页面内容;步骤3.2:获取步骤2.3中URL的页面内容;步骤3.3...

【专利技术属性】
技术研发人员:仲俊霖赵永亮
申请(专利权)人:成都知道创宇信息技术有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1