CN101919224A - 用于控制计算机应用程序的方法和系统 - Google Patents

用于控制计算机应用程序的方法和系统 Download PDF

Info

Publication number
CN101919224A
CN101919224A CN2008801246497A CN200880124649A CN101919224A CN 101919224 A CN101919224 A CN 101919224A CN 2008801246497 A CN2008801246497 A CN 2008801246497A CN 200880124649 A CN200880124649 A CN 200880124649A CN 101919224 A CN101919224 A CN 101919224A
Authority
CN
China
Prior art keywords
client
request
computer system
client requests
computer
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
CN2008801246497A
Other languages
English (en)
Other versions
CN101919224B (zh
Inventor
D·L·本肖普
H·R·本肖普
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.)
Koninklijke KPN NV
Original Assignee
HITD INFORMATION TECHNOLOGY B (NL)
DLB Finance and consultancy BV
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 HITD INFORMATION TECHNOLOGY B (NL), DLB Finance and consultancy BV filed Critical HITD INFORMATION TECHNOLOGY B (NL)
Publication of CN101919224A publication Critical patent/CN101919224A/zh
Application granted granted Critical
Publication of CN101919224B publication Critical patent/CN101919224B/zh
Active 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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0254Stateful filtering
    • 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

Landscapes

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

Abstract

本发明涉及控制计算机系统中的计算机应用程序的计算机实现方法,该计算机系统配置为与客户端进行电子通信。该计算机系统配置为能够访问与所述计算机应用程序的第一应用状态相对应的一个或多个可允许请求的第一请求集合。计算机应用程序可以在计算机系统上运行,或在一个或多个其它计算机系统上运行。在该计算机系统处接收针对该计算机应用程序的客户请求。计算机应用程序相对于所述客户端处于第一应用状态(例如,使用客户连接)。分析客户请求,以便确定客户请求是否与相应于计算机应用程序的第一应用状态的可允许请求中的一个请求相匹配。通过指示这个计算机应用程序仅在客户请求与第一请求集合中的可允许请求相匹配时执行客户请求,控制该计算机应用程序。

Description

