CN101616008B - 保护网络应用数据的方法和系统 - Google Patents

保护网络应用数据的方法和系统 Download PDF

Info

Publication number
CN101616008B
CN101616008B CN2008101275379A CN200810127537A CN101616008B CN 101616008 B CN101616008 B CN 101616008B CN 2008101275379 A CN2008101275379 A CN 2008101275379A CN 200810127537 A CN200810127537 A CN 200810127537A CN 101616008 B CN101616008 B CN 101616008B
Authority
CN
China
Prior art keywords
client
request
user
response
checking
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.)
Expired - Fee Related
Application number
CN2008101275379A
Other languages
English (en)
Other versions
CN101616008A (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.)
IBM China Co Ltd
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN2008101275379A priority Critical patent/CN101616008B/zh
Priority to US12/491,647 priority patent/US8285778B2/en
Publication of CN101616008A publication Critical patent/CN101616008A/zh
Application granted granted Critical
Publication of CN101616008B publication Critical patent/CN101616008B/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/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种用于在服务器和客户端之间保护网络应用数据的系统和方法。该方法包括:备份由所述网络应用为所述客户端构建的响应;通过添加用于捕获所述客户端的用户操作和/或用户数据的捕获代码来修改所述响应;将修改后的响应发送至所述客户端;接收所述客户端提交的请求以及由所述捕获代码捕获的用户操作和/或用户数据;根据接收的由所述捕获代码捕获的用户操作和/或用户数据以及所述备份的响应来产生验证请求;根据所述验证请求验证所述客户端提交的请求;以及将经过验证的所述客户端提交的请求发送至所述服务器的网络应用。

Description

