一种基于webshell攻击的检测和防护方法及系统与流程

文档序号:11524179阅读:645来源:国知局
一种基于webshell攻击的检测和防护方法及系统与流程

本发明是关于web服务器主机或云环境中虚拟web服务器主机安全防护管理技术领域,特别涉及一种基于webshell攻击的检测和防护方法及系统。



背景技术:

随着网络的迅速发展,企业内部网络面临着巨大的挑战,内部信息泄露问题也日益严重。大多数的计算机安全统计数字表明,大部分发起的攻击都来自于网络内部,因此保证内网的主机安全对防止攻击具有十分重要的意义。

主机目前所面临的安全问题大致可以分为:主机未限制使用外设接入端口、用户访问权限未按相应级别定义、非法用户进入主机系统、主机用户访问恶意链接、非法停止重要或关键主机进程、非法启动恶意性进程等。

针对web服务器主机,入侵者通常会采用webshell来控制服务器,非法停止重要或关键主机进程、非法启动恶意性进程,达到控制网站服务器的目的。webshell工作原理:“web”的含义是显然需要服务器开放web服务,“shell”的含义是取得对服务器某种程度上操作权限。由于web服务器主机开放web服务,入侵者通常会将asp、php、jsp或者cgi等网页后门文件与正常的网页文件混在web服务器主机的web服务目录下,然后就可以使用浏览器来访问这些后门文件,得到一个命令执行环境,从而非法停止重要或关键主机进程、非法启动恶意性进程,达到控制网站服务器的目的。

目前,解决webshell的技术防范方法大致如下:1、给主机服务器配置最小的权限。比如,可写目录不给执行权限,有执行权限的目录不给写权限等;2、对文件内容进行检测;3、对https协议内容进行特征匹配。方法1可能会与网页业务实现产生冲突;方法2、方法3的缺点是会给主机的运行效率造成一定的影响,且存在误告警或漏报的情况。



技术实现要素:

本发明的主要目的在于克服现有技术中的不足,提供一种智能高效、低误报率的基于webshell攻击的检测和防护方法及系统。为解决上述技术问题,本发明的解决方案是:

提供一种基于webshell攻击的检测和防护方法,用于利用检测防护系统防范针对web服务器主机的webshell攻击,所述基于webshell攻击的检测和防护方法包括主机行为学习过程、主机行为判断过程;

所述主机行为学习过程包括下述步骤:

(1)web服务器主机处理web请求:web服务器主机接收来自各个客户端的web请求,web服务器主机的内核(这里的内核是web服务器主机的操作系统内核)启动进程处理web请求信息,并分析处理web请求的进程行为;

(2)收集web服务器主机行为:检测防护系统的内核对步骤(1)传输过来的web请求的进程行为信息进行收集,并将收集到的信息发送给检测防护系统的应用层;

(3)接收web服务器主机行为:检测防护系统的应用层接收步骤(2)传输过来的信息并进行提取,总结出web服务器主机行为:父进程名称、子进程名称;

(4)学习web服务器主机行为:检测防护系统的应用层在一个学习周期内学习web服务器主机的行为,即记录步骤(3)总结的web服务器主机行为并保存至检测防护系统的数据库中;

(5)确认web服务器主机行为基线:步骤(4)结束后,检测防护系统的数据库中形成web服务器主机行为列表,且检测防护系统的应用层管理者(检测防护系统的应用层是b/s结构,因此可以配置管理员)能对web服务器主机行为列表进行人工校对、调整(人工校对、调整是指核对主机行为白名单中是否存在异常行为,并将异常行为从主机行为白名单中删除,对于未列入行为基线白名单的正常行为,即误报或误阻断的主机行为,人工加入主机行为白名单中),最后形成web服务器主机的行为基线;

所述行为基线是主机行为白名单,包括父进程名称、子进程名称;

(6)发送web服务器主机行为基线:步骤(5)结束后,将检测防护系统的应用层形成的行为基线文件,发回给检测防护系统的内核;

所述主机行为判断过程包括下述步骤:

(7)检测可疑访问行为:检测防护系统的内核接收行为基线,与web服务器主机处理客户端web请求的进程行为进行比对,如果该客户端web请求的进程行为,与行为基线中的进程不匹配,即判断该主机行为可能是webshell攻击,进行告警或阻断。

在本发明中,所述步骤(4)中,检测防护系统的应用层学习到的web服务器主机的行为,是web服务的调用关系。

在本发明中,当web服务器主机的主机系统业务发生变更时,能够重新进行主机行为学习过程,形成适用的行为基线。

在本发明中,所述行为基线,即主机行为白名单,能够进行人工调整。

提供用于所述基于webshell攻击的检测和防护方法的检测防护系统,包括内核(内核驱动模块)、应用层(界面应用系统)、数据库;

所述内核是对操作系统内核进行二次开发的驱动程序,用于搜集主机行为、匹配行为基线、阻断主机行为;