用于控制计算机应用程序的方法和系统
技术领域
本发明涉及使用一个或多个计算机设备的电子通信领域。
背景技术
随着因特网的飞速发展,主机系统可以将其服务提供给许多客户端系统,其中主机和客户端系统两者都分布于世界各地。一旦建立了正确的连接,信息可以在主机系统和客户端系统间自由地流动。
例如,在常规的分布式网络中,多个主机系统或服务器经由网络或网络的集合(例如,因特网)与多个客户端系统通信。这种分布式网络体系结构是力量的来源(例如,使得信息能够在许多系统之间自由流动),也是脆弱性的来源(例如,产生了易受恶意攻击的脆弱性)。
特别地,当客户端系统试图建立到主机系统的连接,例如,TCP(传输控制协议)连接时,客户机和主机交换一组消息或分组序列。这种一般方法应用于所有TCP连接:Web、远程登陆、电子邮件等。当连接建立后,客户端系统可以向主机系统发送请求,例如对内容的请求。
为了防止或减少客户端系统对主机系统的恶意攻击行为,防火墙是公知的。防火墙是专用装置或软件,用以检查通过它的网络通信量,并且基于一组规则拒绝或允许通过。
根据通信发生在何处,在何处拦截通信和被跟踪的状态,存在若干防火墙分类。网络层防火墙,已被称为分组过滤器,工作在TCP/IP协议栈的相对低的层次,其不允许分组通过防火墙,除非分组与确立的规则集合匹配。这些防火墙基于分组属性过滤通信。防火墙管理员可以定义该规则;或可以应用默认规则。网络层防火墙一般分为两个子类。状态防火墙是跟踪经过它的网络连接(诸如,TCP流、UDP通信)的状态的防火墙。该防火墙被编程为区分用于不同类型连接的合法分组。仅有与已知连接状态匹配的分组才被防火墙允许,而其它分组将被拒绝。无状态防火墙具有分组过滤能力,但是不能进行关于主机之间的通信达到了何种阶段的更复杂的判断。
应用层防火墙工作于TCP/IP协议栈的应用层(即,所有浏览器通信量或所有远程登陆或ftp通信量),并且可以拦截传送到一个应用或来自于该应用的所有分组。原则上,应用防火墙可以防止所有不希望的外部通信到达受保护的机器。这些防火墙检查分组中不适当的内容。XML防火墙是一种新近的应用层防火墙的例子。在EP1 296 252中提供了这种防火墙的例子。
网络层防火墙的缺点在于必须建立并且维护复杂的规则集。在另一方面,应用层防火墙的确定在于对分组内容的筛选需要相当大数量的资源,和/或可能花费大量时间。
本领域中需要能够例如节省资源的改进的安全系统。
发明内容
提出了控制配置为与客户端进行电子通信的计算机系统中的计算机应用程序的计算机实现方法。该计算机系统配置为能够访问相应于所述计算机应用程序的第一应用状态的一个或多个可允许请求的第一请求集合。所述计算机应用程序可以运行在计算机系统上,或运行在一个或多个其它计算机系统上。在该计算机系统处接收对该计算机应用程序的客户请求。该计算机应用程序相对于所述客户端处于第一应用状态(例如,使用客户连接)。分析客户请求,以便确定客户请求是否与相应于计算机应用程序的第一应用状态的可允许请求中的一个请求相匹配。通过指示计算机应用程序仅在客户请求与第一请求集合中的可允许请求相匹配时执行客户请求,控制该计算机应用程序。
还提出了用于执行该方法的计算机程序,以及包含这种计算机程序的计算机可读介质。
还提出了用于控制计算机应用程序的计算机系统。计算机应用程序安装在计算机系统或一个或多个其它计算机系统上。计算机系统配置为用于连接至少一个客户端。该计算机系统包括客户请求接收器,配置为接收被定向到所述计算机应用程序的客户请求。计算机程序然后可以处于第一应用状态。该计算机系统还包括分析器模块,配置为分析客户请求是否与第一请求集合中的可允许请求中的一个请求相匹配。第一请求集合包括相应于与所述客户端相关的计算机应用程序的第一应用状态的一个或多个可允许请求。该计算机系统还包括指示模块,配置为用于指示计算机应用程序仅当客户请求与第一请求集合的可允许请求中的一个请求相匹配时执行所述客户请求。
客户请求可以例如包括对该计算机应用程序的命令。
应当明了,可允许请求的第一集合可以包括对所述计算机应用程序有效的多个或大量请求的选择。
提出了方法和系统将增加的安全性和降低的资源应用相结合。一般地,计算机应用程序能够处理多个请求,经常是大量或极大量的请求。提出的方法和系统能够根据一个或多个计算机程序的应用状态,仅选择可被允许的那些请求。仅有与对于该状态可允许的请求匹配的请求将被执行,提供了一种安全的系统。在另一方面,该方法和系统不检查内容本身,而是追踪相对于特定时刻的一个或多个计算机程序的应用状态,预期可能来自客户端的低级请求(例如,应用级请求)。否则,请求被拒绝或简单地被停止而不被执行。这种方法允许快速而且安全的通信量筛选。
应当明了,该方法和计算机系统可以与实际运行计算机应用程序的一个或多个其它计算机系统通信。从而该计算机系统起看门人的作用。
应用程序的例子包括web服务器、web服务、应用服务器,并且特别是数据库。
权利要求2和19的实施例提供了动态建立相应于计算机应用程序的适用应用状态的请求集合的优点。如权利要求3定义的,可以通过应用程序对请求的执行,确定该计算机系统或另一个计算机系统的通信状态的改变。
存在各种方法将针对计算机应用程序的特定应用状态的可允许请求的适用请求集合通知给计算机系统。
权利要求20的实施例具有计算机应用程序仅向该计算机系统报告其针对特定客户端(连接)的应用状态的优点。该计算机系统可以使用报告的状态,以便获得、检索或更新针对计算机应用程序的这个状态的适用请求集合。
在另一方面,权利要求4和21的实施例具有从计算机应用程序(或配置为向计算机系统报告该计算机程序的应用状态的另一个程序)直接接收适用请求集合的优点。
权利要求5、6和22定义了在实际内容层次之下的一个层次上的请求的实施例。对这个层次的筛选快且安全。
权利要求7和23的实施例使得能够借助于多个客户端的连接(例如,类似于有状态(stateful)防火墙)跟踪连接到该计算机系统的所述多个客户端。特别地,该计算机系统监视例如连接了哪个客户端,和/或哪个客户端已经进行了哪些客户请求(连接状态)。然后,计算机应用程序的应用状态可被与特定连接状态相关联。
权利要求8和24的实施例允许区分恶意和非恶意客户端。大部分组织使用通常被称为代理服务器的计算机系统,代理服务器分隔局域网和诸如因特网的广域网。在其它功能中,代理服务器使用网络地址变换(NAT)。向代理服务器做出的请求数量相当大,但是这些请求很可能是非恶意的。通过设置适当的阈值(例如,使用从内部客户端接收的登录请求数目的历史数据,基于预期可以来自局域网的请求的平均数),可以区分恶意外部请求和来自局域网的非恶意请求。可以基于登录请求数目以及应用程序流量,即,计算机应用程序的应用状态序列,估计来自内部客户端的请求的频率。来自外部客户端的大量请求可以指示攻击。可以拒绝这种请求。可以基于联系历史、过去的行为和/或域,监视、拒绝或分析来自这些客户端的请求。
权利要求9-12和25-28的实施例允许阻断或遏制发送大量请求或大量相同客户请求的客户端。更一般地,可以区分恶意客户端和非恶意客户端,即使非恶意客户端请求达到计算机系统稍晚,非恶意客户端请求被在恶意客户端请求之前服务。虽然这些实施例全面增加了安全性,应当明了,如权利要求1-8定义的,这些实施例还可被在本发明中单独应用。
虽然客户端和计算机系统可在单个设备上实现,权利要求13和29的实施例是优选的。
对于数据库计算机应用程序来说,可能请求的数量特别大。权利要求14、15、30和31的实施例在这些情况下特别有利。
此后,将更详细地描述本发明的实施例。然而,应当明了,这些实施例不被认为限制本发明的保护范围。
附图说明
在附图中:
图1A和1B提供了对根据本发明一个实施例的计算机系统的各种使用情况的示意说明;
图2A和2B提供了对根据本发明一个实施例的系统的示意说明;
图3A和3B显示了根据本发明的方法的步骤。
具体实施方式
图1A和1B提供了对根据本发明一个实施例的计算机系统1的各种使用情况的示意说明。
在图1A中,客户设备2A、2B经由网络3连接到计算机系统1。然而,计算机系统1还可以自己运行客户端,并且在显示器4上提供客户端的用户界面。计算机系统1还运行计算机应用程序,诸如,web服务器或数据库应用,而客户端的请求(命令)则被定向到这些计算机应用程序。客户设备可以包括通过无线接入网络5与网络3通信的移动无线设备2A,诸如电话、PDA、膝上计算机等,以及有线设备,诸如台式计算机2B。
在图1B中,客户设备2C、2D和2E经由第一网络3连接到计算机系统1。计算机系统1作为运行特定计算机应用程序的主机系统或服务器6的看门人,而来自客户端的请求则可被定向到该特定计算机应用程序。可以提供多个这种服务器6。计算机系统1经由第二网络7通信地连接到主机系统6。主机系统6可以访问数据库8,并且尤其可以运行使用数据库8的数据库应用。
本领域的技术人员可以构想应用计算机系统1的各种其它情况,而不脱离本发明的范围。
客户端应用程序可被安装在计算机系统1、主机系统6或一个或多个其它计算机系统上并且在其上运行。该计算机应用程序具有多个应用状态。应用状态可以表示应用程序的特定(预定)状态序列中的逻辑步骤。计算机应用程序的应用状态可以在对该程序的请求的执行之后改变。大量请求对于这些应用状态是有效的。然而,对于每个应用状态,仅有该大量请求的特定子集是可允许的。
作为例子,对一个网站页面上的链接的激活可以转到具有一组新链接的另一个网页(应用状态的改变)。对于这个应用状态,在对web服务器的许多可能请求中,仅有所转到的网页上的链接的激活属于可允许请求的集合。
在图2A中,示意地示出了图1A和1B的计算机系统1。计算机系统1包括处理器10、存储器11、用于经由网络3与一个或多个设备2A-2E(并且可能经由第二网络7与主机系统6)通信的网络适配器12。应当明了,通常图1A和1B的计算机系统1被配置为连接到多于两个或三个客户设备。
计算机系统1还可以包含数据库13,数据库13具有针对由计算机系统1或主机系统6运行的应用程序的各种应用状态的请求集合。数据库13还可被运行在计算机系统1上的数据库应用程序使用。
图2B示意地示出了计算机系统1的特定功能,并且现在将对其进行更详细的描述。应当明了,这些功能可被大部分实现为在处理器10上执行的一个或多个计算机程序的软件代码部分。
计算机系统1包括用于建立与客户设备2A-2E的连接的连接模块20。该连接模块监视与客户设备的连接。连接模块20可被配置为确定客户端到计算机系统1的通信状态。
计算机系统1包括配置为从客户设备2A-2E或内部客户端接收请求(并可能处理该请求)的客户请求接收器21。客户请求是对安装在计算机系统1和/或主机系统6上的计算机应用程序的请求或命令。客户请求可以例如是由特定网页上的链接激活导致的http请求,或是针对数据库8、13的命令。
计算机系统1还可以具有分析器模块22,其配置为分析由客户请求接收器21接收的客户请求是否与包括相应于计算机应用程序相对于该客户端的应用状态的一个或多个可允许请求的请求集合中的可允许请求相匹配。
计算机系统1还包括指示模块23,指示模块23用于指示计算机系统1和/或主机系统6的计算机应用程序仅当客户请求与所述请求集合中的一个可允许请求相匹配时才执行客户请求。
当然,客户请求接收器21可以接收进一步客户请求。分析器模块22可以分析该进一步客户请求是否与进一步相应请求集合中的可允许请求匹配,每个请求集合相应于计算机应用程序的不同应用状态。指示模块23然后可以指示计算机应用程序仅当所述进一步请求与相应应用状态的适用请求集合中的可允许请求相匹配时执行这些请求。
存在各种方法用以将针对计算机应用程序的特定应用状态的可允许请求的适用请求集合通知给计算机系统1。
计算机系统1可以例如包括应用状态检测器24,其配置为检测计算机系统1和/或主机系统6的计算机应用程序的应用状态。如果检测器24检测到该程序的一个应用状态,则提供用于检索、获得和/或更新针对该特定应用状态的请求集合的请求集合检索器25。例如,可以从数据库13检索该请求集合。
然而,还可以由计算机系统1的请求集合接收器26接收针对计算机应用程序的特定应用状态的可允许请求的适用请求集合。例如,可以从运行在计算机系统1或服务器6上的计算机应用程序或从另一个计算机程序接收该请求集合。
计算机系统1还可以存储客户请求的阈值数量。计算机系统1被配置为保持每个时间单位的客户请求的阈值数量。指示模块23被配置为指示计算机应用程序仅当客户请求的数量在所述阈值数量之下时执行客户请求。当计算机系统1在代理服务器内实现时,或许多客户端共享一个公共IP地址时,这种功能可以例如被证明是有利的。
在替换实施例中,计算机系统1还可以具有配置为区分恶意客户端和非恶意客户端的区分模块27。可以基于从客户端接收到的客户请求的数目、客户端与计算机系统1的联系历史、从所述客户端接收到的请求内容类型和/或请求的内容,来区分恶意客户端和非恶意客户端。提供评分模块28,排序模块28配置为对来自分恶意客户端和所述非恶意客户端的客户请求进行排序,以便获得恶意客户请求跟在非恶意客户请求之后的队列。指示模块23配置为指示所述计算机应用程序首先执行所述非恶意客户请求。在已经处理了合法请求之后,可由另一个分析模块29分析恶意客户请求,从而惩罚恶意客户端。所得结果例如可用于更新计算机系统1和恶意客户端之间的联系历史。
计算机系统1可以具有用于存储来自客户端的联系历史的存储模块30。排序模块28可被配置为给所述联系历史中已知的客户端授予高于所述联系历史中未知的客户端的评级。
接着,将参考图3A和3B描述计算机系统1的操作。与图1B保持一致,假设计算机系统1作为运行从数据库8中检索数据的数据库应用程序的主机系统6的看门人。
安装在客户设备2C上的客户端经由通信网络3请求使用运行在主机系统6上的计算机应用程序。
在步骤40,计算机系统1拦截该请求,并且使用连接模块20建立连接。连接模块20监视该连接和来自客户设备2C的请求。向客户设备2C呈现一个开始页面,例如,html页面。此处假设计算机系统1不筛选初始请求,虽然可以应用具有用于启动该计算机应用的指定可允许请求的初始应用状态。
呈现在客户设备2C上的计算机应用程序的开始页面允许进行若干请求,例如,http GET请求。这些请求构成相应于计算机应用程序的开始页面(应用状态)的可允许请求的第一请求集合。出于简化的原因,假设此处有效请求仅由可被激活的一组超链接构成。然而,应当明了,例如http-post请求的其它请求或命令也是可行的。
在步骤41,从客户设备2C接收到由开始页面中的超链接的激活产生的http请求。连接模块20监测到这个请求来自从开始页面发出请求的客户设备2C。
请求集合接收器26从运行在主机系统6上的计算机应用程序接收对于开始页面有效的第一请求集合。在步骤42,计算机系统1的分析器模块22检查从客户设备2C接收到的http请求是否与接收到的针对该http开始页面的第一请求集合中的可允许请求相匹配。
如果该http请求不与第一请求集合内的请求匹配,指示模块23将不指示运行在主机系统6上的计算机应用程序执行该http请求(步骤43)。应当注意,当请求不是适用请求集合中的一部分时,从客户设备的视角看似有效的请求将可能不被执行。
在步骤44,对不被执行的请求执行进一步动作。这些动作包括但不限于丢弃该请求、分析该请求、存储该请求、从该请求提取信息以便建立请求历史等。
如果分析器模块22发现来自客户设备2C的http请求与开始html页面的第一请求集合中的可允许请求相匹配,在步骤45,指示模块23指示计算机应用程序在数据库8上执行该http请求。注意,还可以对这些被执行的请求执行进一步的动作。
执行请求以使得应用程序从数据库中提取数据,由此建立独立于该请求的新html页面。新html页面被传输到客户设备2C。
新html页面对应于计算机应用程序的新应用状态(步骤46)。保持与客户设备2C的开放连接的连接模块20记录新html页面已经被传输到客户设备2C。
在步骤47,从客户设备2C接收到进一步的http请求。
在接收到该http请求之前或之后,计算机应用程序已经将相应于新应用状态的请求集合通知给分析器模块22。在接收到该进一步的http请求之后,分析器模块22在步骤48检查该进一步的http请求是否与对于新应用状态有效的请求集合中的可允许请求相匹配。
最后,根据分析器模块22的分析的输出,指示模块23指示计算机应用程序执行请求(步骤49)或不执行请求(步骤50)。
应当明了,该流程图继续用于客户设备2C的进一步请求。
还应当明了,计算机系统1例如使用具有针对每个连接的表的连接模块20追踪每个客户端的应用状态,从而计算机系统被1配置为处理来自多个客户端的请求,而一个或多个计算机应用程序的应用状态在特定时刻对于每个客户端可能不同。
还应当明了,例如出于统计的原因,可以根据步骤44分析从客户端接收到的每个请求。