保护网络应用数据的方法和系统
技术领域
本发明涉及计算机网络安全领域,特别涉及用于保护网络应用免受网络攻击的方法和系统。
背景技术
随着计算机和互联网技术的发展,诸如网上购物、网上银行等网络应用日益普及。但是在过去十年针对网络应用的攻击也已成为一大威胁。因为即使防火墙具有强大的规则集,服务器也经常及时安装补丁,但如果网络应用的开发人员没有遵循安全编码实践,攻击者可通过端口80轻而易举地进入系统。最为流行的两种攻击是SQL注入和XSS(跨站点脚本)。通过SQL注入可能盗取数据库中的数据,甚至可能倾空整个数据库,这会给某些应用带来灾难。通过XSS还可能盗取普通用户的秘密数据(例如他们的用户标识或会话标识)。
目前有一些抵御这些攻击的方法。一种方法是使用一些黑箱测试工具(例如AppScan)来扫描应用,并手动修复漏洞。但由于一些网络应用不易被再部署,且一些情况下不可获得源代码,这种方法将不能始终有效。另一种方法是在入口服务器之前使用WAF(网络应用防火墙)来过滤恶意请求。该方法使过滤规则在应用运行时能够更新,因此当新的漏洞被发现时,该应用不需被再部署。但该方法也有些缺点。首先,每个输入字段都需要被小心地人工配置,这将耗费大量努力。其次,由于一些请求字段可能在被提交之前用脚本来编码,因此WAF不能识别它们。
除了SQL注入和XSS之外,另一种流行的威胁是对隐藏字段的篡改。由于初级开发人员可能使用隐藏字段来保存用户信息而不在服务器站点进行检查,因此篡改隐藏字段会破坏业务逻辑。解决这个问题的一个方法是在向用户站点发送用户信息之前标记这些隐藏字段。当包括这些字段的请求返回时,该签名将被校验以确保这些字段未被篡改。但一些表单可能在应用运行时用脚本来创建,因此很难静态地定义它们。此外,一些开发人员可能不仅在隐藏字段中保存这些关键的用户信息,还会在html文档的任何标签中保存,并且在应用运行时通过脚本来获得它们的值。因此,定义哪个标签应被标记非常困难。
在一些极端情况下,在客户站点通过脚本完成业务逻辑的一部分,而在服务器站点却忽略了校验。(例如,可在客户站点通过对总数乘以单价来计算总价,但总价并不在服务器站点校验。)目前没有处理这个问题的好办法。
另一个与网络应用相关的重要安全问题是未授权访问。黑客由于可通过观察来猜测被嵌入到网页的链接,因此可获得对未授权资源的访问。
一般而言,由于涉及脚本,因此难以得到彻底解决这些安全问题且不改变源代码的方案。
发明内容
本发明的目的是提供一种新颖的在服务器和客户端之间保护网络应用数据的方法和系统,旨在解决至少一种目前现有技术中有关网络攻击的安全问题。
根据本发明的一个方面,一种用于在服务器和客户端之间保护网络应用数据的方法,包括:备份由所述网络应用为所述客户端构建的响应;通过添加用于捕获所述客户端的用户操作和/或用户数据的捕获代码来修改所述响应;将修改后的响应发送至所述客户端;接收所述客户端提交的请求以及由所述捕获代码捕获的用户操作和/或用户数据;根据接收的由所述捕获代码捕获的用户操作和/或用户数据以及所述备份的响应来产生验证请求;根据所述验证请求验证所述客户端提交的请求;以及将经过验证的所述客户端提交的请求发送至所述服务器的网络应用。
优选地,为了方便运行,可以在备份步骤前对备份的所述响应进行解析,然后将所述响应经解析后获得的文本对象和脚本对象进行备份,例如针对基于html页面的html响应文档,可将html响应文档被解析为包含普通html对象和脚本对象的DOM树,以便由脚本引擎运行。还可以在备份步骤之后对所述响应进行解析,在所述验证请求的步骤中使用所述响应经解析后获得的文本对象和脚本对象。
在对用户输入操作进行校验、防止篡改(增删修改或绕过)选择框的情况下,对备份的所述响应执行接收的由所述捕获代码捕获的用户操作,产生所述用于验证所述客户端提交的请求的验证请求。
通常在防止通过篡改脚本文件破坏篡改业务逻辑、防止通过篡改(增删修改)隐藏字段或操控cookie来篡改服务器状态数据、和/或防止绕过客户端输入有效函数的情况下,对备份的所述响应和接收的由所述捕获代码捕获的用户数据执行接收的由所述捕获代码捕获的用户操作,产生所述验证请求。
优选地,所述捕获代码还用于根据捕获的特定用户操作发送所述客户端的用户操作和/或用户数据;所述接收客户端提交的请求以及由所述捕获代码捕获的用户操作和/或用户数据的步骤进一步包括:分别接收所述客户端提交的请求,以及根据特定用户操作发送的所述客户端的用户操作和/或用户数据。
而在仅对用户输入的合法性进行校验的情况下,所述接收客户端提交的请求以及所述捕获的操作和/或数据的步骤进一步包括:接收所述客户端提交的请求,以及与所述客户端提交的请求一起提交的由所述捕获代码捕获的用户数据。
优选地,所述验证客户端提交的请求的步骤包括:比较所述验证请求和所述客户端提交的请求。
对于所述客户端提交的请求未通过验证的情况,本发明的方法提出可以拒绝所述客户端的请求并向所述客户端发出警告消息;或者忽略所述客户端提交的请求而向所述网络应用发送所述验证请求;或者向所述网络应用发送所述客户端提交的请求但将警告消息记入日志。
根据本发明的另一方面,一种用于在服务器和客户端之间保护网络应用数据的系统,包括:备份装置,被配置成备份由所述网络应用为所述客户端构建的响应;修改装置,被配置为通过添加用于捕获所述客户端的用户操作和/或用户数据的捕获代码来修改所述响应;发送装置,被配置为将修改后的响应发送至所述客户端;接收装置,被配置为接收所述客户端提交的请求以及由所述捕获代码捕获的用户操作和/或用户数据;产生装置,被配置为根据接收的由所述捕获代码捕获的用户操作和/或用户数据以及备份的所述响应来产生验证请求;以及验证装置,被配置为根据所述验证请求验证所述客户端提交的请求,所述发送装置还被配置为将经过验证的所述客户端提交的请求发送至所述服务器的网络应用。
根据本发明用于在服务器和客户端之间保护网络应用数据的系统和方法,可以解决以下至少一种在现有技术中存在的问题。
首先,许多SQL注入和XSS的漏洞在于:在客户端正常地校验用户输入但在相应的服务器站点忽略了校验。本发明对原始数据进行再次校验,从而使黑客无法绕开脚本校验。此外,由于校验可以针对原始数据执行的,校验不会受到编码的干扰。
其次,在响应包括保存用户信息的隐藏字段的情况下,由于本发明对之有备份,因此即使黑客篡改了这些隐藏字段,利用本发明进行验证也将出现不一致,指出了篡改。
第三,还可以在本发明中再次执行业务逻辑,由此本发明的校验可阻止黑客入侵。
最后,本发明系统还可检查所请求的URL是否在备份响应文档中已有,如果没有,则说明客户端用户试图获得授权访问。
与现有技术的技术方案相比,本发明可以获得以下的至少一种有益效果:
提供了对各种网络攻击威胁的全面解决方案;
多数情况下不需手动配置,从而节省了大量努力;
不需修改网络服务的源代码,使得该服务不需被再部署;
为客户业务逻辑篡改提供了解决方案,而这是其他方案不能处理的。
如果使用本发明系统,开发人员不需编写将会缩短软件的生命周期的服务器站点输入校验代码,服务器站点授权代码等等。
附图说明
参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。在附图中,相同的或对应的技术特征或部件将采用相同或对应的附图标记来表示。
图1是示出可实现本发明的分布式数据处理系统的框图。
图2是应用了本发明优选实施例的系统的示意图。
图3是根据本发明优选实施例的系统框图。
图4是根据本发明优选实施例的方法的流程图。
具体实施方式
下面参照附图来说明本发明的实施例。应当注意,为了清楚的目的,附图和说明中省略了与本发明无关的、本领域普通技术人员已知的部件和处理的表示和描述。
系统体系
现在参考附图,特别是图1,描述了可实现本发明的分布式数据处理系统的框图。分布式数据处理系统100是可实现本发明的计算机网络。分布式数据处理系统100包含网络102,网络102是用于在不同的设备和分布式数据处理系统100内连接到一起的计算机之间提供通信链接的媒介。
在所描述的例子中,服务器104与存储器106一起连接到网络102。此外,例如工作站、个人计算机、手机、PDA等的客户端108、110和112也被连接到网络102。在所描述的例子中,服务器104向客户端108、110和112提供如引导文件的数据、操作系统以及应用程序。分布式数据处理系统100可包括另外的服务器、客户端以及其它未显示的设备。在所描述的例子中,分布式数据处理系统100是因特网,网络102表示对使用TCP/IP协议套件来彼此通信的网络以及网关的集合。当然,分布式数据处理系统100还可被实现为不同类型的网络。
企图将图1作为例子,而不是作为本发明所述过程的结构限制。在不偏离本发明精神和范围的条件下,可对图1所示系统作出许多更改。
本发明可实现为如图1所示的服务器104的数据处理系统。该数据处理系统可以是包括连接到系统总线的多个处理器的对称对处理器(SMP)系统。亦可使用单处理器系统。本发明还可实现为图1中客户端计算机的数据处理系统。
优选实施例
以下结合图2和图3对本发明的优选实施例进行详细说明。图2是应用了本发明优选实施例的系统的示意图;图3是根据本发明优选实施例的系统框图。
当用户通过浏览器打开网络文件或者键入URL输入文件请求时或者点击超文本链接时,浏览器构建HTTP请求。网络浏览器作为网络应用的客户端220通常通过建立与远程主机的特定端口的TCP/IP连接发起请求。监视该端口的HTTP服务器230等待客户端发送请求串。一旦接收到请求串(以及可能的消息),服务器可以通过发回响应串来完成协议。
如图2的附图标记1所示,在服务器230的网络应用构建响应之后向客户端220的浏览器发送响应,该响应例如为基于html页面的响应文档,在该优选实施例中该html页面的响应文档包含了如输入名以及输入类型(<input name=“a”>,<input type=“submit”)的请求信息。本领域普通技术人员可以了解,该响应亦可以是支持网络应用的其它类型的响应。
如图2所示,该响应将首先经过根据本发明的用于在服务器和客户端之间保护网络应用数据的系统200。根据优选实施例,本发明的系统200位于所述服务器230和所述客户端220之间,例如在服务器之前的代理服务器,可替代地本发明的系统亦可部署在所述服务器230,例如嵌入服务器230的插件(例如WAS服务器或Apache服务器的插件)。
如图2的附图标记2所示,本发明的保护系统将保存响应文档的备份。
该系统的细节如图3所示,该保护系统300的接收装置301接收服务器330中某个网络应用331构建的响应文档,并由备份装置302进行备份。在备份前可选择地利用诸如html解析器的解析装置将响应文档解析为包含例如普通html对象等文本对象和脚本对象(在优选实施例中为Java脚本对象)的DOM树,并将文本对象和脚本对象发送至所述备份装置进行备份,例如由作为备份装置的DOM存储器存储。可替换地,也可以在备份装置302之后对原始备份的响应运行脚本之前(即在产生装置305之前)再使用解析装置进行解析,即该解析装置可替选地被配置为解析响应的所述备份以获得文本对象和脚本对象并将所述文本对象和脚本对象发送至所述产生装置。
另外,原始的响应文档还将被本发明系统的修改装置303(优选为html处理器)修改,修改后的响应文档由发送装置304发送到客户端320,如图3所示。其中修改细节如下描述。
图2的附图标记3示出了修改后的添加了JavaScript代码/函数的响应文档。具体地在原响应文档的输入标签中添加了用于捕获用户操作和原始数据的一些操作(例如,“onchange”;“onsubmit”),可以通过使用脚本代码/函数(在本优选实施例中为JavaScript函数)作为捕获代码来捕获用户操作和原始数据。附加地或可替代地还可利用该脚本代码/函数来管理操作列表并决定向本发明系统发送操作队列和相关数据的时间,由此所述捕获代码可以根据捕获的特定用户操作发送所述客户端的用户操作和数据。
如图2的附图标记4所示,当客户端用户有操作时,例如将值“123”填入输入框a或按压提交按钮,相应的操作信息将被所嵌入的“onchange”/“onsubmit”方法捕获并被推入操作队列。当捕获代码捕获关键操作(例如用户按压提交按钮)时,当前的操作队列和相应的原始数据(如图2的附图标记5所示,Action01:setValue“a”“123”;Action02:submit Form)将被单独地发送到本发明系统。
当本发明系统接收到操作队列和相应的原始数据时,它将使用备份的响应文档和接收到的原始数据在JavaScript引擎上按顺序执行捕获到的操作。例如,捕获到的“setValue”操作将使备份文档的相应输入标签的值设定为接收到的原始数据。最后,本发明系统生成验证请求(在本实施例中是自请求表单)。
如图2的附图标记7所示,浏览器提交用户的请求(即表单“a=123”)。如果客户端用户没有黑掉数据(例如提交伪造的表单),本发明系统中生成的验证请求(即自请求表单)将与客户提交的表单完全相同,如图2的附图标记6所示。如果表单没有被黑,则将其提交到服务器,如图2的附图标记8所示。如果它们不同,这说明提交的表单被黑了(例如用户破坏了JavaScript所执行的校验函数)。
执行图2的附图标记5-8所示步骤的部件细节如图3所示。
接收装置301同时或先后地接收所述客户端提交的请求以及由所述修改后的响应中的捕获代码捕获的用户操作和数据,产生装置305对来自所述备份装置302的所述备份的响应和接收的由所述捕获代码捕获的用户数据执行接收的由所述捕获代码捕获的用户操作,产生验证请求;验证装置306根据所述验证请求验证所述客户端提交的请求,经过验证的所述客户端提交的请求将由发送装置304发送至所述服务器的网络应用。
所述产生装置305和验证装置306均可由脚本引擎来实现,例如在捕获代码为Java脚本的情况下,所述产生装置和验证装置由Java脚本引擎来实现。所述验证装置306还包括验证结果处理器,该验证结果处理器被配置为响应于所述客户端提交的请求未通过验证,拒绝所述客户端的请求并经由所述发送装置304向所述客户端320发出例如指出该请求已被篡改的警告消息;或者忽略所述客户端提交的请求而经由所述发送装置304向所述网络应用331发送所述验证请求;或者经由所述发送装置304向所述网络应用331发送所述客户端提交的请求但将警告消息记入日志。
在以上的优选实施例中,所述捕获代码用于捕获所述客户端用户操作和数据,例如可以应用于通过防止篡改脚本文件破坏篡改业务逻辑、防止通过篡改隐藏字段或操控cookie来篡改服务器状态数据、和/或防止绕过客户端输入有效函数的情况。但是可以理解,在对用户输入操作进行校验、防止篡改选择框的情况下,所述添加的捕获代码用于捕获所述客户端的用户操作,所述产生装置305被配置成对所述备份的响应执行接收的由所述捕获代码捕获的用户操作,产生所述用于验证所述客户端提交的请求的验证请求。
而在仅对用户输入的合法性进行校验的情况下,所述添加的捕获代码用于捕获所述客户端的用户数据,所述接收装置301被配置成接收所述客户端提交的请求,以及与所述客户端提交的请求一起提交的由所述捕获代码捕获的用户数据,即这种情况下由于捕获代码可不用于捕获用户的操作,则由所述捕获代码捕获的用户数据将与所述客户端提交的请求一起而不是相互独立地发送至本发明的系统。
本发明的方法
图4示出了根据本发明优选实施例的用于在服务器和客户端之间保护网络应用数据的方法400的流程图。
在步骤S401开始后发送由网络应用为客户端构建的响应(S402);首先备份所述响应(S403),同时或随后通过添加用于捕获所述客户端的用户操作和/或用户数据的捕获代码来修改所述响应,并将修改后的响应发送至所述客户端(S404)。
在客户端用户填写输入框并例如按下提交按钮之后,接收所述客户端提交的请求(S405),同时或先后地接收由所述修改后的响应中的捕获代码捕获的用户操作和/或用户数据(S406);随后根据接收的由所述捕获代码捕获的用户操作和/或用户数据以及所述备份的响应来产生验证请求(S407),并根据所述验证请求验证所述客户端提交的请求(S408)。
如果所述客户端提交的请求经过验证(S409中的是),则将所述客户端提交的请求发送至所述服务器的网络应用(S410),并结束流程(S412)。如果所述客户端提交的请求经过验证(S409中的否),则拒绝所述客户端的请求并发出例如指出该请求已被篡改的警告消息(S411),结束流程(S412)。
其它实施例
对本领域的普通技术人员而言,能够理解本发明的方法和装置的全部或者任何步骤或者部件,可以在任何计算设备(包括处理器、存储介质等)或者计算设备的网络中,以硬件、固件、软件或者它们的组合加以实现,这是本领域普通技术人员在阅读了本发明的说明的情况下运用他们的基本编程技能就能实现的,因此在这里省略了详细说明。
因此,基于上述理解,本发明的目的还可以通过在任何信息处理设备上运行一个程序或者一组程序来实现。所述信息处理设备可以是公知的通用设备。因此,本发明的目的也可以仅仅通过提供包含实现所述方法或者设备的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储有这样的程序产品的存储介质也构成本发明。显然,所述存储介质可以是任何公知的存储介质或者将来所开发出来的任何存储介质,因此也没有必要在此对各种存储介质一一列举。
在本发明的系统和方法中,显然,各部件或步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。
以上描述了本发明的优选实施方式。本领域的普通技术人员知道,本发明的保护范围不限于这里所公开的具体细节,而可以具有在本发明的精神实质范围内的各种变化和等效方案。

