在基于云端环境中阻挡或侦测计算机攻击的方法和设备与流程

文档序号:18941828发布日期:2019-10-23 01:13阅读:171来源:国知局
本发明涉及一种计算机安全技术,特别是一种在基于云端环境中阻挡或侦测计算机攻击的方法以及使用该方法的设备。
背景技术
::在计算机安全情境,黑客寻找并攻击计算机系统或计算机网络中的弱点。企业通常会因为这些攻击而遭受伤害,例如危害计算机服务、客户私人数据遭窃、降低利润或声誉等风险。计算机攻击通常通过因特网进行。因此,需要一种在基于云端环境中阻挡或侦测计算机攻击的方法以及使用该方法的设备,以有效率地阻挡这些攻击。技术实现要素:本发明的实施例提出一种在基于云端环境中阻挡或侦测计算机攻击的方法,由设备的处理单元执行,包括:通过因特网从客户端系统接收一个或多个ip(因特网协议,internetprotocol)封包;从上述ip封包取得服务请求,其中上述服务请求向受防护计算机资产请求服务;判断上述服务请求是否包括计算机攻击;以及当上述服务请求包括上述计算机攻击时,执行攻击阻挡/侦测操作以阻挡上述受防护计算机资产受到损害。本发明的实施例提出一种在基于云端环境中阻挡或侦测计算机攻击的设备,包括:通讯接口;以及处理单元。上述处理单元耦接至上述通讯接口,经由上述通讯接口通过因特网从客户端系统接收一个或多个ip(因特网协议,internetprotocol)封包;从上述ip封包取得服务请求,其中上述服务请求向受防护计算机资产请求服务;判断上述服务请求是否包括计算机攻击;以及当上述服务请求包括上述计算机攻击时,执行攻击阻挡/侦测操作以阻挡上述受防护计算机资产受到损害。具体的实施方式将在以下实施例及参考附图中给出详细的描述。附图说明图1是依据本发明实施例的网络架构示意图。图2是依据本发明实施例的攻击阻挡/侦测服务器的系统架构图。图3是根据本发明实施例的两阶段过滤方法的流程图。图4是依据本发明实施例的软件模块示意图,被处理单元加载并执行,用以处理流经攻击阻挡/侦测服务器的网络封包。图5是根据本发明实施例中在客户端系统和受防护计算机资产间传送服务请求和响应的示意图。图6是根据本发明实施例在基于云端环境中用于阻挡或侦测的计算机攻击的方法的流程图。具体实施方式以下说明为完成发明的较佳实现方式,其目的在于描述本发明的基本精神,但并不用以限定本发明。实际的
发明内容必须参考之后的权利要求范围。本发明将针对具体的实施例并参照某些附图进行描述,但本发明不限于此且仅受权利要求的限制。必须了解的是,使用在本说明书中的“包含”、“包括”等词,用以表示存在特定的技术特征、数值、方法步骤、作业处理、组件以及/或组件,但并不排除可加上更多的技术特征、数值、方法步骤、作业处理、组件、组件,或以上的任意组合。在权利要求中使用如“第一”、“第二”、“第三”等语句用来修饰权利要求中的组件,并非用来表示之间具有优先权顺序、先行关系,或者是一个组件先于另一个组件,或者是执行方法步骤时的时间先后顺序,仅用来区别具有相同名字的组件。本发明实施例提出一种网络架构,用以连接多种受防护计算机资产,例如计算机、计算机服务器、监控系统、物联网(internetofthings,iot)装置等。图1是依据本发明实施例的网络架构示意图。受防护计算机资产包含服务器140a至140c、监控系统中的监控主机150a及监控摄影机150b及150c、物联网装置及客户端计算机等。物联网设备包括如照明控制系统160a、智能电视160b、门禁控制系统160c等,客户端计算机包括如笔记本电脑170a、个人计算机170b、平板计算机170c等。服务器140a、140b或140c可为网站服务器、应用服务器、电子邮件服务器、即时消息(instantmessaging,im)服务器、网络连接存储(networkattachedstorage,nas)服务器、或其他类型的服务器。网站服务器可存储、产生及传送网页给客户端。客户端及网站服务器间的通讯可使用超文件传输通讯协议(hypertexttransferprotocol,http)或其他通讯协议。网页通常为超文件标示语言(hyper-textmarkuplanguage,html)文件,其中包含文字、相片、样式表单(stylesheet)及脚本指令(scripts)等。应用服务器可为一种软件框架(softwareframework),用以提供建立网页应用程序的工具,以及执行网页应用程序的服务器环境。应用服务器可包含庞杂的服务层模型(servicelayermodel)。应用服务器可执行一组组件(components),用以让软件开发者通过框架本身制定的应用程序编程接口(applicationprogramminginterface,api)进行存取。对网页应用程序而言,其组件可在与其网页服务器相同的运算环境中执行,其主要任务是支持网页的架构。网页应用程序可实施如丛集(clustering)、故障转移(fail-over)及负载平衡(load-balancing)等服务,使得软件开发者可专注于撰写企业逻辑。电子邮件服务器可以中继方式使用简易邮件转递通讯协议(simplemailtransferprotocol,smtp)从客户端接收邮件,以及使用第三代邮局通讯协议(postofficeprotocolversion3,pop3)或因特网信息存取通讯协议(internetmessageaccessprotocol,imap)传送邮件给客户端。即时消息(instantmessaging,im)服务器可协助一个或多个参与者间的沟通,达到立即的信息接收确认或回复。网络连接存储(networkattachedstorage,nas)服务器可让不同种类客户端进行数据存取,包含一或多部以逻辑、冗余设置的存储装置,或安排为独立硬盘冗余数组(redundantarrayofindependentdisks,raid)。监控摄影机150b及150c可为视讯摄影机,用以监视一区域,以及监控主机150a可包含记录装置,用以记录及压缩从监控摄影机150b及150c取得的影像,以及存储压缩视讯至可供搜寻的数据库。物联网装置160a至160c可为嵌入电子电路、软件、传感器及连接器等设备的实体装置,使得此装置可与其他连接装置交换数据。物联网装置允许装置进行感测,以及跨网络基础建设进行控制。客户系统190连接上因特网,可传送请求至受防护计算机资产140a至170c中中的任何一个提供服务。本发明并非只包含以上所列的装置,可以理解的是其他类型的服务器、物联网装置及计算机系统亦可受到防护。受防护计算机资产140a至170c中的每一个连接至集线器(hubs)130a至130d中的一个。每一集线器将多部以太网络装置连接在一起,使得这些设备运作起来如单一网络区段(networksegment)。集线器具有多个输入/输出埠,任何一个端口的输入讯号会输出到除了本身以外的每一其他埠。集线器130a至130d中的任何一个可替换为无线存取点(accesspoint,ap)。无线存取点可使用wi-fi或其他标准,让受防护计算机资产140a至170c连接至有线网络。路由器120a至120b中的每一个在计算机网络间转递网络封包。网络封包通常从一个路由器通过互联网络转递至另一个,直到到达目的地节点。路由器通过二或多个数据线连接至不同网络。当网络封包从数据线中的一个进入,路由器读取封包中的地址信息来决定最终目的地。接着,路由器使用其中的路由表(routingtable)或路由政策(routingpolicy),将网络封包转递至下一个网络。路由器120a至120b可为家庭或小型办公路由器,在受防护计算机资产140a至170c及因特网之间单纯传递数据,例如网页、电子邮件、即时消息、音频串流、视讯串流等。家庭或小型办公路由器可为电缆或数字用户线(datasubscriberline,dsl)路由器,通过因特网服务供货商(internetserviceprovider,isp)连接至因特网。路由器120a至120b中的任何一个可替换为企业路由器,用以连接大型企业或isp网络,甚至是强大的主干路由器(corerouter),在因特网主干上以光纤线路高速转递资料。网关(gateway)110可运行为代理服务器(proxyserver)及防火墙服务器(firewallserver)。网关110可整合路由器及交换器的功能,路由器知道将到达网关110的网络封包导向何处,而交换器用以为特定封包决定输入及输出网关110的实际路径。攻击阻挡/侦测服务器180位于因特网上,以阻挡受防护计算机资产140a至170c受到计算机攻击的损害。受防护计算机资产140a至170c的ip地址并未公开且存储在攻击阻挡/侦测服务器180中。也就是说,黑客无法得知受防护计算机资产140a至170c的实际ip地址。受防护计算机资产140a至170c对广泛范围服务的请求首先被引导至攻击阻挡/侦测服务器180进行检测。在云端环境中,攻击阻挡/侦测服务器180像受防护计算机资产140a至170c的虚拟闸门般运作。受防护计算机资产140a至170c实质上位于攻击阻挡/侦测服务器180后端。只有无攻击请求能经由攻击阻挡/侦测服务器180转传至相关的受防护计算机资产140a至170c。攻击阻挡/侦测服务器180的ip地址可被公开以伪装成任何受防护计算机资产140a至170c的ip地址。可能有几种方式实施上述公开。受防护计算机资产140a至170c中的任何一个的管理员可通过域名系统(domainnamesystem,dns)服务器注册映像至攻击阻挡/侦测服务器180的ip地址的域名。本领域技术人员应可理解在域名系统中注册的任何名称都是域名。域名由域名系统的规则及程序所组成。域名可用于网络上下文和特定应用程序的命名和寻址目的中。例如,域名表示ip(因特网协议)资源,如托管网站的服务器计算机或该网站本身,或通过因特网通讯的任何其他服务。域名系统服务器将攻击阻挡/侦测服务器180的ip地址回复给查询该域名ip地址的任何客户端。受防护计算机资产140a至170c中的任何一个的管理员可公开攻击阻挡/侦测服务器180的ip地址,以假装成在网页或其他可读媒体中受防护计算机资产的ip地址。客户端系统190发布具有攻击阻挡/侦测服务器180的ip地址的服务请求至攻击阻挡/侦测服务器180,以请求广泛范围服务及携带请求流的封包。图2是依据本发明实施例的攻击阻挡/侦测服务器的系统架构图。处理单元210可使用多种方式实施,例如能以微码程序或软件指令执行本文所列功能的专用硬件或通用硬件(例如,单处理器、具平行处理能力的多处理器、图形处理器或其他具运算能力的处理器)。系统架构更包含存储器250用以存储执行过程中需要的数据,例如,变量、数据表(datatables)、数据摘要等,以及存储装置240,用以存储白名单(whitelist)、黑名单(blacklist)以及各种过滤规则。通讯接口260包含在系统架构中,处理单元210可由此与其他电子设备进行通讯。通讯接口260可以是局域网络(localareanetwork,lan)模块、无线局域网络(wirelesslocalareanetwork,wlan)模块或其他具有通讯能力的模块。系统架构还包括一个或多个输入装置230以接收用户输入,如键盘、鼠标、触摸板等。用户可按下键盘上的硬键来输入字符,通过操作鼠标来控制显示器上的鼠标指针,或通过在触摸板上做出一个或多个手势来控制执行的应用程序。这些手势包含但不局限于单击、双击、单指拖曳和多指拖曳。诸如薄膜晶体管液晶显示器(thinfilmtransistorliquid-crystaldisplay,tft-lcd)面板、有机发光二极管(organiclight-emittingdiode,oled)面板或其他显示单元等的显示单元220也可包含其中以显示输入字符、数字和符号、拖曳鼠目标移动轨迹、绘制的图案或应用程序所提供的画面,提供给使用者观看。为阻挡受防护计算机资产140a至170c受计算机攻击损害,两阶段过滤方法的实施例被引入,以有效的方式检查包括多种服务请求且被路由到攻击阻挡/侦测服务器180的网络封包,并当侦测到任何网络封包包括一攻击模板时,则执行攻击阻挡/侦测操作。上述方法是在处理单元210加载并执行具有预定模板的相关软件程序代码或指令时,由攻击阻挡/侦测服务器180所执行。图3是根据本发明实施例的两阶段过滤方法的流程图。该方法可检查封装在流动网络封包中的第7层(layer7)(即所谓的应用层)信息以侦测攻击模板。每一服务请求可包括目的端地址、目的端端口号、请求信息、可执行的脚本指令(executablescripts)、窗体对象(formobjects)、后行动(postactions)、可执行的上载程序(executableprogram-uploads)或其他任何组合。图4是根据本发明实施例处理流经攻击阻挡/侦测服务器180的网络封包模块示意图。软件模块410至470可依循开放系统互连(opensystemsinterconnection,osi)模型的规范,用以一层一层地解析数据或信息。osi模型将电信通讯或计算机系统的通讯分层归类并标准化,使得每一层可不管下层的内部构造及技术。网络接口260可实施物理层模块(physical-layermodule)410、数据链路层模块(data-link-layermodule)420、网络层模块(network-layermodule)430、传输层模块(transport-layermodule)440。物理层模块410可建立及中止经由通讯媒介直接联机的二个节点间的联机。数据连接的电性及实体规范可包含脚位布局、电压、接线阻抗、电缆规范、讯号时序等。数据链路层模块420可提供节点对节点的数据传输,并且通过侦测可能发生在物理层中的错误并尝试修正错误,用以提供二个联机节点间的可靠联机。数据链路层可分成二个子层:媒体访问控制(mediaaccesscontrol,mac)层,负责控制网络中的装置如何存取数据和传输数据的权限;逻辑链接控制(logicallinkcontrol,llc)层,用以控制错误检查及封包间的同步。网络层模块430可提供功能性及程序性手段,从一个节点传递可变长度数据序列(又称为数据块(datagrams))至另一个。网络层模块430可转译逻辑网络地址成为实体机器地址。每个节点具有地址,通过提供信息内容及目的地节点的地址,允许连接在网络上的一个节点传递信息至连接在网络上的其他节点,使得网关或路由器可找到绕送“路由(route)”信息至目的地节点。除了信息路由外,网络层模块430可将信息分割成数块,以不同路径发送每一块以及组合这些块,记录发送的错误等,用以实现信息递送。传输层模块440可通过流量控制、分割/重组及错误控制来控制特定联机的可靠性。传输层模块440可持续追踪所有块的传送,并且在失败时重传。传输层模块440也可提供成功传输数据的确认信息,并在无任何错误发生时传送其余的数据。传输层模块440可从应用层模块(application-layermodule)470接收信息并产生封包。传输层模块440使用的传输层通讯协议可为传输控制通讯协议(transmissioncontrolprotocol,tcp),其通常建立在因特网通讯协议(internetprotocol,ip)上。会话层模块(session-layermodule)450、表现层模块(presentation-layermodule)460及应用层模块(application-layermodule)470可在处理单元210加载及执行软件码或指令时实施。会话层模块450可建立、管理及中止本地及远程应用程序间的联机。表现层模块460可建立应用层实体间的上下文(context),其中当表现服务提供应用层实体间的映像关系时,应用层实体可使用不同的语法及语意。如果一个映像关系存在,可将表现服务数据单元(presentationservicedataunits)封装成会话协议数据单元(sessionprotocoldataunits),并且传送至协议栈(protocolstack)的下层。应用层模块470可通过应用程序及网络格式间的转译提供独立于数据表现层的功能(例如,加密)。应用层模块470可将数据转变为应用程序可接受的格式。例如,应用层模块470可从因特网封包摘取请求信息(又称为第七层信息),诸如超文件传递通讯协议(hypertexttransferprotocol,http)、加密超文件传递通讯协议(securehypertexttransferprotocol,https)、无线应用讯协议(wirelessapplicationprotocol,wap)、文件传输协议(filetransferprotocol,ftp)、轻量目录存取通讯协议(lightweithtdirectoryaccessprotocol,ldap)、安全壳协议(secureshell,ssh)等请求,或者转译请求信息为因特网封包。此方法通过网络接口260不断接收从客户端系统190传送来的请求(步骤s310)。如图3所示的过滤方法可实施在攻击预防攻击阻挡/侦测模块480中。在步骤s310,攻击阻挡/侦测模块480可从应用层模块470接收服务请求。在接收到服务请求之后(步骤s310),执行两阶段过滤。在第一阶段中,包含三种判断中的至少一个。第一判断决定每个服务请求中是否包含任何白名单模板(white-listpattern)(步骤s320)。使用者新增或更新的白名单模板可为通用表示式(regularexpressions)或其他表示式语言。白名单模板读取自存储装置240并提供来加速决策的速度并且避免误报(falsepositives)。也就是说,处理单元210快速通过具有白名单模板的服务请求,而不进一步做更多侦测。第二判断决定每个服务请求中是否包含任何黑名单模板(black-listpattern)(步骤s325)。使用者新增或更新的黑名单模板可包含特定来源ip地址等。黑名单模板读取自存储装置240并提供来加速决策的速度。也就是说,处理单元210直接执行攻击阻挡操作(attackpreventionoperation)。第三判断决定每一服务请求中是否包含任何客制规则模板(custom-rulepattern)(步骤s330)。存储装置240存储客制规则模板,并随着特定类型的受防护计算机资产进行新增、修改或加强(reinforce),例如网站服务器、应用服务器、即时消息服务器、网络附加存储服务器、电子邮件服务器、监控系统、物联网装置、客户端计算机等。客制规则模板可视为特定类别的受防护计算机资产的增强模板(enhancedpatterns)。举例来说,如果企业主要防止网站服务器不受伤害,关联于网站服务器的客制规则模板被提供来过滤对网站服务器的可能攻击。一旦发现白名单模板(步骤s320中的“是”路径),处理单元210运行的攻击阻挡/侦测模块480直接转送服务请求至受防护计算机资产(步骤s350)。详细来说,传输层模块440可缓存(cache)相应于每一服务请求的网络封包在存储器250中,例如tcp/ip封包及目的端ip地址(步骤s310),以及,发现白名单模板后(步骤s320中的“是”路径),攻击阻挡/侦测模块480驱动传输层模块440直接传送缓存的网络封包至协议栈的下层,使得网络封包中的服务请求可转送至受防护计算机资产,而无需由表现层模块460及会话层模块450重新产生网络封包(步骤s350)。替代性地,攻击阻挡/侦测模块480可直接下传服务请求至表现层模块460,使得网络封包中的服务请求可转送至受防护计算机资产(步骤s350)。一旦未发现白名单模板(步骤s320中“否”路径)但却发现黑名单模板(步骤s325中“是”路径),处理单元210运行的攻击阻挡/侦测模块480执行攻击阻挡/侦测操作(步骤s360)。一旦未发现白名单模板及黑名单模板(步骤s320中“否”路径接着步骤s325中“否”路径)但却发现客制规则模板(步骤s330中“是”路径),处理单元210运行的攻击阻挡/侦测模块480执行攻击阻挡/侦测操作(步骤s360)。客制规则模板为受防护系统或现存弱点做特别设计。在例子中,客制规则模板包含字符串“a=2147483647”,可触发特定应用错误,而处理单元210在侦测到服务请求中的请求信息“http-get:http://www.example.com/index.php?a=2147483647”包含此字符串后,执行攻击阻挡/侦测操作。在另一例子中,客制规则模板包含在预先决定的时间区间尝试登入的允许次数,而处理单元210在侦测到客户端系统190预先决定的时间区间尝试的登入受防护计算机资产的次数超过了允许次数后,执行攻击阻挡/侦测操作。在又一例中,客制规则模板包含译码及检查以base64编码的信息,而处理单元210在侦测到译码的服务请求包含恶意内容(maliciouscontent)后,执行攻击阻挡/侦测操作。在又一例中,客制规则模板包含防护特定物联网装置所辨认出的弱点模板。虽然以上三种判断以特定顺序执行,本领域技术人员可依据设计的需要更改顺序,本发明并不以此为限。一旦发现没有白名单模板(步骤s320中“否”路径)、没有黑名单模板(步骤s325中“否”路径)以及没有客制规则模板(步骤s330中「否」路径)后,执行第二阶段过滤。在第二阶段中,处理单元210决定每个服务请求中是否包含任何基础规则模板(base-rulepattern)(步骤s340)。存储装置240存储基础规则模板,并提供来阻挡一般性重大攻击,而不会让受防护计算机资产遭受损害。基础规则模板并非专为个别系统或弱点设计。基础规则模板用以阻挡一般性攻击。基础规则模板可周期性更新,例如每日、每周一次,用以应付最新发现的攻击行为。当未发现服务请求中包含基础规则模板时(步骤s340中“否”路径),处理单元210运行的攻击阻挡/侦测模块480转送服务请求至受防护计算机资产(步骤s350)。在步骤s350,如先前所讨论的,攻击阻挡/侦测模块480可驱动传输层模块440转传服务请求至受防护计算机资产以直接传送缓存的网络封包至协议栈的下层,或者直接下传服务请求至表现层模块460。当发现服务请求中包含基础规则模板时(步骤s340中“是”路径),处理单元210运行的攻击阻挡/侦测模块480执行攻击阻挡/侦测操作(步骤s360)。在例子中,基础规则模板包含字符串“'or1=1--”,而处理单元210在侦测到服务请求中的可执行脚本指令包含此字符串后,执行攻击阻挡/侦测操作。在另一例中,基础规则模板包含字符串““><script>alert(‘0’);</script>”,而处理单元210在侦测到服务请求中的可执行脚本指令包含此字符串后,执行攻击阻挡/侦测操作。在又一例中,基础规则模板包含服务请求中的请求信息的字符的允许数目,而处理单元210在侦测到请求信息的长度超过了允许数目后,其中可能包含缓冲区溢出(buffer-overflow)攻击,执行攻击阻挡/侦测操作。在攻击阻挡/侦测操作的实施例中,服务请求的请求信息中所拥有包括可能触发执行恶意攻击的脚本指令的特殊字符,可替换成等同的字符串,例如,特殊字符“<”and“>”可分别替换为字符串“&lt”及“&gt”,接着,转送修改后的请求信息给受防护计算机资产。本领域技术人员理解,当触发执行的脚本指令被包括在字符串“&lt”及“&gt”,并不会触发恶意攻击的脚本指令的执行。也就是说,通过以上特殊字符的替换,而替换后字符串中的脚本指令不能转入执行上下文。在另一实施例,丢弃包含侦测到客制规则模板或基础规则模板的服务请求,而不转送请求信息给受防护计算机资产。在又一实施例,阻挡包含侦测到客制规则模板或基础规则模板的服务请求,而不转送请求信息给受防护计算机资产,并且回复信息给客户端系统190。信息可为“http500-内部服务器错误”、“http403-禁止”、“http200-ok”,或其他信息。在又一实施例,转送包含侦测到之客制规则模板或基础规则模板的服务请求给受防护计算机资产,并且记录侦测到客制规则模板或基础规则模板的时间,或其他相关信息到日志中。在又一实施例,将连结到警示网页的单一资源寻址(uniformresourcelocator,url)回复给客户端系统190,从而使得使用者浏览此警示网页。警示网页可显示非法或不安全存取的警告信息。在又一实施例中,转送包含侦测到的客制规则模板或基础规则模板的服务请求至沙盒(sandbox)中的目的端装置,可将伤害控制在有限范围。可理解的是,在步骤s320、s330或s340中,攻击阻挡/侦测模块480可检查服务请求中的请求信息、可执行的脚本指令、窗体对象、后行动、可执行的上载程序等,用以决定服务请求中是否包含任何的白名单模板、黑名单模板、客制规则模板或基础规则模板。存储装置240中的白名单模板、黑名单模板、客制规则模板或基础规则模板可加载至存储器250。以上所述的方法可应用来降低因sql隐码攻击(sqlinjectionattacks)、跨站脚本指令攻击(cross-sitescriptingattacks,xss)、造访路径攻击(pathtraversalattacks)、命令隐码攻击(commandinjectionattacks)、缓冲区溢出攻击(buffer-overflowattacks)、跨站假要求攻击(cross-siterequestforgeryattacks,csrf),或其他类型的攻击所造成的损害。sql隐码攻击用以插入恶意脚本指令至sql指令(query)。一个成功的sql隐码攻击可从数据库读取隐私数据,如以insert、update或delete的指令修改数据库数据,执行数据库的管理者作业,例如关闭数据库管理系统(databasemanagementsystem,dbms),回复dbms文件系统的特定档案内容,或发送命令给操作系统。跨站脚本指令攻击可插入恶意脚本指令至信任的网站服务器,又称为持续式跨站脚本指令攻击。跨站脚本指令攻击可发生在当攻击者使用网站应用程序传送恶意码(通常以浏览器侧脚本指令的形式)给另外的使用者,又称为反射式跨站脚本指令攻击。造访路径攻击尝试存取网站跟文件夹(webrootfolder)外的档案及路径。通过访问目录的方式,攻击者找寻存储在网站服务器、应用服务器、电子邮件服务器、即时消息服务器、网络附加存储服务器,或其他类型服务器中档案的绝对路径。通过将变量改变为“../”序列及其变量,可存取文件系统中任意的档案及目录,包含受到操作系统访问控制限制住的应用程序原始码、组态数据、重要系统档案。攻击者可使用“../”序列移动到根目录,用以浏览文件系统。访问目录的序列可承载系统请求,例如,“http://www.test.com/../../../”。命令隐码攻击通过有弱点的应用程序来执行主机操作系统上的任意命令。当应用系统传递用户提供的不安全数据(例如窗体、cookies、http标头等)给系统核心时,命令隐码攻击就可能出现。缓冲区溢出攻击用以瘫痪网站服务器或应用服务器的执行堆栈。攻击者可通过输入精心设计的指令至网站应用程序,使得网站应用程序执行这些指令时造成缓冲区溢出。跨站假要求攻击强迫用户在网站应用程序上执行不想要但已授权出去的操作。藉社交应用程序的协助(例如,通过电子邮件或实时通讯软件发送链接),攻击者可假装网站应用程序的真实用户,执行攻击者选择的操作。如果受害者是一般使用者,成功的跨站假要求攻击可强迫使用者执行状态转换请求,像转账、电子邮件地址或密码变更等。如果受害者是管理者账号,跨站假要求攻击可能危害整个网站应用程序。如上述第二阶段过滤中,基础规则模板(basic-rulepatterns)尽可能涵盖所有类型的攻击行为。换句话说,基础规则模板较客制规则模板涵盖更多类型的受防护计算机资产。进一步,基础规则模板可防护一些在企业网络中不存在的弱点。这些规则并不是特别为单一系统设计。例如,公司网络没有物联网装置,而基础规则模板可提供物联网装置的一般性攻击防护。值得注意的是,公司网络未来可能配备物联网装置,而必须具有基础规则模板,用以避免物联网装置遭受计算机攻击。然而,全面检查服务请求的内容,用以决定是否通过基础规则模板的检验,需花费大量的时间。包含白名单模板及客制规则模板的第一阶段过滤被执行在第二阶段过滤之前。客制规则模板用来防护位于网关110或路由器120a或120b之后的有限受防护计算机资产。客制规则为特定计算机资产或软件弱点进行详细设计。依据受防护系统的不同,可有不同的客制规则模板。一方面,每当发现任何的白名单模板,马上转送服务请求至目的端装置,而不再进行任何的检查。第一阶段过滤也可包含黑名单模板,早期阻挡攻击者,例如,特定ip地址。其他方面下,一旦发现任何客制规则模板,马上执行攻击阻挡/侦测作业。虽然实施例在第一阶段过滤中使用客制规则模板而第二阶段过滤中使用基础规则模板,然而,本领域技术人员可交换这二个。换句话说,可根据不同需求交换步骤s330及s340。例如,当企业网络面对较特定的受防护计算机资产、系统或弱点更多的一般性攻击时,在第一阶段过滤中使用基础规则模板而第二阶段过滤中使用客制规则模板。攻击阻挡/侦测服务器180不仅能够辨识来自服务请求的计算机攻击,而且还能扮演将未含攻击的服务请求传送到受防护计算机资产,并将受防护计算机资产的响应传送到发出请求的客户端系统的角色。图5是根据本发明实施例中在客户端系统和受防护计算机资产间传送服务请求和响应的示意图。客户端系统190将携带服务请求的一个或多个ip封包r51发送到攻击阻挡/侦测服务器180。任何服务请求都将经过判断步骤s320、s325、s330和s340。当判定服务请求转传至受防护计算机资产510时,例如受防护计算机资产140a到170c中的任何一个(步骤s350),处理单元210会产生并传送一个或多个携带有服务请求的ip封包r53至受防护计算机资产510。每一ip封包r53的来源端地址是攻击阻挡/侦测服务器180的ip地址,且每个ip包r53的目的端地址是受防护计算机资产510的ip地址。此外,客户端系统190的ip地址被封装在每一ip封包r53的包头或负载中,以使受防护计算机资产510知道发布服务请求的实际来源端在何处。应该注意的是,服务请求的表达可能不像步骤s350中描述的那样改变,或者可以如步骤s360中描述的那样改变。受防护计算机资产510执行相关操作以响应服务请求,并将一个或多个ip封包r55所携带的响应回复给攻击阻挡/侦测服务器180。每一ip封包r55的来源端地址是受防护计算机资产510的ip地址,而ip封包r55的目的端地址是攻击阻挡/侦测服务器180的ip地址。此外,客户端系统190的ip地址被封装在每一响应ip封包r55的包头或负载,以使攻击阻挡/侦测服务器180知道此响应的实际目的地为何处。处理单元210相应产生并传送携带回复的一个或多个ip封包r57至客户端系统190。每一ip封包r57的来源端地址是攻击阻挡/侦测服务器180的ip地址,而每一ip封包r57的目的端地址是客户端系统190的ip地址。处理单元210可从各ip封包r55产生每一ip封包r57。更详细地说,处理单元210通过从每一ip封包r55的包头或负载中移除客户端系统190的ip地址,用攻击阻挡/侦测服务器180的ip地址取代ip封包r55的来源端地址,以及用客户端系统190的ip地址取代ip封包r55的目的端地址来产生ip封包r57。因此,从客户端系统190的角度来看,受防护计算机资产510是隐藏的。攻击阻挡/侦测服务器180可配置为受防护计算机资产的虚拟闸。存储装置240存储受防护计算机资产的ip地址以供参考。更详细地说明,在步骤s350中,处理单元210产生并传送具有将已存储ip地址作为目的端ip地址的ip封包至受防护计算机资产,这些ip封包携带由客户端系统190发出的服务请求。攻击阻挡/侦测服务器180可为管理员提供人机接口(man-machineinterface,mmi),以从攻击阻挡/侦测服务器180和受防护计算机资产间采用的各候选协议(如http、https、wap、ftp、ldap、ssh等)中选择协议。因此,攻击阻挡/侦测服务器180遵循协议的规范,以传送服务请求至受防护计算机资产/从受防护计算机资产接收服务请求。攻击阻挡/侦测服务器180可配置为两个或更多的受防护计算机资产的虚拟闸。存储装置240可以存储映像至受防护计算机资产的ip地址的请求类型。上述映像可以数据结构实施,像是如数据表格、二维数组等,上述映像通过文件系统、关系数据库管理系统(relationaldatabasesystem)、文档数据库系统(documentdatabasesystem)或其他系统来存取。请求类型则可由埠号所指示。根据携带服务请求的ip封包的目的端埠号可判定每一服务请求可被转传至受防护计算机资产。在表格1中可看到映像至受防护计算机资产ip地址的示范性端口号。表格1埠号受防护计算机资产的ip地址uri80192.168.10.10bank.com443192.168.10.10bank.com109192.168.10.20mail1.com110192.168.10.30mail2.com995192.168.10.30mail2.com156192.168.10.40db.com更详细地说明,在步骤s350中,处理单元210根据客户端系统190所发送带有服务请求的每个ip封包的目的端端口号搜寻表格1,以找出受防护计算机资产的实际ip地址。接着,处理单元210产生并传送将所发现的ip地址作为目的端ip地址的ip封包至受防护计算机资产,其中该ip封包携带服务请求。此外,本领域的技术人员则可根据客户端系统190发送的每一ip封包的来源端端口号来搜寻表格1。在一些实施例中,请求类型可由来源端ip地址所指示。根据携带服务请求的ip封包的来源端ip地址判定每一服务请求将转发至哪个受防护计算机资产。在表格2中可看到映像至受防护计算机资产的ip地址的示例性来源端ip地址。表格2来源端ip地址受防护计算机资产的ip地址uri140.92.0.0~140.92.255.255192.168.10.20mail1.com192.192.0.0~192.192.255.255192.168.10.30mail2.com140.57.0.0~140.57.255.255192.168.10.40mail3.com更明确地说明,在步骤s350中,处理单元210根据客户端系统190发送携带服务请求的每一ip封包的来源端ip地址来搜寻表格2,以找出受防护计算机资产的实际ip地址。接着,处理单元210产生并发送以所发现的ip地址作为目的端ip地址一ip封包至受防护计算机资产,其中上述ip封包携带服务请求。此外,本领域的技术人员则可使用子网(subnet)来设计表格2的来源端ip地址。攻击阻挡/侦测服务器180可以向管理员提供人机接口,以配置如表格1或2所示的映射。图6是根据本发明实施例在基于云端环境中用于阻挡或侦测的计算机攻击的方法的流程图,该方法可以检查封装在流动网络封包中的第7层(所谓的应用层)信息,以侦测攻击模板。图6所描述的方法可以在攻击阻挡/检测模块480中实现。攻击阻挡/侦测服务器180的处理单元210重复执行循环,以调查封装在由客户端系统190发送一个或多个ip封包中的每一服务请求。流程开始于经由通讯接口260从客户端系统190接收一个或多个ip封包(步骤s610),并且从ip封包中取得服务请求,其中上述服务请求向受防护计算机资产请求服务(步骤s620)。判断服务请求是否包括计算机攻击(步骤s630)。上述计算机攻击的判断至少可通过如图3所示的两阶段过滤方法中步骤s340来实现。计算机攻击的判断还可进一步包括如图3所示的步骤s320、s325或s330及其他任何组合。当服务请求包括计算机攻击时(步骤s630的“是”路径),执行攻击阻挡/检测操作以阻挡受防护计算机资产攻击受到损害(步骤s640)。对在步骤s640的细节,读者可参考步骤s360的描述,此处为了简洁起见而将其省略。当服务请求不包括计算机攻击时(步骤s630的“否”路径),处理单元210取得受防护计算机资产的ip地址(步骤s651),产生并经由通讯接口260传送携带服务请求的ip封包至受防护计算机资产(步骤s653)。在步骤s651中,受防护计算机资产的ip地址可由存储装置240中所读取。或者,根据ip封包的请求类型,受防护计算机资产的ip地址可通过搜寻表格1或表格2来取得。请求类型可由ip封包的目的端埠号、来源端埠号或来源端ip地址等所指示。在步骤s653中,客户端系统190的ip地址可由已产生ip封包的包头或负载所提供,而客户端系统190发送的服务请求被提供在已产生ip封包的负载中。在另一实施例中,整个系统可配置如下:除了上述攻击阻挡/侦测服务器180之外,每一受防护计算机资产140a到170c可配置防病毒软件,和/或网页应用防火墙,和/或代理服务器,或其他在受防护计算机资产前端用于侦测和阻挡计算机攻击的防护措施。防病毒软件、网页应用防火墙及代理服务器可统称为保护替代方案。一旦侦测到任何包括计算机攻击的服务请求时(步骤s630的“是”路径),攻击阻挡/侦测服务器180的处理单元210就可将服务请求转传至指定的受防护计算机资产,以测试相应的防病毒软件、网页应用防火墙及代理服务器或其任何组合是否被配置并正常运行(步骤s640)。更详细地说明,在步骤s640中,攻击阻挡/侦测服务器180的处理单元210可经由通讯接口260转传服务请求至一个或多个受防护计算机资产。应注意的是,为了测试的目的,封装在服务请求中的攻击模板并不做修改。之后,当侦测并阻挡计算机攻击时,相应的防病毒软件、网页应用防火墙及代理服务器或其任何组合将由回复错误代码,以通知攻击阻挡/侦测服务器180受防护计算机资产发现计算机攻击,或直接忽略服务请求使转传的服务请求逾时。当未侦测到计算机攻击时,则攻击阻挡/侦测服务器180从受保护的计算机上窃取机密数据,破坏受防护计算机资产或执行任何损害受防护计算机资产的事。攻击阻挡/侦测服务器180的处理单元210可在预定时间期间内经由通讯接口260从受防护计算机资产中收集回复,并产生报告以指示已侦测到的计算机攻击是否可被各受防护计算机资产的防护替代方案所捕获。表格3描述了示范性报告。表格3该示范性报告显示,在pop3服务器中运作的防护替代方案“192.100.40.1#110”并未在2017年1月1日0:00所执行的测试中捕获编号为20232444的sql隐码攻击。随后,操作者可修复发生在失败计算机资产中侦测到的问题,或检查失败计算机资产中因计算机攻击造成的影响范围。在某些情况下,一个或多个受防护计算机资产可能不受任何防护替代方案的保护,因而面临计算机攻击的风险。当受防护计算机资产执行操作以响应包括计算机攻击的服务请求时,一些功能可能会意外损坏。攻击阻挡/侦测服务器180可在没有防护下转传服务请求至受防护计算机资产,以便检查损坏范围。虽然图2中包含了以上描述的组件,但不排除在不违反发明的精神下,使用更多其他的附加组件,已达成更佳的技术效果。此外,虽然图3及图6的方法流程图采用特定的顺序来执行,但应可理解,这些过程可以包括更多或更少的操作,其可以串行或平行执行(例如,使用平行处理器或多线程环境)。虽然本发明使用以上实施例进行说明,但需要注意的是,这些描述并非用以限缩本发明。相反地,此发明涵盖了本领域技术人员显而易见的修改与相似设置。所以,申请权利要求范围须以最宽广的方式解释来包含所有显而易见的修改与相似设置。符号说明110网关120a、120b路由器130a~130d集线器140a~140c服务器150a监控主机150b、150c监控摄影机160a照明控制系统160b智能电视160c门禁控制系统170a笔记本电脑170b个人计算机170c平板计算机190客户端计算机210处理单元220显示设备230输入装置240存储单元250存储器260网络接口s310、s320、s325、s330、s340、s350、s360方法步骤410物理层模块420数据链路层模块430网络层模块440传输层模块450会话层模块460表现层模块470应用层模块480攻击阻挡/侦测模块510受防护计算机资产r51、r53、r55、r57ip封包s610、s620、s630、s640、s651、s653方法步骤当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1