Claims (31)

1.一种控制计算机系统中的计算机应用程序的计算机实现方法,该计算机系统配置为与客户端电子通信,并且能够访问相应于运行在所述计算机系统或与所述客户端有关的另一个计算机系统上的所述计算机应用程序的第一应用状态的一个或多个可允许请求的第一请求集合,该方法包括步骤:
-在所述计算机系统处,接收来自所述客户端的针对预定的第一应用状态中的所述计算机应用程序的客户请求;
-响应接收到所述客户请求,分析所述客户请求是否与所述可允许请求中的一个请求相匹配;
-仅当所述客户请求与所述第一请求集合的所述可允许请求中的一个请求相匹配时,指示所述计算机应用程序执行所述客户请求。
2.如权利要求1所述的方法,还包括如下步骤:
-将所述计算机应用程序的所述第一应用状态改变为第二应用状态,所述第二应用状态不同于所述第一应用状态;
-从客户设备接收进一步的客户请求;
-分析所述进一步的客户请求是否与相应于所述第二应用状态的一个或多个可允许请求的第二请求集合中的可允许请求相匹配;
-仅当所述进一步的客户请求与所述第二请求集合中的所述可允许请求中的一个请求相匹配时,指示所述计算机应用程序执行所述进一步的客户请求。
3.如权利要求2所述的方法,其中所述第一应用状态响应执行所述客户请求而改变为所述第二应用状态。
4.如前面一个或多个权利要求所述的方法,其中从运行在所述计算机系统或所述另一个计算机系统上的所述计算机应用程序获得所述第一请求集合或所述第一应用状态中的至少一个。
5.如前面一个或多个权利要求所述的方法,其中所述第一请求集合中的所述可允许请求与应用层请求有关。
6.如权利要求5所述的方法,其中所述应用层请求包括超文本传输协议(HTTP)请求、文件传输协议(FTP)请求、简单邮件传输协议(SMTP)请求和远程登陆请求中的至少一个。
7.如前面一个或多个权利要求所述的方法,还包括如下步骤:
-由所述计算机系统确定所述客户端和所述计算机系统之间的连接状态;
-将所述第一应用状态和第二应用状态与所述连接状态相联系。
8.如前面一个或多个权利要求所述的方法,其中所述计算机系统保持每个时间单位客户请求的阈值数量,该方法包括仅在客户请求数量低于所述阈值数量时指示所述计算机应用程序执行所述客户请求的步骤。
9.如前面一个或多个权利要求所述的方法,还包括如下步骤:
-区分恶意客户端和非恶意客户端;
-对来自所述恶意客户端和所述非恶意客户端的客户请求进行排序,以便获得恶意客户请求跟在非恶意客户请求之后的队列;
-指示所述计算机应用程序首先执行所述非恶意客户请求。
10.如权利要求9所述的方法,还包括在指示所述计算机应用程序执行了所有非恶意客户请求之后,分析所述队列中的所述恶意客户请求的步骤。
11.如权利要求9或10所述的方法,其中所述计算机系统存储与客户端的联系历史,还包括给予所述队列中的根据所述联系历史已知的客户端高于根据所述联系历史未知的客户端的排序的步骤。
12.如权利要求9-11中的一个或多个权利要求所述的方法,还包括基于下列中的至少一个区分所述恶意客户端和非恶意客户端的步骤:从客户端接收到的客户请求的数目、客户端与所述计算机系统的联系历史、请求的内容的类型、从所述客户端接收到的请求的内容。
13.如前面一个或多个权利要求所述的方法,其中所述客户端在客户设备内实现,并且所述计算机系统被连接到至少一个通信网络,以便与所述客户设备电子地通信,该方法包括在所述通信网络上接收所述客户请求的步骤。
14.如前面一个或多个权利要求所述的方法,其中所述计算机系统或所述另一个计算机系统包括数据库,并且所述计算机应用程序是数据库应用程序。
15.如权利要求14所述的方法,还包括如下步骤:
-从所述数据库应用程序接收可允许数据库请求的所述第一请求集合;
-仅当所述客户请求与所述可允许数据库请求中的一个请求相匹配时,指示所述数据库的所述数据库应用程序的数据库操作。
16.一种计算机程序,包括适用于当被安装在电子系统上并且被电子系统执行时,执行根据权利要求1到15所述的方法的软件代码部分。
17.一种包含权利要求16的计算机程序的载体。
18.一种计算机系统,用于控制所述计算机系统或另一个计算机系统上的计算机应用程序,并配置为连接到至少一个客户端的所述计算机系统包括:
-客户请求接收器,配置为接收被定向到所述计算机应用程序的客户请求,所述计算机应用程序包括至少第一应用状态;
-分析器模块,配置为分析所述客户请求是否与第一请求集合中的可允许请求相匹配,所述第一请求集合包含相应于与所述客户端有关的所述计算机应用程序的所述第一应用状态的一个或多个可允许请求;
-指示模块,配置为仅当所述客户请求与所述第一请求集合中的所述可允许请求中的一个请求相匹配时,指示所述计算机应用程序执行所述客户请求。
19.如权利要求18所述的计算机系统,其中:
-所述客户请求接收器配置为从所述客户端接收进一步的客户请求;
-所述分析器模块配置为分析所述进一步的客户请求是否与第二请求集合中的可允许请求匹配,所述第二请求集合包含相应于所述计算机应用程序的第二应用状态的一个或多个可允许请求,所述第二应用状态不同于所述第一应用状态;
-所述指示模块还配置为仅当所述进一步的客户请求与所述第二请求集合中的所述可允许请求中的一个请求相匹配时,指示所述计算机应用程序执行所述进一步的客户请求。
20.如权利要求19所述的计算机系统,其中所述计算机系统还包括:
-应用状态检测器,配置为检测所述第一应用状态和所述第二应用状态;
-请求集合检索器,配置为响应于检测到所述第一应用状态或所述第二应用状态,分别检索所述第一请求集合和所述第二请求集合。
21.如权利要求19所述的计算机系统,其中所述计算机系统还包括配置为接收所述第一请求集合和所述第二请求集合的请求集合接收器。
22.如权利要求18-21中的一个或多个所述的计算机系统,其中所述客户请求接收器配置为接收应用层请求,诸如超文本传输协议(HTTP)请求、文件传输协议(FTP)请求、简单邮件传输协议(SMTP)请求和远程登陆请求。
23.如权利要求18-22中的一个或多个所述的计算机系统,其中所述计算机系统还包括配置为确定所述客户端和所述计算机系统之间的连接状态的连接状态监视器,所述计算机系统配置为使得所述计算机应用程序的所述第一应用状态和第二应用状态与所述连接状态有关。
24.如权利要求18-23中的一个或多个所述的计算机系统,其中所述计算机系统配置为保持每时间单位客户请求的阈值数量,并且其中所述指示模块配置为仅在客户请求数量低于所述阈值数量时,指示所述计算机应用程序执行所述客户请求。
25.如权利要求18-24中的一个或多个所述的计算机系统,其中所述计算机系统还包括:
-区分模块,配置为区分恶意客户端和非恶意客户端;
-排序模块,配置为对来自所述恶意客户端和所述非恶意客户端的客户请求进行排序,以便获得恶意客户请求跟在非恶意客户请求之后的队列;
-其中所述指示模块配置为指示所述计算机应用程序首先执行所述非恶意客户请求。
26.如权利要求25所述的计算机系统,还包括第二分析器模块,配置为在安装模块指示了所有非恶意客户请求之后,分析所述队列中的所述恶意客户请求。
27.如权利要求25或26所述的计算机系统,还包括用于存储与客户端的联系历史的存储模块,以及排序模块,该排序模块配置为给予所述队列中的根据所述联系历史已知的客户端高于根据所述联系历史未知的客户端的排序。
28.如权利要求25-27中的一个或多个所述的计算机系统,其中所述区分模块配置为基于下列中的至少一个区分所述恶意客户端和非恶意客户端:从客户端接收到的客户请求的数目、客户端与所述计算机系统的联系历史、请求的内容的类型、从所述客户端接收到的请求的内容。
29.如权利要求18-28中的一个或多个所述的计算机系统,其中所述计算机系统配置为通过通信网络接收所述客户请求。
30.如权利要求18-29中的一个或多个所述的计算机系统,其中所述计算机应用程序是数据库应用程序,并且优选地安装在所述另一个计算机系统上。
31.如权利要求30所述的计算机系统,其中所述计算机系统包括:
-接收器,配置为从所述另一个计算机系统的所述数据库应用程序接收可允许数据库请求的所述第一请求集合;
-所述指示模块配置为仅当所述客户请求与所述可允许数据库请求中的一个请求相匹配时,指示所述数据库应用程序执行数据库操作。
CN2008801246497A 2008-01-17 2008-01-17 用于控制计算机应用程序的方法和系统 Active CN101919224B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/NL2008/050030 WO2009091241A1 (en) 2008-01-17 2008-01-17 Method and system for controlling a computer application program