Claims (18)

1.一种用于在服务器的网络应用和客户端之间保护网络应用数据的方法,包括:
备份由所述网络应用为所述客户端构建的响应;
通过添加用于捕获所述客户端的用户操作的捕获代码来修改所述响应;
将修改后的响应发送至所述客户端;
接收所述客户端提交的请求以及由所述捕获代码捕获的用户操作;
根据接收的由所述捕获代码捕获的用户操作以及备份的所述响应来产生验证请求;
根据所述验证请求验证所述客户端提交的请求;以及
将经过验证的所述客户端提交的请求发送至所述服务器的网络应用。
2.根据权利要求1所述的方法,其中对备份的所述响应执行接收的由所述捕获代码捕获的用户操作产生所述验证请求。
3.根据权利要求1所述的方法,其中捕获代码还用于捕获用户数据,所述方法进一步包括:
接收由所述捕获代码捕获的用户数据;
对备份的所述响应以及接收的由所述捕获代码捕获的用户数据执行接收的由所述捕获代码捕获的用户操作,产生所述验证请求。
4.根据权利要求1所述的方法,其中捕获代码还用于捕获用户数据,所述方法进一步包括:
所述捕获代码根据捕获的特定用户操作发送所述客户端的用户操作和/或用户数据;
分别接收所述客户端提交的请求以及根据特定用户操作发送的所述客户端的用户操作和/或用户数据。
5.根据权利要求1所述的方法,其中捕获代码还用于捕获用户数据,所述方法进一步包括:
接收所述客户端提交的请求以及与所述客户端提交的请求一起提交的由所述捕获代码捕获的用户数据。
6.根据权利要求1所述的方法,其中所述备份由所述网络应用为所述客户端构建的响应的步骤进一步包括:解析所述响应以获得文本对象和脚本对象,备份所述文本对象和脚本对象。
7.根据权利要求6所述的方法,其中根据接收的由所述捕获代码捕获的用户操作以及所述文本对象和脚本对象来产生验证请求。
8.根据权利要求1所述的方法,其中通过比较所述验证请求和所述客户端提交的请求来验证客户端提交的请求。
9.根据权利要求1所述的方法,进一步包括响应于所述客户端提交的请求未通过验证,
拒绝所述客户端的请求并向所述客户端发出警告消息;或者
忽略所述客户端提交的请求而向所述网络应用发送所述验证请求;或者
向所述网络应用发送所述客户端提交的请求但将警告消息记入日志。
10.一种用于在服务器的网络应用和客户端之间保护网络应用数据的系统,包括:
备份装置,被配置成备份由所述网络应用为所述客户端构建的响应;
修改装置,被配置为通过添加用于捕获所述客户端的用户操作的捕获代码来修改所述响应;
发送装置,被配置为将修改后的响应发送至所述客户端;
接收装置,被配置为接收所述客户端提交的请求以及由所述捕获代码捕获的用户操作;
产生装置,被配置为根据接收的由所述捕获代码捕获的用户操作以及备份的所述响应来产生验证请求;以及
验证装置,被配置为根据所述验证请求验证所述客户端提交的请求,
所述发送装置还被配置为将经过验证的所述客户端提交的请求发送至所述服务器的网络应用。
11.根据权利要求10所述的系统,其中所述产生装置还被配置为对备份的所述响应执行接收的由所述捕获代码捕获的用户操作产生所述验证请求。
12.根据权利要求10所述的系统,其中捕获代码还用于捕获用户数据,所述接收装置还被配置为接收由所述捕获代码捕获的用户数据;所述产生装置还被配置为对备份的所述响应和接收的由所述捕获代码捕获的用户数据执行接收的由所述捕获代码捕获的用户操作,产生所述验证请求。
13.根据权利要求10所述的系统,其中捕获代码还用于捕获用户数据,所述捕获代码还用于根据所捕获的特定用户操作发送所述客户端的用户操作和/或用户数据;
所述接收装置还被配置为分别接收所述客户端提交的请求以及根据特定用户操作发送的所述客户端的用户操作和/或用户数据。
14.根据权利要求10所述的系统,其中捕获代码还用于捕获用户数据,所述接收装置还被配置为接收所述客户端提交的请求以及与所述客户端提交的请求一起提交的由所述捕获代码捕获的用户数据。
15.根据权利要求10所述的系统,还包括解析装置,被配置为解析所述响应以获得文本对象和脚本对象并将所述文本对象和脚本对象发送至所述备份装置进行备份。
16.根据权利要求11所述的系统,其中还包括解析装置,还被配置为对备份的所述响应进行解析,并将所述响应经解析后获得的文本对象和脚本对象发送至所述产生装置。
17.根据权利要求10所述的系统,其中所述验证装置被配置为比较所述验证请求和所述客户端提交的请求。
18.根据权利要求10所述的系统,其中所述验证装置还包括验证结果处理器,被配置为响应于所述客户端提交的请求未通过验证,
拒绝所述客户端的请求并经由所述发送装置向所述客户端发出警告消息;或者
忽略所述客户端提交的请求而经由所述发送装置向所述网络应用发送所述验证请求;或者
经由所述发送装置向所述网络应用发送所述客户端提交的请求但将警告消息记入日志。
CN2008101275379A 2008-06-27 2008-06-27 保护网络应用数据的方法和系统 Expired - Fee Related CN101616008B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2008101275379A CN101616008B (zh) 2008-06-27 2008-06-27 保护网络应用数据的方法和系统
US12/491,647 US8285778B2 (en) 2008-06-27 2009-06-25 Protecting web application data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101275379A CN101616008B (zh) 2008-06-27 2008-06-27 保护网络应用数据的方法和系统