所述应用层用于接收、展示、学习内核收集到的主机行为,总结主机行为形成行为基线,调整行为基线;且应用层是b/s结构,能够配置管理员;

所述数据库用于组织、存储、管理数据。

与现有技术相比,本发明的有益效果是:

本发明通过web主机服务器的自主学习形成全面且适宜的行为基线后,采用将web请求行为与行为基线比对的webshell检测方式,进一步提高了webshell检测的准确率,提高了检出率和检测效率,降低了误报率和漏报率。且如果web服务器主机的业务变动,重新学习,即可重新形成适宜的行为基线。

附图说明

图1为本发明中检测防护系统的主要模块图。

图2为本发明的流程图。

图3为行为基线示意图。

图4为实施例中的行为基线示例图。

图5为构造webshell之后形成的行为示例图。

具体实施方式

首先需要说明的是,本发明是计算机技术在信息安全技术领域的一种应用。在本发明的实现过程中,会涉及到多个软件功能模块的应用。申请人认为,如在仔细阅读申请文件、准确理解本发明的实现原理和发明目的以后,在结合现有公知技术的情况下,本领域技术人员完全可以运用其掌握的软件编程技能实现本发明。

下面结合附图与具体实施方式对本发明作进一步详细描述:

如图1所示的检测防护系统包括内核(内核驱动模块)、应用层(界面应用系统)、数据库。内核(内核驱动模块)是对操作系统内核进行二次开发的驱动程序,用于搜集主机行为、匹配行为基线、阻断主机行为。应用层用于接收、展示、学习内核收集到的主机行为,总结主机行为形成行为基线,调整行为基线;且应用层是b/s结构,能够配置管理员。数据库用于组织、存储、管理数据;本实施例采用的是mysql,用于保存搜集到主机行为白名单。

如图2所示的一种基于webshell攻击的检测和防护方法包括主机行为学习过程、主机行为判断过程,用于利用检测防护系统防范针对web服务器主机的webshell攻击。

主机行为学习过程包括下述步骤:

(1)web服务器主机处理web请求:web服务器主机接收来自各个客户端的web请求,web服务器主机的内核启动进程处理web请求信息,并分析处理web请求的进程行为。

(2)收集web服务器主机行为:检测防护系统内核的驱动模块对步骤(1)传输过来的web请求进程行为信息进行收集,并将收集到的信息发送给检测防护系统的应用层。

(3)接收web服务器主机行为:检测防护系统的应用层接收步骤(2)传输过来的信息进行提取,总结出web服务器主机行为:父进程名称、子进程名称。

(4)学习web服务器主机行为:检测防护系统的应用层在一个学习周期内学习web服务器主机的行为,即记录步骤(3)接收的web服务器主机行为:父进程名称、子进程名称,并保存至检测防护系统的数据库中。

(5)确认web服务器主机行为基线:步骤(4)结束后,检测防护系统的数据库中,会形成web服务器主机行为列表;检测防护系统的应用层管理者可以对web服务器主机行为列表进行人工校对、调整,最后,形成web服务器主机行为基线。

所述行为基线是主机行为白名单,包括父进程名称、子进程名称,可参考图3。

应用层管理员可以对学习到的web服务器主机行为基线进行人工核对、调整。

人工校对、调整具体是指将核对行为基线中是否存在异常行为,并将异常行为从主机行为白名单中删除;对于即未列入行为基线白名单的正常行为即误报或误阻断的主机行为,也可以人工加入主机行为白名单中。

(6)发送web服务器主机行为基线:步骤(5)结束后,检测防护系统的应用层会形成一份web服务器主机行为基线文件,并发回给检测防护系统的内核。

所述主机行为判断过程包括下述步骤:

(7)检测可疑访问行为:内核接收web服务器主机行为基线,与web服务器主机处理客户端web请求的进程行为进行比对,如果该客户端web请求的进程行为,与行为基线中的进程不匹配,即判断该主机行为可能是webshell攻击,进行告警或阻断。

下面的实施例可以使本专业的专业技术人员更全面地理解本发明,但不以任何方式限制本发明。

假设在主机行为学习期内,web服务器主机接收到一个远程执行bash命令的请求,web服务器将启动进程/bin/bash。web服务器内核学习父进程/bin/bash,子进程比如/data/bin/mysqld。内核则将该行为信息发送给应用层管理者确认,是否加该对父子进程到行为基线中。经过一段时间的行为规则学习之后,行为基线即行为规则白名单便形成。如果业务变动,重新学习即可。图4示例自学习结束后,形成的行为基线图,图中展现进程的调用关系。

图5示例webshell构造攻击后形成的行为图,图中展现ls和pwd是禁止放行的进程。当webshell发生,ls和pwd是搭建webshell环境构造的攻击,则立即进行告警或阻断。

最后,需要注意的是,以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有很多变形。本领域的普通技术人员能从本发明公开的内容中直接导出或联想到的所有变形,均应认为是本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1