CN101304418A - 客户端侧经由提交者核查来防止偷渡式域欺骗 - Google Patents

客户端侧经由提交者核查来防止偷渡式域欺骗 Download PDF

Info

Publication number
CN101304418A
CN101304418A CN200810099303.8A CN200810099303A CN101304418A CN 101304418 A CN101304418 A CN 101304418A CN 200810099303 A CN200810099303 A CN 200810099303A CN 101304418 A CN101304418 A CN 101304418A
Authority
CN
China
Prior art keywords
http
url
address
html
http request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200810099303.8A
Other languages
English (en)
Other versions
CN101304418B (zh
Inventor
肖恩·库利
罗恩·特罗洛普
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Norton identity protection
Original Assignee
Symantec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Symantec Corp filed Critical Symantec Corp
Publication of CN101304418A publication Critical patent/CN101304418A/zh
Application granted granted Critical
Publication of CN101304418B publication Critical patent/CN101304418B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

在将从客户端计算机系统的网站浏览器起始的HTTP请求释放到例如家用路由器等路由器之前对其进行代理。将识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL的HTTP请求确定为指示偷渡式域欺骗攻击,并阻断将其发送到所述路由器。在HTTP请求未识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL的情况下,不确定所述HTTP请求指示偷渡式域欺骗攻击,且将其释放以供发送到所述路由器。在一些实施例中,在将响应于所释放HTTP请求而接收的HTTP响应释放到所述网站浏览器之前对其进行代理。根据指示修改具有类型文本/html或脚本的内容的HTTP响应以防止恶意活动并将其释放到所述网站浏览器。

Description

客户端侧经由提交者核查来防止偷渡式域欺骗
技术领域
本发明涉及计算机系统,且更明确地说,涉及计算机安全性。
背景技术
廉价的宽带路由器是人们用以在家中创建内部(有时为无线)网络的常用方式。遗憾的是,通过访问恶意网页,人们可在无意中使得路由器受到恶意攻击。可相对于客户端侧路由器发起的一类恶意攻击被称为偷渡式域欺骗(drive-by pharming)攻击,其可导致拒绝服务、感染恶意代码或身份失窃以及其它恶意结果。
发明内容
根据本发明的一个实施例,一种用于保护客户端计算机系统免受偷渡式域欺骗攻击的方法包括:在将客户端计算机系统上的HTTP请求释放到路由器之前代理所述HTTP请求,所述HTTP请求包括HTTP标头;确定所述HTTP标头是否识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL;在确定HTTP标头识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL时,阻断所述HTTP请求;以及提供告警通知。在确定HTTP标头未识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL时,释放所述HTTP请求。
根据本发明的另一实施例,所述方法进一步包括:在将对所释放HTTP请求的HTTP响应释放到网站浏览器之前代理所述HTTP响应,确定所述HTTP响应的内容类型;确定所述内容类型是否为类型文本/html或类型脚本;其中在确定内容类型是类型文本/html或类型脚本时,修改所述内容以防止恶意活动;以及释放所述HTTP响应。在确定内容类型不是类型文本/html或类型脚本时,释放所述HTTP响应。
当内容类型是类型文本/html时,修改所述内容以防止恶意活动包括:针对每一HTML参考URL剖析HTML内容;确定每一HTML参考URL是否对应于不可路由的专用IP地址;其中在确定HTML参考URL对应于不可路由的专用IP地址时,用安全URL替代HTML参考URL;以及释放所述HTTP响应。在一些实施例中,告警用户。在确定HTML参考URL不对应于不可路由的专用IP地址时,释放所述HTTP响应。
当内容类型是类型脚本时,修改所述内容以防止恶意活动包括:在内容顶部在任何脚本之前注入JavaScript覆盖,所述JavaScript覆盖定义安全XMLHttpRequest和安全ActiveX替代对象;针对脚本而并非JavaScript覆盖剖析所述内容;用安全XMLHttpRequest替代每一脚本中的每一XMLHttpRequest;用ActiveX替代对象替代每一脚本中的每一对象标签;以及释放所述HTTP响应。
结合附图阅读以下详细描述可最佳理解本文描述的实施例。
附图说明
图1是根据本发明一个实施例的计算机系统的图,所述计算机系统包括在客户端计算机系统上执行的客户端反域欺骗应用程序。
图2说明根据本发明一个实施例的用于保护客户端计算机系统以免受偷渡式域欺骗攻击的方法的流程图。
图3A和3B说明根据本发明另一实施例的用于保护客户端计算机系统免受偷渡式域欺骗攻击的方法的流程图。
图4A到4D说明根据本发明另一实施例的用于保护客户端计算机系统免受偷渡式域欺骗攻击的方法的流程图。
在附图和详细描述中始终使用共用参考数字来指示相同元件。
具体实施方式
在利用路由器的典型家用网络中,用户将针对资源(例如网页的URL)的请求输入到家用网络的客户端计算机系统上的网站浏览器中。所述网站浏览器产生针对所述网页的HTTP请求,所述HTTP请求被发送到在家用网络上管理计算机系统的DNS设置的路由器。通常,路由器执行DSN查找来定位与所请求网页的URL相关联的IP地址,且当完成时将HTTP请求发送到主管所述网页的相关联服务器。
在偷渡式域欺骗攻击中,返回包括恶意代码(例如偷渡式域欺骗代码)的网页作为对HTTP请求的HTTP响应。当所述网页在用户的网站浏览器中运行时,最初恶意代码开始将来自网站浏览器的HTTP请求发送到路由器以试图得知路由器的IP地址。一旦获得路由器的IP地址,恶意代码便接着连接到路由器的网站接口且改变设置,使得将DNS解析重定向到欺骗性网站。
所述欺骗性网站常常模拟真实网站的外观,以便不会向用户告警所述重定向。这允许攻击者获取用户输入到欺骗性网站的信息,例如个人证书和口令。攻击者接着可利用用户信息来发起恶意活动,例如获得对数据的欺诈存取或从用户银行账户偷取金钱。关于偷渡式域欺骗的其它信息可参见斯德·斯塔姆(Sid Stamm)、祖尔费卡·拉姆山(ZulfikarRamzan)和马库斯·雅科布森(Markus Jakobsson)所著的文章“偷渡式域欺骗(Drive-ByPharming)”,所述文章在2006年12月13日发表且可在http://www.symantec.com/avcenter/reference/Driveby_Pharming.pdf中找到。
在HTTP请求中,所请求的资源在常规上由统一资源定位符(URL)识别。URL是指定可通过HTTP存取的资源的位置的文本串。举例来说,对于HTTP,URL可以是“http://abigbank.com”。
通常经由域名服务器(DNS)询问将URL解析为具体的因特网协议(IP)地址,例如通过网站浏览器。常规上,IP地址是32位数字。因此,举例来说,可将URL“http://abigbank.com”解析为IP地址“25.234.56.71”。
IP地址是专用IP地址或公用IP地址。由于URL对应于特定IP地址,因而本文将对应于专用IP地址的URL称为专用URL并将对应于公用IP地址的URL称为公用URL。
本文中专用IP地址是不可路由的IP地址,即专用IP地址不能用于直接连接到因特网。通常,在家用路由器服务的家用网络上分配给客户端计算机系统的IP地址是不可路由的专用IP地址。举例来说,常规上,对应于十进制点符号形式10.x.x.x、172.16.x.x和192.168.x.x的IP地址是专用IP地址且不可路由。
本文中公用IP地址是可路由的IP地址,即公用IP地址可用于直接连接到因特网。通常,在因特网上分配给主管网页的网站服务器的IP地址是可路由的公用IP地址。举例来说,常规上,不对应于十进制点符号形式10.x.x.x、172.16.x.x和192.168.x.x的IP地址是公用IP地址且可路由。
针对资源(例如网页)的HTTP请求的格式由HTTP协议指定,其需要提供关于HTTP请求的信息的HTTP标头。HTTP协议定义了许多可在HTTP标头中利用的字段。明确地说,来自HTTP客户端的HTTP请求通常包括:目标URL字段,其包括识别所请求URL(本文中称为目标URL)的数据;和“提交者”URL字段,其包括识别含有用户到达发起HTTP请求的当前页面所跟随的链接的页面的URL(本文中称为提交者URL)的数据。
对HTTP请求的HTTP响应的格式也由HTTP协议指定,其需要提供关于HTTP响应的信息的HTTP标头。HTTP响应通常包括HTTP消息字段(有时称为内容字段),其含有所请求的数据或内容,例如HTML网页、脚本、文件或程序代码。HTTP响应通常包括内容类型字段,其包括识别正在HTTP响应中返回的内容的媒体类型和子类型(如果适用的话)(本文中称为内容类型)的数据。举例来说,内容类型字段可含有将内容的媒体类型识别为文本/html或脚本的数据。
现大体上参看图2,在一个实施例中,在将客户端计算机系统上例如由网站浏览器产生的HTTP请求从客户端计算机系统释放到路由器(例如,客户端侧家用路由器)之前对其进行代理(操作204)。评估HTTP请求中存在的HTTP标头以确定目标URL(操作206)和提交者URL(操作208)。
确定HTTP标头是否识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL两者(操作210)。当HTTP标头识别对应于公用IP地址的提交者URL和对应于专用IP地址的目标URL两者时,确定HTTP请求指示偷渡式域欺骗攻击。当不视情况进行排除(操作212)时,阻断将HTTP请求发送到路由器(操作214),且产生用户告警(操作216)。
或者,当HTTP标头未识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL两者时,不确定HTTP请求指示偷渡式域欺骗攻击,且释放HTTP请求以供发送到路由器(操作218)。
在另一实施例中,扩展图2的方法,以使得根据指示将对所释放的HTTP请求的HTTP响应进行代理和修改,以保护客户端计算机系统免受利用嵌入HTML目标标签、脚本产生的HTML目标标签和AJAX风格XMLHttpRequest呼叫的偷渡式域欺骗攻击。因此,大体上参看图4A到4D,在一个实施例中,另外在对所释放HTTP请求的HTTP响应由网站浏览器接收之前对其进行代理(操作406),且确定HTTP响应的内容类型(操作408)。确定内容类型是否被识别为文本/html或脚本(操作410)。
当内容类型未被确定为文本/html或脚本(“否”)时,释放HTTP响应以供发送到网站浏览器(操作412)。或者,当内容类型被确定为文本/html时,大体上参看图4C,针对HTML参考URL的实例剖析所述内容(操作416)。评估每一HTML参考URL以确定URL是否指向不可路由的专用IP地址(操作420、422)。当HTML参考URL指向不可路由的专用IP地址时,用安全URL(例如空串或安全替代URL)替代原始HTML参考URL(操作426)。视情况,还产生用户告警(操作424)。接着释放HTTP响应以供发送到网站浏览器(操作412)。
或者,当内容类型被确定为脚本时,大体上参看图4D,在内容顶部在任何脚本之前注入JavaScript覆盖(操作432)。在一个实施例中,JavaScript覆盖定义了安全XMLHttpRequest和ActiveX替代对象。针对脚本而并非所注入的JavaScript覆盖剖析所述内容(操作434)。用安全XMLHttpRequest替代每一脚本中的XMLHttpRequest的直接使用的每一实例(操作440),且用ActiveX替代对象替代每一对象标签(操作442)。接着释放HTTP响应以供发送到网站浏览器(操作412)。
更明确地说,图1是根据本发明一个实施例的计算机系统100(例如,第一计算机系统)的图,所述计算机系统100包括在客户端计算机系统102上执行的客户端反域欺骗应用程序106。客户端计算机系统102(有时称为用户装置)通常包括中央处理单元(CPU)108(下文称为处理器108)、输入输出(I/O)接口110和存储器112,所述存储器112包括操作系统104。
在一个实施例中,存储器112包括客户端反域欺骗应用程序106和网站浏览器应用程序114。在一个实施例中,网站浏览器应用程序114再现网页内容。网站浏览器应用程序114是多种常规网站浏览器应用程序中的任一种,且特定网站浏览器应用程序对于此实施例来说不是必要的。常规网站浏览器对于所属领域的技术人员来说是众所周知的,且本文中不再作进一步描述以免偏离本发明的原理。
客户端计算机系统102可进一步包括标准装置,如键盘116、鼠标118、打印机120和显示装置122,以及一个或一个以上标准输入/输出(I/O)装置124,例如光盘(CD)或DVD驱动器、软盘驱动器或其它数字或波形端口,以用于将数据输入或输出客户端计算机系统102。在一个实施例中,例如从含有客户端反域欺骗应用程序106的CD、DVD或软盘经由I/O装置124将客户端反域欺骗应用程序106加载到客户端计算机系统102。
客户端计算机系统102耦合到路由器140,例如家用宽带路由器。路由器140接收在网站浏览器114处发起且从客户端计算机系统102发送的出站HTTP请求。路由器140将所述HTTP请求发送到所指示的计算机系统,例如计算机系统128。
路由器140还接收入站通信,例如回复HTTP请求而发送的入站HTTP响应。路由器140将所述HTTP响应发送到所识别的计算机系统,例如客户端计算机系统102。更明确地说,路由器140将所述HTTP响应发送到客户端计算机系统102的网站浏览器114。路由器140是多种常规路由器中的任一种,例如家用宽带路由器,且特定路由器对此实施例不是必要的。
在本实施例中,在将网站浏览器114产生的HTTP请求从客户端计算机系统102释放到路由器140之前,客户端反域欺骗应用程序106代理所述HTTP请求。如本文进一步描述,针对恶意代码活动(例如偷渡式域欺骗攻击)的指示来评估所述HTTP请求。阻断被确定为指示偷渡式域欺骗攻击的HTTP请求从客户端计算机系统102释放到路由器140,或在释放到路由器140之前采取其它保护动作。
在一些实施例中,在HTTP响应由网站浏览器114接收之前,客户端反域欺骗应用程序106也代理所述HTTP响应,所述HTTP响应例如为响应于来自网站浏览器114的HTTP请求而从计算机系统128发送的HTTP响应。如本文进一步描述,在指示时对HTTP响应进行评估和修改以防止恶意活动,例如偷渡式域欺骗攻击。
路由器140通过网络126耦合到外部计算机系统。举例来说,路由器140经由网络126(例如,因特网)耦合到服务器计算机系统130和计算机系统128。服务器计算机系统130通常包括显示装置132、处理器134、存储器136和网络接口138。
在一个实施例中,计算机系统128可以是主管具有恶意代码的网页的网站内容服务器,所述恶意代码在下载到计算机系统时会招致偷渡式域欺骗攻击。本文中,在一个实施例中,恶意代码被定义为在授权用户不知道且/或在未经授权用户同意的情况下进入计算机系统环境的任何计算机程序、模块、模块组或代码。可招致偷渡式域欺骗攻击的代码是恶意代码的一个实例。另外在本文中,恶意活动是由执行恶意代码产生的任何活动。
在一个实施例中,计算机系统128类似于客户端计算机系统102和/或服务器计算机系统130,例如包括中央处理单元、输入输出(I/O)接口和存储器。计算机系统128可进一步包括标准装置,如键盘、鼠标、打印机、显示装置和I/O装置。不对计算机系统128的各种硬件组件进行说明以免偏离本发明的原理。
网络126可以是用户所关注的任何网络或网络系统。在各种实施例中,网络接口138和I/O接口110包括模拟调制解调器、数字调制解调器或网络接口卡。客户端计算机系统102、计算机系统128和服务器计算机系统130的特定类型和配置对本发明的此实施例不是必要的。
图2说明根据本发明一个实施例的用于保护客户端计算机系统102以免受偷渡式域欺骗攻击的方法200的流程图。在本描述中,假设已经从网站浏览器114向计算机系统128发布对网站的第一HTTP请求,且含有恶意偷渡式域欺骗代码的网页已返回到网站浏览器114且现正在网站浏览器114中执行。更明确地说,存在于网站浏览器114中所执行的网页中的恶意偷渡式域欺骗代码正发起HTTP请求,例如试图对客户端计算机系统102产生偷渡式域欺骗攻击。
现同时参看图1和2,在一个实施例中,处理器108执行客户端反域欺骗应用程序106导致方法200的操作,如下文描述。在进入操作202处进入方法200,其中处理过渡到代理HTTP请求操作204。
在代理HTTP请求操作204中,在将起源于客户端计算机系统102(例如来自在网站浏览器114中执行的恶意代码)的出站HTTP请求从客户端计算机系统102释放到路由器140之前对其进行代理。在一个实施例中,HTTP请求由客户端反域欺骗应用程序106的HTTP代理组件代理。可利用多种代理技术中的任一种(例如通过挂钩技术)来代理HTTP请求,使得停止将HTTP请求发送到路由器140。对HTTP请求的代理对所属领域的技术人员来说是众所周知的,且本文中不再对其作进一步描述以免偏离本发明的原理。
在一个实施例中,HTTP请求包括至少具有提交者URL和目标URL的HTTP标头。如早先描述,提交者URL对应于(即,解析到)用户所存取的正从中请求目标URL的网页的IP地址。目标URL对应于(即,解析到)所请求网页的IP地址,本文中称为目标URL IP地址。从代理HTTP请求操作204,处理过渡到确定目标URL操作206。
在确定目标URL操作206中,从在操作204中代理的HTTP请求的HTTP标头确定目标URL,例如通过剖析HTTP标头或通过使用其它评估技术来确定目标URL。从确定目标URL操作206,处理过渡到确定提交者URL操作208。
在确定提交者URL操作208中,从在操作204中代理的HTTP请求的HTTP标头确定提交者URL,例如通过剖析HTTP标头或通过使用其它评估技术来确定提交者URL。从确定提交者URL操作208,处理过渡到公用提交者和专用目标核查操作210。
在公用提交者和专用目标核查操作210中,将在操作206中确定的目标URL和在操作208中确定的提交者URL每一者解析或以另外方式对应到各自IP地址。举例来说,将目标URL解析或以另外方式对应到目标URL IP地址,且将提交者URL解析或以另外方式对应到提交者URL IP地址。
确定提交者URL IP地址是否为可路由的公用IP地址且目标URL IP地址是否为不可路由的专用IP地址。在一个实施例中,将提交者URL IP地址和目标URL IP地址与已知专用和/或公用IP地址的数据库进行比较,或以另外方式对其评估以确定每一各自URL IP地址是公用IP地址还是专用IP地址。
在一个实施例中,确定为可路由的公用IP地址的提交者URL IP地址连同确定为不可路由的专用IP地址的目标URL IP地址的组合被视为指示偷渡式域欺骗攻击。举例来说,以上组合可指示网站浏览器114中执行的恶意代码试图识别路由器140的IP地址,使得可在路由器140上实施恶意改变以实现偷渡式域欺骗攻击。
或者,其中提交者URL IP地址是公用IP地址且目标URL IP地址是公用IP地址或其中提交者URL IP地址是专用IP地址且目标URL IP地址是公用或专用IP地址的组合不被视为指示偷渡式域欺骗攻击。因此,在一个实施例中,当不确定提交者URL IP地址是可路由的公用IP地址且目标URL IP地址是不可路由的专用IP地址(“否”)时,不指示偷渡式域欺骗攻击,且处理从公用提交者和专用目标核查操作210过渡到释放HTTP请求操作218。
在释放HTTP请求操作218中,释放在操作204中代理的HTTP请求并允许其从客户端计算机系统102前进到路由器140。从释放HTTP请求操作218,处理在退出操作220处退出方法200,或视情况返回到操作204以代理下一个HTTP请求。
回头再次参看公用提交者和专用目标核查操作210,或者当确定提交者URL IP地址是可路由的公用IP地址且目标URL IP地址是不可路由的专用IP地址(“是”)时,此组合指示偷渡式域欺骗攻击。从公用提交者和专用目标核查操作210,处理视情况过渡到排除阻断核查操作212或直接过渡到阻断HTTP请求操作214。
在可选的排除阻断核查操作212中,确定是否排除阻断HTTP请求。举例来说,在一个实施例中,将提交者URL IP地址与被排除提交者URL IP地址列表中的条目进行比较,且/或将目标URLIP地址与被排除目标URLIP地址列表中的条目进行比较。
在一个实施例中,提交者URL IP地址与被排除提交者URL IP地址列表中的条目的匹配和/或目标URL IP地址与被排除目标URL IP地址列表中的条目的匹配导致排除阻断HTTP请求的确定。在其它实施例中,可利用使用提交者URL IP地址和/或目标URLIP地址的其它排除评估技术。在另外实施例中,可评估HTTP请求的其它参数以确定是否排除阻断HTTP请求。
在一个实施例中,在确定排除阻断HTTP请求(“是”)时,处理从可选的排除阻断核查操作212过渡到释放HTTP请求操作218,如早先描述。或者,在确定不排除阻断HTTP请求(“否”)时,从排除阻断核查操作212,处理过渡到阻断HTTP请求操作214。
在阻断HTTP请求操作214中,阻断HTTP请求。在一个实施例中,阻止将HTTP请求发送到路由器140。以此方式,阻止恶意代码经由HTTP请求得知路由器的IP地址,且阻止恶意代码对路由器140发起恶意改变,例如用于支持偷渡式域欺骗攻击的那些恶意改变。从阻断HTTP请求操作214,处理过渡到告警用户操作216。
在告警用户操作216中,产生告警通知并将其提供到用户。使用多种技术中的任一种来通知用户,例如通过产生弹出窗口并在显示装置122上显示。在一个实施例中,向客户端计算机系统102的用户告警在客户端计算机系统102上存在恶意代码(例如偷渡式域欺骗代码)和/或HTTP请求被阻断。从告警用户操作216,处理在退出操作220处退出方法200,或视情况返回到操作204以在客户端计算机系统102上代理下一个出站HTTP请求。
在以上实施例中,在不需要用户输入的情况下自动执行阻断HTTP请求(例如,操作214)。在替代实施例中,在阻断HTTP请求之前询问用户是确认还是拒绝阻断HTTP请求,如本文参看图3A和3B进一步描述。
图3A和3B说明根据本发明另一实施例的用于保护客户端计算机系统102以免受偷渡式域欺骗攻击的方法300的流程图。现同时参看图1、2、3A和3B,在一个实施例中,处理器108执行客户端反域欺骗应用程序106导致方法300的操作,如下文描述。参看图3A,在一个实施例中,在进入操作302处进入方法300,且处理过渡到代理HTTP请求操作204。
如早先参看图2和方法200描述执行代理HTTP请求操作204,图2和方法200以引用的方式并入此处,其中处理连续通过操作206、208、核查操作210和核查操作212(可选),如早先描述,不同之处只是从排除阻断核查操作212(“否”)或在不执行核查操作212时直接从公用提交者和专用目标核查操作210(“是”),处理过渡到提示用户操作306(图3B)。
参看图3B,在提示用户操作306中,产生用户提示且在客户端计算机系统102上显示,从而请求用户输入是确认还是拒绝阻断动作。举例来说,在一个实施例中,产生弹出或其它通知并在显示装置122上显示,从而提示用户(未图示)输入是否阻断HTTP请求。
在一些实施例中,用户提示提供文本解释,例如所述HTTP请求可疑且/或指示偷渡式域欺骗攻击的解释。在一个实施例中,用户提示是允许用户输入响应选择的图形用户界面,所述响应选择在由客户端反域欺骗应用程序106接收到时导致阻断或释放HTTP请求。
举例来说,图形用户界面可包括文本询问,例如“已经产生指示偷渡式域欺骗攻击的HTTP请求。你是否想要阻断所述请求?”;且可进一步包括两个响应选择按钮,例如“是”和“否”。在一个实例中,选择“是”按钮导致将肯定响应发送到客户端反域欺骗应用程序106,且选择“否”按钮导致将否定响应发送到客户端反域欺骗应用程序106。从提示用户操作306,处理过渡到接收用户输入操作308。
在接收用户输入操作308中,由客户端反域欺骗应用程序106接收用户输入。举例来说,接收在操作306中产生和显示的用以确认或拒绝阻断HTTP请求的对图形用户界面的用户输入。从接收用户输入操作308,处理过渡到用户确认阻断核查操作310。
在用户确认阻断核查操作310中,确定在操作308中接收的用户输入是否确认阻断HTTP请求。继续早先实例,肯定响应(“是”)确认阻断HTTP请求,且否定响应(“否”)拒绝阻断HTTP请求。
当用户不确认(即,拒绝)阻断HTTP请求(“否”)时,HTTP请求将被释放且处理从用户确认阻断核查操作310过渡到释放HTTP请求操作218,如早先描述那样执行。从释放HTTP请求操作218,处理过渡到退出操作304,其中处理退出方法300或视情况返回到操作204(图3A)以代理下一个出站HTTP请求。
再次参看用户确认阻断核查操作310,或者当用户确认阻断HTTP请求(“是”)时,HTTP请求将被阻断,且处理从用户确认阻断核查操作310过渡到阻断HTTP请求操作214,如早先描述那样执行。从阻断HTTP请求操作218,处理过渡到告警用户操作216,如早先描述那样执行。从告警用户操作218,处理过渡到退出操作304,其中处理退出方法300或视情况返回到操作204(图3A)以代理下一出站HTTP请求。
在另一实施例中,如本文参看图4A到4D描述,延伸方法200以使得根据指示对响应于HTTP请求而返回的HTTP响应进行评估和修改,以进一步保护客户端计算机系统102免受偷渡式域欺骗攻击。更明确地说,在网站浏览器114接收入站HTTP响应之前对其进行代理并进行评估和修改(在指示的情况下),以保护客户端计算机系统102免受存在于HTTP响应内容中的恶意代码影响。
图4A到4D说明根据本发明另一实施例的用于保护客户端计算机系统免受偷渡式域欺骗攻击的方法400的流程图。现同时参看图1、2和4A到4D,在一个实施例中,处理器108执行客户端反域欺骗应用程序106导致方法400的操作,如下文描述。
在一个实施例中,在进入操作402处进入方法400,且处理过渡到代理HTTP请求操作204。如早先参看图2和方法200描述执行代理HTTP请求操作204,图2和方法200以引用的方式并入此处,其中处理连续通过操作206、208、核查操作210、核查操作212、操作214、216和218,如早先参看方法200和图2描述,不同之处只是在释放HTTP请求操作218随后,处理过渡到代理HTTP响应操作406(图4B),以代理响应于在操作218中释放的HTTP请求而返回的HTTP响应。
参看图4B,在代理HTTP响应操作406中,在将客户端计算机系统102上接收到的入站HTTP响应(例如来自计算机系统128)发送到网站浏览器114之前对其进行代理。举例来说,在一个实施例中,由客户端反域欺骗应用程序106的HTTP代理组件停止入站HTTP响应。可利用多种代理技术中的任一种来停止HTTP响应,例如通过挂钩技术。对HTTP响应的代理对所属领域的技术人员来说是众所周知的,且本文中不再对其作进一步描述以免偏离本发明的原理。
在一个实施例中,HTTP响应包括至少具有内容类型字段的HTTP标头,且可进一步包括例如恶意偷渡式域欺骗代码等内容。从代理HTTP响应操作406,处理过渡到确定内容类型操作408。
在确定内容类型操作408中,评估HTTP响应以确定正在HTTP响应中返回的内容的内容类型(如果存在的话)。在一个实施例中,评估HTTP响应的内容类型字段以确定内容类型和任何子类型(在适用时),例如通过剖析或扫描或以另外方式评估HTTP响应。从确定内容类型操作408,处理过渡到类型文本/html或脚本核查操作410。
在类型文本/html或脚本核查操作410中,确定在操作408中确定的内容类型是否被识别为文本/html或脚本。当内容类型不是文本/html或脚本(“否”)时,从类型文本/html或脚本核查操作410,处理过渡到释放HTTP响应操作412。
在释放HTTP响应操作412中,释放在操作406中代理的HTTP响应并允许其前进到网站浏览器114。从释放HTTP响应操作412,处理在退出操作404处退出方法400,或视情况返回到操作204(图4A)以代理下一个HTTP请求。
再次参看类型文本/html或脚本核查操作410(图4B),或者当内容类型是文本/html或脚本(“是”)时,从类型文本/html或脚本核查操作410,当类型是文本/html时处理过渡到针对HTML参考URL剖析内容操作416(图4C),或当类型是脚本时处理过渡到注入JavaScript覆盖操作432(图4D)。
现参看图4C,当确定HTTP响应的内容类型是类型文本/html时,在针对HTML参考URL剖析内容操作416中,剖析HTTP响应的HTML内容以定位每一HTML参考URL。在一个实施例中,客户端反域欺骗应用程序106的轻型HTML剖析器组件可用于剖析HTML内容且定位每一HTML参考URL。在一个实施例中,HTML参考URL的实例包括A、IMG、SCRIPT、STYLE、OBJECT和EMBED标签以及从内嵌或区块风格参考的URL。从针对HTML参考URL剖析内容操作416,处理过渡到HTML参考URL核查操作418。
在HTML参考URL核查操作418中,确定在操作416中是否识别到至少一个HTML参考URL。当在操作416中没有识别到HTML参考URL(“否”)时,从HTML参考URL核查操作418,处理在操作430处过渡到释放HTTP响应操作412(图4B),其中将HTTP响应释放到网站浏览器114,如早先描述。
回头再次参看图4C,或者当在操作416中识别到至少一个HTML参考URL(“是”)时,从HTML参考URL核查操作418,处理过渡到选择HTML参考URL操作420。
在选择HTML参考URL操作420中,选择在操作416中识别到的第一HTML参考URL以进行评估。从选择HTML参考URL操作420,处理过渡到指向专用IP地址核查操作422。
在指向专用IP地址核查操作422中,确定在操作420中选择的HTML参考URL是否对应于专用IP地址。在一个实施例中,将HTML参考URL解析或以另外方式对应到IP地址,本文中称为HTML参考URL IP地址。
在一个实施例中,将HTML参考URL IP地址与已知专用和/或公用IP地址的数据库进行比较,或以另外方式对其进行评估以确定HTML参考URL IP地址是否为专用IP地址。当HTML参考URL IP地址不是专用IP地址时,即是公用IP地址(“否”)时,从指向专用URL IP地址核查操作422,处理过渡到下一个HTML参考URL核查操作428。
在下一个HTML参考URL核查操作428中,确定在操作416中识别到的下一个HTML参考URL是否留待评估。当下一个HTML参考URL留待评估(“是”)时,从下一个HTML参考URL核查操作428,处理返回到操作420,其中选择下一个HTML参考URL以进行评估。或者,当下一个HTML参考URL未留待评估(“否”)时,从下一个HTML参考URL核查操作428,处理在操作430处过渡到操作412(图4B),其中释放HTTP响应以供发送到网站浏览器114,且处理在退出操作404处退出方法400或视情况返回到操作204(图4A),以代理下一个HTTP请求。
再次参看图4C和指向专用IP地址核查操作422,或者当HTML参考URL IP地址是专用IP地址(“是”)时,从指向专用URL IP地址核查操作422,处理视情况过渡到告警用户操作424或直接过渡到用安全URL替代HTML参考URL操作426。
在可选的告警用户操作424中,产生告警通知并将其提供到用户。使用多种技术中的任一种来通知用户,例如通过产生弹出窗口并在显示装置122上显示。在一个实施例中,向客户端计算机系统102(图1)的用户告警检测到恶意代码(例如偷渡式域欺骗代码)和将用安全HTML URL替代或移除HTTP响应中的HTML参考URL。从可选的告警用户操作424,处理过渡到用安全URL替代HTML参考URL操作426。
在用安全URL替代HTML参考URL操作426中,用安全URL(例如空串或例如指向虚拟文件的虚拟URL)替代原始HTML参考URL。在一些实施例中,移除原始HTML参考URL,例如使得<A HREF=“http://192.168.1.1”>变成<A HREF=””>,或原始HTML参考URL经特殊处置以使得返回零字节响应。从用安全URL替代HTML参考URL操作426,处理过渡到早先描述的下一个HTML参考URL核查操作428,其中处理返回到操作420(“是”)或过渡到早先描述的释放HTTP响应操作412(图4B)(“否”)。从释放HTTP响应操作412(图4B),释放HTTP响应以供发送到网站浏览器114。
再次参看图4B和类型文本/html或脚本核查操作410,或者当确定HTTP响应的内容类型为脚本时,处理从类型文本/html核查操作410过渡到注入JavaScript覆盖操作432(图4D)。现参看图4D,在注入JavaScript覆盖操作432中,在HTML请求的内容中注入在内容中覆盖选定恰当功能性以防止脚本攻击的JavaScript(本文称为JavaScript覆盖)。在一个实施例中,JavaScript覆盖注入在HTML页面内容顶部处于所有<脚本>标签之前。
在一个实施例中,JavaScript覆盖定义安全应用程序编程接口(API)类,例如安全XMLHttpRequest API,例如称为安全XMLHttpRequest,其含有标准XMLHttpRequest API的所有功能性,而且还在发布HTTP请求之前确定提交者IP地址和目标IP地址。JavaScript覆盖接着实施执行“document.write=SafeWrite”。
“document.write=SafeWrite”确保所有对document.write()的调用均不试图注入参考专用IP地址的新HTML或试图使用标准XMLHttpRequest的新JavaScript。当用参考专用IP地址的HTML调用document.write()时,发生早先参看操作426(图4C)描述的相同移除/替代,操作426以引用的方式并入此处。
在用试图利用标准XMLHttpRequest API的JavaScript调用document.write()时,用安全XMLHttpRequest API或随机化等效名称替代JavaScript。在一个实施例中,JavaScript覆盖中所使用的变量和类名称经随机化以降低在攻击者知道了所注入JavaScript覆盖中所使用的变量和类名称时绕过JavaScript覆盖的可能性。
在一个实施例中,JavaScript覆盖还定义ActiveX替代对象。当调用ActiveX替代对象时,ActiveX替代对象代理对原始ActiveX对象的请求,其中首先核查请求是否识别公用的提交者IP地址和专用的目标IP地址,且采取恰当的阻断/提示动作,如早先参看方法200和300描述。这提供对不支持XMLHttpRequest API的一些网站浏览器的较老版本(例如因特网探测器(Internet Explorer))的保护,且防止试图使用较老ActiveX对象来攻击计算机系统的网站。
ActiveX替代对象不需要接管真实ActiveX对象的注册,因为早先参看操作426(图4C)描述的用安全XMLHttpRequest API替代XMLHttpRequest API的方法还可用于例如用安全对象(例如Symantec.SafeXMLHTTP)替代Microsoft.XMLHTTP,例如在现有JavaScript中进行的搜索和替代以及针对所产生的脚本搜索document.write()调用。从注入JavaScript覆盖操作432,处理过渡到针对脚本剖析内容操作434。
在针对脚本剖析内容操作434中,剖析HTTP响应的内容以定位每一脚本而并非在操作432中注入的JavaScript覆盖。在一个实施例中,剖析存在于HTTP响应的内容字段中的数据以识别每一脚本。从针对脚本剖析内容操作434,处理过渡到脚本核查操作436。
在脚本核查操作436中,确定在操作434中是否识别到至少一个脚本。当操作434中没有识别到脚本(“否”)时,从脚本核查操作436,处理在操作450中过渡到早先描述的释放HTTP响应操作412(图4B),其中将HTTP响应释放到网站浏览器114。或者,当在操作434中识别到至少一个脚本(“是”)时,从脚本核查操作434,处理过渡到选择脚本操作438。
在选择脚本操作438中,选择在操作434中识别的脚本以进行评估。从选择脚本操作438,处理过渡到用安全XMLHttpRequest API替代XMLHttpRequest API操作440。
在用安全XMLHttpRequest API替代XMLHttpRequest API操作440中,用安全XMLHttpRequest API(例如,SafeXMLHttpRequest API)或其它安全等效物(早先在操作432处注入和定义)替代存在于脚本中的每一XMLHttpRequest API(如果存在的话)。从用安全XMLHttpRequest API替代XMLHttpRequest API操作440,处理过渡到用ActiveX替代对象替代对象标签操作442。
在用ActiveX替代对象替代对象标签操作442中,用早先在操作432中注入和定义的ActiveX替代对象替代存在于脚本中的每一对象标签(如果存在的话)。在一个实施例中,用ActiveX替代对象替代Microsoft.XMLHTTP对象以及Msxml2.XMLHTTP对象和任何其它使用过的XML请求程序。从用ActiveX替代对象替代对象标签操作442,处理过渡到下一个脚本核查操作448。
在下一个脚本核查操作448中,确定在操作434中识别到的下一个脚本是否留待评估。当下一个脚本留待评估(“是”)时,从下一个脚本核查操作448,处理返回到操作438,其中选择下一个脚本以进行评估。或者,当下一个脚本未留待评估(“否”)时,从下一个脚本核查操作448,处理在操作450处过渡到操作412(图4B),其中将HTTP响应释放到网站浏览器114,且处理在退出操作404处(图4A)退出方法400或视情况返回到操作204(图4A),以代理下一个入站HTTP请求。
在另一实施例中,可扩展方法400以例如在操作210/212与操作214之间包括操作304、306和308(图3B),使得类似于方法300,在阻断选定的HTTP请求之前提示用户输入是确认还是拒绝阻断HTTP请求。
在又一实施例中,可单独实施对HTTP响应的代理和评估。因此,在另一实施例中,可由客户端反域欺骗应用程序106单独执行操作402到450以保护客户端计算机系统免受恶意代码和/或恶意活动,例如偷渡式域欺骗攻击。
再次参看图1,客户端反域欺骗应用程序106在计算机存储器112中。如本文使用,计算机存储器是指易失性存储器、非易失性存储器或所述两者的组合。虽然客户端反域欺骗应用程序106被称为应用程序,但这仅仅是说明性的。客户端反域欺骗应用程序106应能够从应用程序或操作系统调用。在一个实施例中,应用程序大体上被定义为任何可执行代码。此外,所属领域的技术人员将了解,当说到应用程序或操作采取某动作时,所述动作是由处理器执行一个或一个以上指令的结果。
尽管已经针对客户端配置描述了根据本发明的实施例,但本发明实施例可使用任何合适方式和/或硬件配置来进行,其中涉及个人计算机、工作站、便携式装置或计算机装置网络。在其它实施例中使用除客户端配置以外的其它网络配置,例如客户端-服务器、对等、基于网站、内部网、因特网网络配置。
本文中,根据本发明实施例,计算机程序产品包含经配置以存储或输送计算机可读代码的媒体。计算机程序产品的一些实例是CD-ROM盘、DVD、ROM卡、软盘、磁带、计算机硬盘驱动器、网络服务器和代表计算机可读代码在网络上传输的信号。在另一实施例中,计算机程序产品包含经配置以存储计算机可读代码的可触媒体,其中包括CD-ROM盘、DVD、ROM卡、软盘、磁带、计算机硬盘驱动器和网络服务器。
如图1所说明,此媒体可属于计算机系统本身。然而,也可将所述媒体从计算机系统移除。举例来说,客户端反域欺骗应用程序106可存储于在物理上位于与处理器108不同的位置中的存储器136中。处理器108应耦合到存储器136。这可在客户端-服务器系统中完成,或者通过经由调制解调器和模拟线或数字接口和数字载波线到另一计算机的连接来完成。
更具体地说,在一个实施例中,客户端计算机系统102和/或服务器计算机系统130是便携式计算机、工作站、双向寻呼机、蜂窝式电话、数字无线电话、个人数字助理、服务器计算机、因特网设备或包括可根据如本文描述的至少一个所述实施例执行父代控制功能性的组件的任何其它装置。类似地,在另一实施例中,客户端计算机系统102和/或服务器计算机系统130包含多个不同计算机、无线装置、蜂窝式电话、数字电话、双向寻呼机或个人数字助理、服务器计算机或互连以执行如本文所描述的方法的这些装置的任何所需组合。
鉴于此揭示内容,根据本发明实施例的客户端反域欺骗应用程序106的功能性可以各种各样的计算机系统配置来实施。另外,客户端反域欺骗应用程序106的功能性可作为不同模块存储在不同装置的存储器中。举例来说,客户端反域欺骗应用程序106可最初存储在服务器计算机系统130中,且接着如果必要的话,客户端反域欺骗应用程序106的一部分可传送到客户端计算机系统102并在客户端计算机系统102上执行。因而,客户端反域欺骗应用程序106的部分功能性将在服务器计算机系统130的处理器134上执行,且另一部分将在客户端计算机系统102的处理器108上执行。
鉴于此揭示内容,所属领域的技术人员可使用用户所关注的操作系统和计算机编程语言以各种各样的物理硬件配置来实施本发明的各种实施例。在又一实施例中,客户端反域欺骗应用程序106存储在服务器计算机系统130的存储器136中。客户端反域欺骗应用程序106经由网络126传送到客户端计算机系统102中的存储器112。在此实施例中,网络接口138和I/O接口110将包括模拟调制解调器、数字调制解调器或网络接口卡。如果使用调制解调器,那么网络126包括通信网络,且经由通信网络下载客户端反域欺骗应用程序106。
此揭示内容提供本发明的示范性实施例。本发明的范围不受这些示范性实施例限制。无论本说明书明确提供或本说明书暗示与否,所属领域的技术人员可鉴于此揭示内容实施各种变化。

Claims (20)

1.一种计算机实施方法,其包括:
在将客户端计算机系统上的HTTP请求释放到路由器之前代理所述HTTP请求,所述HTTP请求包括HTTP标头;
确定所述HTTP标头是否识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL;
其中在确定所述HTTP标头识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL时,阻断所述HTTP请求;以及
提供告警通知。
2.根据权利要求1所述的计算机实施方法,其进一步包含:
在所述阻断所述HTTP请求之前,确定是否排除阻断所述HTTP请求;
在确定排除阻断所述HTTP请求时,释放所述HTTP请求;以及
在确定不排除阻断所述HTTP请求时,允许所述阻断所述HTTP请求。
3.根据权利要求1所述的计算机实施方法,其进一步包含:
在所述阻断所述HTTP请求之前,提示用户输入对所述阻断所述HTTP请求的确认或拒绝;
在接收到所述拒绝时,释放所述HTTP请求;以及
在接收到所述确认时,允许所述阻断所述HTTP请求。
4.根据权利要求1所述的计算机实施方法,其进一步包含:
其中在确定所述HTTP标头未识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL时,释放所述HTTP请求,所述释放允许将所述HTTP请求作为释放的HTTP请求发送到所述目标URL。
5.根据权利要求4所述的计算机实施方法,其进一步包含:
代理响应于所述释放的HTTP请求而接收到的HTTP响应;
确定所述HTTP响应是否识别具有内容类型文本/html或具有内容类型脚本的内容;
其中在确定所述HTTP响应未识别具有所述内容类型文本/html或具有所述内容类型脚本的所述内容时,释放所述HTTP响应;以及
其中在确定所述HTTP响应识别具有所述内容类型文本/html或具有所述内容类型脚本的所述内容时,修改所述内容以防止恶意活动且释放所述HTTP响应。
6.根据权利要求5所述的计算机实施方法,其中在确定所述HTTP响应识别具有所述内容类型文本/html的所述内容时,所述修改所述内容以防止恶意活动包括:
剖析所述内容以识别存在于所述内容中的每一HTML参考URL;
确定所述每一HTML参考URL是否对应于不可路由的专用IP地址;以及
其中当HTML参考URL对应于不可路由的专用IP地址时,用安全URL替代所述HTML参考URL;以及
释放所述HTTP请求。
7.根据权利要求5所述的计算机实施方法,其进一步包含:
其中在确定所述HTTP响应识别具有所述内容类型脚本的所述内容时,所述修改所述内容以防止恶意活动包括:
在所述内容的顶部在任何脚本之前注入JavaScript覆盖,所述JavaScript覆盖定义安全XMLHttpRequest API和ActiveX替代对象;
剖析所述内容以识别每一脚本而并非所述JavaScript覆盖;
用所述安全XMLHttpRequest API替代所述每一脚本中的每一XMLHttpRequestAPI,如果存在的话;以及
用所述ActiveX替代对象替代所述每一脚本中的每一对象标签,如果存在的话;以及
释放所述HTTP请求。
8.一种包含可触计算机可读媒体的计算机程序产品,所述可触计算机可读媒体含有计算机程序代码,所述计算机程序产品包含:
客户端反域欺骗应用程序,其用于在将客户端计算机系统上的HTTP请求释放到路由器之前代理所述HTTP请求,所述HTTP请求包括HTTP标头;
所述客户端反域欺骗应用程序进一步用于确定所述HTTP标头是否识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL;
其中在确定所述HTTP标头识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL时,所述客户端反域欺骗应用程序进一步用于阻断所述HTTP请求;且
所述客户端反域欺骗应用程序进一步用于提供告警通知。
9.根据权利要求8所述的计算机程序产品,其进一步包含:
在阻断所述HTTP请求之前,所述客户端反域欺骗应用程序进一步用于确定是否排除阻断所述HTTP请求;
在确定排除阻断所述HTTP请求时,所述客户端反域欺骗应用程序进一步用于释放所述HTTP请求;以及
在确定不排除阻断所述HTTP请求时,所述客户端反域欺骗应用程序进一步用于允许所述阻断所述HTTP请求。
10.根据权利要求8所述的计算机程序产品,其进一步包含:
在阻断所述HTTP请求之前,所述客户端反域欺骗应用程序进一步用于提示用户输入对所述阻断所述HTTP请求的确认或拒绝;
在接收到所述拒绝时,所述客户端反域欺骗应用程序进一步用于释放所述HTTP请求;以及
在接收到所述确认时,所述客户端反域欺骗应用程序进一步用于释放所述HTTP请求。
11.根据权利要求8所述的计算机程序产品,其进一步包含:
其中在确定所述HTTP标头未识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL时,所述客户端反域欺骗应用程序进一步用于释放所述HTTP请求,所述释放允许将所述HTTP请求作为释放的HTTP请求发送到所述目标URL。
12.根据权利要求8所述的计算机程序产品,其进一步包含:
所述客户端反域欺骗应用程序进一步用于代理响应于所述释放的HTTP请求而接收到的HTTP响应;
所述客户端反域欺骗应用程序进一步用于确定所述HTTP响应是否识别具有内容类型文本/html或具有内容类型脚本的内容;
其中在确定所述HTTP响应未识别具有所述内容类型文本/html或具有所述内容类型脚本的所述内容时,所述客户端反域欺骗应用程序进一步用于释放所述HTTP响应;以及
其中在确定所述HTTP响应识别具有所述内容类型文本/html或具有所述内容类型脚本的所述内容时,所述客户端反域欺骗应用程序进一步用于修改所述内容以防止恶意活动,且所述客户端反域欺骗应用程序进一步用于释放所述HTTP响应。
13.根据权利要求12所述的计算机程序产品,其中在确定所述HTTP响应识别具有所述内容类型文本/html的所述内容时,所述客户端反域欺骗应用程序进一步用于剖析所述内容以识别存在于所述内容中的每一HTML参考URL;
所述客户端反域欺骗应用程序进一步用于确定所述每一HTML参考URL是否对应于不可路由的专用IP地址;以及
其中当HTML参考URL对应于不可路由的专用IP地址时,所述客户端反域欺骗应用程序进一步用于用安全URL替代所述HTML参考URL。
14.根据权利要求12所述的计算机程序产品,其进一步包含:
其中在确定所述HTTP响应识别具有所述内容类型脚本的所述内容时,
所述客户端反域欺骗应用程序进一步用于在所述内容的顶部在任何脚本之前注入JavaScript覆盖,所述JavaScript覆盖包括安全XMLHttpRequest API和ActiveX替代对象;
所述客户端反域欺骗应用程序进一步用于剖析所述内容以识别每一脚本而并非所述JavaScript覆盖;
所述客户端反域欺骗应用程序进一步用于用所述安全XMLHttpRequest API替代所述每一脚本中的每一XMLHttpRequest API,如果存在的话;以及
所述客户端反域欺骗应用程序进一步用于用所述ActiveX替代对象替代所述每一脚本中的每一对象标签,如果存在的话。
15.一种计算机系统,其包含:
存储器,其中存储有客户端反域欺骗应用程序;和
处理器,其耦合到所述存储器,其中执行所述客户端反域欺骗应用程序产生包含以下步骤的方法:
在将客户端计算机系统上的HTTP请求释放到路由器之前代理所述HTTP请求,所述HTTP请求包括HTTP标头;
确定所述HTTP标头是否识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL;
其中在确定所述HTTP标头识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL时,阻断所述HTTP请求;以及
提供告警通知。
16.根据权利要求15所述的计算机系统,其进一步包含:
在所述阻断所述HTTP请求之前,提示用户输入对所述阻断所述HTTP请求的确认或拒绝;
在接收到所述拒绝时,释放所述HTTP请求;以及
在接收到所述确认时,允许所述阻断所述HTTP请求。
17.根据权利要求15所述的计算机系统,其进一步包含:
其中在确定所述HTTP标头未识别对应于可路由的公用IP地址的提交者URL和对应于不可路由的专用IP地址的目标URL时,释放所述HTTP请求,所述释放允许将所述HTTP请求作为释放的HTTP请求发送到所述目标URL。
18.根据权利要求17所述的计算机系统,其进一步包含:
代理响应于所述释放的HTTP请求而接收到的HTTP响应;
确定所述HTTP响应是否识别具有内容类型文本/html或具有内容类型脚本的内容;
其中在确定所述HTTP响应未识别具有所述内容类型文本/html或具有所述内容类型脚本的所述内容时,释放所述HTTP响应;以及
其中在确定所述HTTP响应识别具有所述内容类型文本/html或具有所述内容类型脚本的所述内容时,修改所述内容以防止恶意活动且释放所述HTTP响应。
19.根据权利要求18所述的计算机系统,其中在确定所述HTTP响应识别具有所述内容类型文本/html的所述内容时,所述修改所述内容以防止恶意活动包括:
剖析所述内容以识别存在于所述内容中的每一HTML参考URL;
确定所述每一HTML参考URL是否对应于不可路由的专用IP地址;以及
其中当HTML参考URL对应于不可路由的专用IP地址时,用安全URL替代所述HTML参考URL;以及
释放所述HTTP请求。
20.根据权利要求18所述的计算机系统,其进一步包含:
其中在确定所述HTTP响应识别具有所述内容类型脚本的所述内容时,所述修改所述内容以防止恶意活动包括:
在所述内容的顶部在任何脚本之前注入JavaScript覆盖,所述JavaScript覆盖定义安全XMLHttpRequest API和ActiveX替代对象;
剖析所述内容以识别每一脚本而并非所述JavaScript覆盖;
用所述安全XMLHttpRequest API替代所述每一脚本中的每一XMLHttpRequestAPI,如果存在的话;以及
用所述ActiveX替代对象替代所述每一脚本中的每一对象标签,如果存在的话;以及
释放所述HTTP请求。
CN200810099303.8A 2007-05-09 2008-05-09 一种客户端侧经由提交者核查来防止偷渡式域欺骗的方法及系统 Expired - Fee Related CN101304418B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/746,188 2007-05-09
US11/746,188 US7827311B2 (en) 2007-05-09 2007-05-09 Client side protection against drive-by pharming via referrer checking

Publications (2)

Publication Number Publication Date
CN101304418A true CN101304418A (zh) 2008-11-12
CN101304418B CN101304418B (zh) 2012-10-24

Family

ID=39766821

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810099303.8A Expired - Fee Related CN101304418B (zh) 2007-05-09 2008-05-09 一种客户端侧经由提交者核查来防止偷渡式域欺骗的方法及系统

Country Status (5)

Country Link
US (1) US7827311B2 (zh)
EP (1) EP1990977B1 (zh)
JP (1) JP5254656B2 (zh)
CN (1) CN101304418B (zh)
AU (1) AU2008201981B2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014059895A1 (zh) * 2012-10-17 2014-04-24 北京奇虎科技有限公司 呈现访问网站相关信息的方法、浏览器、网络终端和系统
CN105700894A (zh) * 2016-02-25 2016-06-22 深圳市分期乐网络科技有限公司 一种修改http响应数据的方法及装置
WO2017219733A1 (zh) * 2016-06-21 2017-12-28 中兴通讯股份有限公司 请求的响应方法及装置

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8181246B2 (en) * 2007-06-20 2012-05-15 Imperva, Inc. System and method for preventing web frauds committed using client-scripting attacks
US9906549B2 (en) * 2007-09-06 2018-02-27 Microsoft Technology Licensing, Llc Proxy engine for custom handling of web content
US20090070663A1 (en) * 2007-09-06 2009-03-12 Microsoft Corporation Proxy engine for custom handling of web content
US8949990B1 (en) 2007-12-21 2015-02-03 Trend Micro Inc. Script-based XSS vulnerability detection
US8578482B1 (en) 2008-01-11 2013-11-05 Trend Micro Inc. Cross-site script detection and prevention
US8850567B1 (en) * 2008-02-04 2014-09-30 Trend Micro, Inc. Unauthorized URL requests detection
US8473346B2 (en) 2008-03-11 2013-06-25 The Rubicon Project, Inc. Ad network optimization system and method thereof
US9202248B2 (en) 2008-03-11 2015-12-01 The Rubicon Project, Inc. Ad matching system and method thereof
US10157280B2 (en) * 2009-09-23 2018-12-18 F5 Networks, Inc. System and method for identifying security breach attempts of a website
US8214903B2 (en) 2009-10-02 2012-07-03 International Business Machines Corporation Analysis of scripts
US20110231891A1 (en) * 2010-03-18 2011-09-22 Tovar Tom C Systems and Methods for Expression of Disassociation with Online Content
US9049247B2 (en) 2010-04-01 2015-06-02 Cloudfare, Inc. Internet-based proxy service for responding to server offline errors
US8751633B2 (en) 2010-04-01 2014-06-10 Cloudflare, Inc. Recording internet visitor threat information through an internet-based proxy service
US8484740B2 (en) 2010-09-08 2013-07-09 At&T Intellectual Property I, L.P. Prioritizing malicious website detection
US8285808B1 (en) 2011-05-20 2012-10-09 Cloudflare, Inc. Loading of web resources
US8949350B2 (en) 2011-08-26 2015-02-03 International Business Machines Corporation Tracking desktop application referrals to content distributed over a network
US9122870B2 (en) 2011-09-21 2015-09-01 SunStone Information Defense Inc. Methods and apparatus for validating communications in an open architecture system
GB2496107C (en) * 2011-10-26 2022-07-27 Cliquecloud Ltd A method and apparatus for preventing unwanted code execution
US20130132508A1 (en) * 2011-11-21 2013-05-23 Google Inc. Low latency referrer free requests
US9195477B1 (en) * 2012-10-09 2015-11-24 Sencha, Inc. Device profiles, deep linking, and browser history support for web applications
GB2512267B (en) 2012-10-30 2015-09-16 Openwave Mobility Inc Determination of information relating to messages
US9450970B2 (en) * 2013-08-12 2016-09-20 Wal-Mart Stores, Inc. Automatic blocking of bad actors across a network
US9231915B2 (en) * 2013-10-29 2016-01-05 A 10 Networks, Incorporated Method and apparatus for optimizing hypertext transfer protocol (HTTP) uniform resource locator (URL) filtering
GB2518460B (en) * 2013-12-09 2015-10-28 F Secure Corp Unauthorised/Malicious redirection
WO2015162985A1 (ja) * 2014-04-25 2015-10-29 株式会社セキュアブレイン 不正検知ネットワークシステム及び、不正検知方法
CN104378357A (zh) * 2014-10-23 2015-02-25 河北省电力建设调整试验所 一种HTTP Get Flood攻击的防护方法
JP6499461B2 (ja) * 2015-01-29 2019-04-10 株式会社三菱Ufj銀行 情報処理装置
EP3268887A4 (en) * 2015-03-08 2018-11-14 Soreq Nuclear Research Center Secure document transmission
GB2540375A (en) * 2015-07-14 2017-01-18 F Secure Corp Preventing browser-originating attacks in a local area network
WO2017132087A1 (en) 2016-01-25 2017-08-03 nToggle, Inc. Platform for programmatic advertising
CN106161478B (zh) * 2016-09-19 2019-02-19 成都知道创宇信息技术有限公司 基于http响应头变化的准确攻击识别方法
US11496438B1 (en) 2017-02-07 2022-11-08 F5, Inc. Methods for improved network security using asymmetric traffic delivery and devices thereof
US10791119B1 (en) 2017-03-14 2020-09-29 F5 Networks, Inc. Methods for temporal password injection and devices thereof
US10931662B1 (en) 2017-04-10 2021-02-23 F5 Networks, Inc. Methods for ephemeral authentication screening and devices thereof
US11658995B1 (en) 2018-03-20 2023-05-23 F5, Inc. Methods for dynamically mitigating network attacks and devices thereof
US11288699B2 (en) 2018-07-13 2022-03-29 Pubwise, LLLP Digital advertising platform with demand path optimization
US10681048B1 (en) * 2018-11-26 2020-06-09 Jpmorgan Chase Bank, N.A. Systems and methods for intercepting WebView traffic
CN113726757B (zh) * 2021-08-24 2023-08-22 杭州迪普科技股份有限公司 Https协议客户端的验证方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8029454B2 (en) 2003-11-05 2011-10-04 Baxter International Inc. High convection home hemodialysis/hemofiltration and sorbent system
US20060075494A1 (en) * 2004-10-01 2006-04-06 Bertman Justin R Method and system for analyzing data for potential malware
ES2382361T3 (es) 2005-01-14 2012-06-07 Bae Systems Plc Sistema de seguridad basado en red
US20070174630A1 (en) * 2005-02-21 2007-07-26 Marvin Shannon System and Method of Mobile Anti-Pharming and Improving Two Factor Usage
WO2007025279A2 (en) * 2005-08-25 2007-03-01 Fortify Software, Inc. Apparatus and method for analyzing and supplementing a program to provide security
JP4950606B2 (ja) * 2005-09-30 2012-06-13 トレンドマイクロ株式会社 通信システム、セキュリティ管理装置およびアクセス制御方法
EP2005698B1 (en) * 2006-04-13 2012-01-04 Art of Defence GmbH Method for providing web application security
US20080060054A1 (en) * 2006-09-05 2008-03-06 Srivastava Manoj K Method and system for dns-based anti-pharming

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014059895A1 (zh) * 2012-10-17 2014-04-24 北京奇虎科技有限公司 呈现访问网站相关信息的方法、浏览器、网络终端和系统
CN105700894A (zh) * 2016-02-25 2016-06-22 深圳市分期乐网络科技有限公司 一种修改http响应数据的方法及装置
WO2017219733A1 (zh) * 2016-06-21 2017-12-28 中兴通讯股份有限公司 请求的响应方法及装置
CN107528811A (zh) * 2016-06-21 2017-12-29 中兴通讯股份有限公司 请求的响应方法及装置

Also Published As

Publication number Publication date
EP1990977B1 (en) 2012-10-03
JP2008283686A (ja) 2008-11-20
US7827311B2 (en) 2010-11-02
US20080281983A1 (en) 2008-11-13
CN101304418B (zh) 2012-10-24
JP5254656B2 (ja) 2013-08-07
AU2008201981B2 (en) 2013-04-04
EP1990977A3 (en) 2008-11-19
AU2008201981A1 (en) 2008-11-27
EP1990977A2 (en) 2008-11-12

Similar Documents

Publication Publication Date Title
CN101304418B (zh) 一种客户端侧经由提交者核查来防止偷渡式域欺骗的方法及系统
EP2447878B1 (en) Web based remote malware detection
CN103843002B (zh) 使用云技术对恶意软件的动态清理
JP4950606B2 (ja) 通信システム、セキュリティ管理装置およびアクセス制御方法
US8996697B2 (en) Server authentication
JP5430692B2 (ja) セキュリティ管理装置、通信システムおよびアクセス制御方法
US20160036849A1 (en) Method, Apparatus and System for Detecting and Disabling Computer Disruptive Technologies
CN105407074A (zh) 身份验证方法、装置及系统
CN101360102A (zh) 通过远程验证并使用凭证管理器和已记录的证书属性来检测网址转接/钓鱼方案中对ssl站点的dns重定向或欺骗性本地证书的方法
CN101714272B (zh) 一种保护银行卡号及口令不被网络钓鱼网站窃取的方法
CN103491543A (zh) 通过无线终端检测恶意网址的方法、无线终端
JPWO2007110951A1 (ja) ユーザ確認装置、方法及びプログラム
CN108063833B (zh) Http dns解析报文处理方法及装置
CA2762706A1 (en) Method and system for securing communication sessions
JP2012008732A (ja) インストール制御装置およびプログラム
CN104917755A (zh) 一种基于移动通信终端和短信的登录方法
CN110213211A (zh) 识别安全下载链接的方法、装置、终端及存储介质
CN113452803B (zh) 一种验证方法、装置、服务器及存储介质
JP2006171892A (ja) ウェブサイト所有者情報伝達方法、ウェブサイト所有者情報送信装置及び方法並びにプログラム
CN104283840A (zh) 提高网络访问安全性的方法、客户端及系统
KR20230019664A (ko) 빅데이터를 이용한 인공지능형 네트워크 파밍 차단 방법 및 시스템
Curran et al. Integrating geolocation into electronic finance applications for additional security
CN112968887B (zh) 数据处理方法、数据处理装置及相关设备
KR101472073B1 (ko) 악의적인 메시지 검출 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체
CN115051832A (zh) 一种溯源反制方法、装置、设备及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: California, USA

Patentee after: Norton identity protection

Address before: California, USA

Patentee before: Symantec Corp.

CP01 Change in the name or title of a patent holder
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121024

Termination date: 20200509

CF01 Termination of patent right due to non-payment of annual fee