Publications (2)

Publication Number Publication Date
CN101616008A CN101616008A (zh) 2009-12-30
CN101616008B true CN101616008B (zh) 2012-07-04

Family

ID=41448803

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101275379A Expired - Fee Related CN101616008B (zh) 2008-06-27 2008-06-27 保护网络应用数据的方法和系统

Country Status (2)

Country Link
US (1) US8285778B2 (zh)
CN (1) CN101616008B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9401807B2 (en) * 2011-02-03 2016-07-26 Hewlett Packard Enterprise Development Lp Processing non-editable fields in web pages
US8627442B2 (en) 2011-05-24 2014-01-07 International Business Machines Corporation Hierarchical rule development and binding for web application server firewall
US9178908B2 (en) * 2013-03-15 2015-11-03 Shape Security, Inc. Protecting against the introduction of alien content
US9979726B2 (en) * 2013-07-04 2018-05-22 Jscrambler S.A. System and method for web application security
CN103440198B (zh) * 2013-08-27 2017-06-16 星云融创(北京)科技有限公司 表单校验方法
US10146824B2 (en) * 2013-11-25 2018-12-04 Sap Se Database job description and scheduling
US9716726B2 (en) * 2014-11-13 2017-07-25 Cleafy S.r.l. Method of identifying and counteracting internet attacks
ES2882125T3 (es) * 2014-11-13 2021-12-01 Cleafy Spa Sistema y procedimiento para identificar ataques en Internet
EP3021550A1 (en) * 2014-11-13 2016-05-18 Nicolo Pastore System and method for identifying internet attacks
CN104468546B (zh) * 2014-11-27 2018-01-09 微梦创科网络科技(中国)有限公司 一种网络信息处理方法及防火墙装置、系统
CN104735090A (zh) * 2015-04-17 2015-06-24 北京汉柏科技有限公司 一种web服务器网页防篡改的方法和系统
RU2635256C1 (ru) * 2016-05-04 2017-11-09 федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации Способ защиты информационно-вычислительной сети от несанкционированных воздействий
CN109190368B (zh) * 2018-08-19 2021-01-12 杭州安恒信息技术股份有限公司 一种sql注入检测装置及sql注入检测方法
CN110875899B (zh) * 2018-08-30 2022-06-28 阿里巴巴集团控股有限公司 数据处理方法、系统以及网络系统
RU2705773C1 (ru) * 2019-01-09 2019-11-11 федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации Способ защиты информационно-вычислительной сети от вторжений
US11271933B1 (en) * 2020-01-15 2022-03-08 Worldpay Limited Systems and methods for hosted authentication service

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1960273A (zh) * 2005-11-01 2007-05-09 杭州帕拉迪网络科技有限公司 Unix终端用户输入逻辑命令动态实时捕获方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6964860B2 (en) * 2001-04-25 2005-11-15 Wyeth Holdings Corporation Glycopeptide antibiotics
US20050188221A1 (en) 2004-02-24 2005-08-25 Covelight Systems, Inc. Methods, systems and computer program products for monitoring a server application
CA2510647A1 (en) * 2005-06-23 2006-12-23 Cognos Incorporated Signing of web request
US8079037B2 (en) * 2005-10-11 2011-12-13 Knoa Software, Inc. Generic, multi-instance method and GUI detection system for tracking and monitoring computer applications

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1960273A (zh) * 2005-11-01 2007-05-09 杭州帕拉迪网络科技有限公司 Unix终端用户输入逻辑命令动态实时捕获方法