Publications (2)

Publication Number Publication Date
CN101919224A true CN101919224A (zh) 2010-12-15
CN101919224B CN101919224B (zh) 2013-11-20

Family

ID=39810298

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008801246497A Active CN101919224B (zh) 2008-01-17 2008-01-17 用于控制计算机应用程序的方法和系统

Country Status (11)

Country Link
EP (1) EP2103073B1 (zh)
JP (1) JP5160652B2 (zh)
KR (1) KR101465462B1 (zh)
CN (1) CN101919224B (zh)
AT (1) ATE473584T1 (zh)
AU (1) AU2008348253B2 (zh)
CA (1) CA2711369A1 (zh)
DE (1) DE602008001714D1 (zh)
ES (1) ES2346825T3 (zh)
PL (1) PL2103073T3 (zh)
WO (1) WO2009091241A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2898049T3 (es) * 2016-06-21 2022-03-03 Soreq Nuclear Res Ct Analizador de XRF para identificar una pluralidad de objetos sólidos, sistema de clasificación y un método de clasificación del mismo

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002075547A1 (en) * 2001-03-16 2002-09-26 Kavado, Inc. Application layer security method and system
US20050249214A1 (en) * 2004-05-07 2005-11-10 Tao Peng System and process for managing network traffic
US20050273857A1 (en) * 2004-06-07 2005-12-08 Check Point Software Technologies, Inc. System and Methodology for Intrusion Detection and Prevention
CN1759564A (zh) * 2003-03-10 2006-04-12 索尼株式会社 访问控制处理方法
CN1762128A (zh) * 2003-03-21 2006-04-19 爱捷特公司 无线网关

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061738A (en) * 1997-06-27 2000-05-09 D&I Systems, Inc. Method and system for accessing information on a network using message aliasing functions having shadow callback functions
JP3974554B2 (ja) * 2003-05-19 2007-09-12 日本電信電話株式会社 ゲートウェイ
JP4602158B2 (ja) * 2005-05-25 2010-12-22 三菱電機株式会社 サーバ装置保護システム
KR100695204B1 (ko) 2005-06-17 2007-03-14 에스케이 텔레콤주식회사 이동통신 단말기를 이용하여 애플리케이션 상태를 저장하는 시스템 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002075547A1 (en) * 2001-03-16 2002-09-26 Kavado, Inc. Application layer security method and system
CN1759564A (zh) * 2003-03-10 2006-04-12 索尼株式会社 访问控制处理方法
CN1762128A (zh) * 2003-03-21 2006-04-19 爱捷特公司 无线网关
US20050249214A1 (en) * 2004-05-07 2005-11-10 Tao Peng System and process for managing network traffic
US20050273857A1 (en) * 2004-06-07 2005-12-08 Check Point Software Technologies, Inc. System and Methodology for Intrusion Detection and Prevention