Also Published As

Publication number Publication date
US8285778B2 (en) 2012-10-09
US20090327411A1 (en) 2009-12-31
CN101616008A (zh) 2009-12-30

Similar Documents

Publication Publication Date Title
CN101616008B (zh) 保护网络应用数据的方法和系统
CN101631108B (zh) 为网络服务器的防火墙产生规则文件的方法和系统
JP6527590B2 (ja) オフライン・ネットワーク・トラフィックに基づいてカバート・チャネルのネットワーク侵入を検出するためのシステムおよび方法
US9584543B2 (en) Method and system for web integrity validator
CN109547458B (zh) 登录验证方法、装置、计算机设备及存储介质
CN107634967B (zh) 一种CSRF攻击的CSRFToken防御系统和方法
US9106695B2 (en) Method and system for user authentication using DNSSEC
CN108989355B (zh) 一种漏洞检测方法和装置
CN107209830A (zh) 用于识别并抵抗网络攻击的方法
CN105450730A (zh) 一种处理客户端请求的方法和装置
CN101964025A (zh) Xss检测方法和设备
Shrivastava et al. XSS vulnerability assessment and prevention in web application
CN104321782A (zh) web应用的安全执行
CN107016074B (zh) 一种网页加载方法及装置
CN104217173A (zh) 一种针对浏览器的数据和文件加密方法
CN103312664A (zh) 表单验证方法、装置和系统
CN107276986B (zh) 一种通过机器学习保护网站的方法、装置和系统
CN109617917A (zh) 地址虚拟化Web应用安全防火墙方法、装置和系统
CN104199657A (zh) 开放平台的调用方法及装置
CN110968872A (zh) 文件漏洞的检测处理方法、装置、电子设备及存储介质
CN112131564A (zh) 加密数据通信方法、装置、设备以及介质
CN111460410A (zh) 服务器登录方法、装置、系统与计算机可读存储介质
CN110602134B (zh) 基于会话标签识别非法终端访问方法、装置及系统
CN110875899A (zh) 数据处理方法、系统以及网络系统
CN111597537B (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
TR01 Transfer of patent right

Effective date of registration: 20180628

Address after: 7 floor, building 10, Zhang Jiang Innovation Park, 399 Keyuan Road, Zhang Jiang high tech park, Pudong New Area, Shanghai.

Patentee after: International Business Machines (China) Co., Ltd.

Address before: American New York

Patentee before: International Business Machines Corp.

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

Granted publication date: 20120704

Termination date: 20190627

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