Also Published As

Publication number Publication date
ATE473584T1 (de) 2010-07-15
ES2346825T3 (es) 2010-10-20
JP2011512572A (ja) 2011-04-21
PL2103073T3 (pl) 2010-12-31
KR101465462B1 (ko) 2014-11-26
KR20100117604A (ko) 2010-11-03
DE602008001714D1 (de) 2010-08-19
AU2008348253B2 (en) 2014-01-23
JP5160652B2 (ja) 2013-03-13
CN101919224B (zh) 2013-11-20
CA2711369A1 (en) 2009-07-23
EP2103073B1 (en) 2010-07-07
AU2008348253A1 (en) 2009-07-23
EP2103073A1 (en) 2009-09-23
WO2009091241A1 (en) 2009-07-23

Similar Documents

Publication Publication Date Title
EP3591932B1 (en) Methods and devices for blocking, detecting, and/or preventing malicious traffic
KR101280910B1 (ko) 고속 패킷 처리를 위한 네트워크 프로세서 기반 2단계 침입탐지장치 및 방법
EP2408166B1 (en) Filtering method, system and network device therefor
KR100800370B1 (ko) 어택 서명 생성 방법, 서명 생성 애플리케이션 적용 방법, 컴퓨터 판독 가능 기록 매체 및 어택 서명 생성 장치
CN101087196B (zh) 多层次蜜网数据传输方法及系统
EP2080317B1 (en) Apparatus and a security node for use in determining security attacks
US20110154492A1 (en) Malicious traffic isolation system and method using botnet information
CN101617516B (zh) 控制客户端和具有私有网络地址的服务器之间的应用消息的方法和设备
Ganesh Kumar et al. Improved network traffic by attacking denial of service to protect resource using Z-test based 4-tier geomark traceback (Z4TGT)
US20040103314A1 (en) System and method for network intrusion prevention
US20010039623A1 (en) System, method and apparatus for preventing transmission of data on a network
US20050278779A1 (en) System and method for identifying the source of a denial-of-service attack
SE524963C2 (sv) Nod och mobil anordning för ett mobiltelekommunikationsnätverk som tillhandahåller intrångsdetektering
US7409715B2 (en) Mechanism for detection of attacks based on impersonation in a wireless network
KR101188305B1 (ko) 이상 도메인 네임 시스템 트래픽 분석을 통한 봇넷 탐지 시스템 및 그 방법
US8463921B2 (en) Method and system for controlling a computer application program
CN102223266B (zh) 一种协议代理检测方法和装置
CN101919224B (zh) 用于控制计算机应用程序的方法和系统
KR101196325B1 (ko) 분산서비스거부 공격 탐지장치 및 방법
Falletta et al. Detecting Scanners: Empirical Assessment on a 3G Network.
CN110022301A (zh) 物联网设备防护用防火墙
CN112491791B (zh) 快速识别http代理ip地址的方法、装置及电子设备
CN115189996B (zh) 基于Serverless的车联网数据传输方法及装置、存储介质和终端
CN112565309B (zh) 报文处理方法、装置、设备以及存储介质
CN117376279A (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
ASS Succession or assignment of patent right

Free format text: FORMER OWNER: HITD INFORMATION TECHNOLOGY B. (NL)

Effective date: 20130821

Owner name: SIXIBIAO HOLDING CO., LTD.

Free format text: FORMER OWNER: DLB FINANCE + CONSULTANCY B. V;HITD INFORMATION TECHNOLOGY B. (NL)

Effective date: 20130821

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20130821

Address after: Holland Etten leur

Applicant after: DLB Finance & Consultancy BV

Address before: Holland Etten leur

Applicant before: Dlb Finance & Consultancy B. V

Applicant before: Hitd Information Technology B. (NL)

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20181130

Address after: Rotterdam

Patentee after: KPN N. V.

Address before: Holland Etten leur

Patentee before: DLB Finance & Consultancy BV

TR01 Transfer of patent right