CN109565499B - 攻击字符串生成方法及装置 - Google Patents
攻击字符串生成方法及装置 Download PDFInfo
- Publication number
- CN109565499B CN109565499B CN201680087790.9A CN201680087790A CN109565499B CN 109565499 B CN109565499 B CN 109565499B CN 201680087790 A CN201680087790 A CN 201680087790A CN 109565499 B CN109565499 B CN 109565499B
- Authority
- CN
- China
- Prior art keywords
- attack
- string
- web application
- final
- server
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/168—Implementing security features at a particular protocol layer above the transport layer
Abstract
本发明公开一种分析Web应用程序的执行状态的动态分析器的操作方法。该方法包括:分析基于最终攻击字符串的上述Web应用程序的执行状态的步骤,其中,上述最终攻击字符串包括指示通过上述Web应用程序而执行的特定操作的参数;以及对于Web应用程序的执行状态进行分析的步骤,上述最终攻击字符串生成为规避设计成过滤包括预定义的参数的原始攻击字符串的过滤逻辑。因此,通过生成能够绕过简单的过滤的最终攻击字符串就能够检测出在现有动态分析器所检测不出的安全漏洞。
Description
技术领域
本发明涉及一种生成通过Web应用程序而执行的攻击字符串的技术,更详细地讲,涉及一种充分利用在静态分析器生成的字符串约束条件而生成攻击字符串的方法及装置。
背景技术
随着Web应用程序用户群的增长,上市的Web应用程序的数量在激增。因此,趋势是Web应用程序安全威胁也随之增加。在发生恶意利用Web应用程序的结构和功能上的漏洞而插入进行恶意行为的代码的情况。由于通过Web应用程序的信息泄漏在成为社会问题,因此,用于验证易受攻击的Web应用程序的研究变得越来越重要。
用于验证Web应用程序的方法论可大致分为两种。第一种是通过静态分析的方法。该方法是以在分析多个Web应用程序而提取特性之后以特性为基准检查Web应用程序是否易受攻击的方式执行。这种方法由于能够将恶意行为特性多样化为代码模式和使用权限模式等而适用,因此作为基础技术使用于各种研究。然而,存在每次出现新的恶意行为时必须生成基准数据且分析结果随基准数据而会不同的缺点。
第二种是动态分析方式,其为通过修改和操作平台和Web应用程序而掌握内部使用的数据的传播路径和泄漏与否的分析方法。该方法具有能够详细地掌握操作系统内部使用的数据和Web应用程序使用的数据的传播流的优点。然而,由于仅在与目的相符地执行的环境中能够进行分析,因此在出现新的平台版本的情况下或在进行方法简单的过滤的情况下,攻击字符串将其绕过而存在不能识别的问题,且为了检测能够绕过过滤的攻击字符串,需要进行额外的环境构成作业。通常,静态、动态方法论各自具有优缺点,因此根据目的而取舍选择使用两种分析方案。然而,所述两种方法均有同样的缺点,即用于分析的准备过程(基准数据建立、环境设定等)需要很长时间。另外,由于难以进行结果分析,因此存在分析过程需要很多时间之类的局限性。
发明内容
技术问题
旨在解决如上所述的问题的本发明的目的在于提供一种生成能够绕过预先设定的过滤逻辑的攻击字符串的方法及装置。
旨在解决如上所述的问题的本发明的另一目的在于提供一种分析基于攻击字符串的Web应用程序的执行状态的方法及装置。
解决问题的方案
旨在达到上述目的的根据本发明的一个实施例的分析Web应用程序(application)的执行状态的动态分析器的操作方法包括:从服务器接收包括最终攻击字符串的响应消息的步骤,其中,上述最终攻击字符串包括指示通过上述Web应用程序而执行的特定操作的参数(parameter);分析基于上述最终攻击字符串的上述Web应用程序的执行状态的步骤;以及基于对上述Web应用程序的执行状态的分析结果而判断上述最终攻击字符串是否由上述Web应用程序所过滤(filtering)的步骤,上述最终攻击字符串生成为规避设计成过滤包括预定义的参数的原始攻击字符串的过滤逻辑(logic)。
这里,上述动态分析器的操作方法能够进一步包括向上述服务器传输请求提供上述最终攻击字符串的请求消息的步骤,且接收上述响应消息而作为对于上述请求消息的响应。
这里,判断是否由上述Web应用程序所过滤的步骤,在由上述最终攻击字符串所指示的特定操作通过上述Web应用程序而执行的情况下,能够判断为上述最终攻击字符串并未由上述Web应用程序所过滤。
这里,判断是否由上述Web应用程序所过滤的步骤,在由上述最终攻击字符串所指示的特定操作并未通过上述Web应用程序而执行的情况下,能够判断为上述最终攻击字符串由上述Web应用程序所过滤。
这里,上述最终攻击字符串能够进一步包括统一资源定位符(uniform resourcelocator,URL)地址。
这里,通过上述Web应用程序而执行的特定操作能够包括分布式拒绝服务(distributed denial of service,DDoS)攻击操作、跨站点脚本钓鱼跨站点脚本钓鱼(XSS:Cross Site Scripting phishing)攻击操作、高级持续性威胁(advancedpersistent threat,APT)攻击操作、密码破解(password cracking)攻击操作、键盘记录(key logging)攻击操作、欺骗(spoofing)攻击操作以及rootkit攻击操作中的至少一个操作。
旨在达到上述目的的根据本发明的一个实施例的生成攻击字符串的服务器的操作方法包括:从静态分析器接收包括用于规避过滤逻辑(logic)的策略的第一响应消息(message)的步骤,其中,上述过滤逻辑(logic)设计成过滤(filtering)包括预定义的参数(parameter)的原始攻击字符串;生成最终攻击字符串以规避上述过滤逻辑的步骤,其中,上述最终攻击字符串包括指示通过Web应用程序而执行的特定操作的修改的参数;以及向动态分析器传输包括上述最终攻击字符串的第二响应消息的步骤。
这里,上述服务器的操作方法能够进一步包括将请求提供用于规避上述过滤逻辑的策略的第一请求消息向上述静态分析器传输的步骤,且接收上述第一响应消息而作为对于上述第一请求消息的响应。
这里,上述服务器的操作方法能够进一步包括从上述动态分析器接收请求提供上述最终攻击字符串的第二请求消息的步骤,且传输上述第二响应消息而作为对于上述第二请求消息的响应。
这里,上述第一响应消息能够进一步包括统一资源定位符(uniform resourcelocator,URL)地址和指示通过Web应用程序而执行的特定操作的原始参数。
这里,上述最终攻击字符串能够进一步包括统一资源定位符(uniform resourcelocator,URL)地址。
这里,通过上述Web应用程序而执行的特定操作能够包括分布式拒绝服务(distributed denial of service,DDoS)攻击操作、跨站点脚本钓鱼(XSS:Cross SiteScripting phishing)攻击操作、高级持续性威胁(advanced persistent threat,APT)攻击操作、密码破解(password cracking)攻击操作、键盘记录(key logging)攻击操作、欺骗(spoofing)攻击操作以及rootkit攻击操作中的至少一个操作。
旨在达到上述目的的根据本发明的一个实施例的生成最终攻击字符串的服务器(Server)包括:处理器(Processor);以及数据库,其存储有通过上述处理器而执行的至少一个指令,上述至少一个指令,从静态分析器接收包括用于规避过滤逻辑(logic)的策略的第一响应消息(message),其中,上述过滤逻辑(logic)设计成过滤(filtering)包括预定义的参数(parameter)的原始攻击字符串,生成最终攻击字符串以规避上述过滤逻辑,其中,上述最终攻击字符串包括指示通过Web应用程序而执行的特定操作的修改的参数,而且,能够以向动态分析器传输包括上述最终攻击字符串的第二响应消息的方式执行。
这里,上述至少一个指令,能够以将请求提供用于规避上述过滤逻辑的策略的第一请求消息向上述静态分析器传输的方式执行,且能够接收上述第一响应消息而作为对于上述第一请求消息的响应。
这里,上述第一响应消息能够进一步包括统一资源定位符(uniform resourcelocator,URL)地址和指示通过Web应用程序而执行的特定操作的原始参数。
这里,上述最终攻击字符串能够进一步包括统一资源定位符(uniform resourcelocator,URL)地址。
这里,通过上述Web应用程序而执行的特定操作能够包括分布式拒绝服务(distributed denial of service,DDoS)攻击操作、高级持续性威胁(advancedpersistent threat,APT)攻击操作、密码破解(password cracking)攻击操作、键盘记录(key logging)攻击操作、欺骗(spoofing)攻击操作以及rootkit攻击操作中的至少一个操作。
发明效果
根据本发明,能够生成能够绕过过滤逻辑的攻击字符串,且能够确认基于攻击字符串的Web应用程序的执行状态。因此,能够检测出在现有技术所检测不出的Web应用程序的安全漏洞。
附图说明
图1是简略地图示了根据本发明的一个实施例的分析基于攻击字符串的Web应用程序的执行状态的系统的框图。
图2是图示了根据本发明的一个实施例的构成分析基于攻击字符串的Web应用程序的执行状态的系统的节点的框图。
图3是图示了根据本发明的一个实施例的构成分析基于攻击字符串的Web应用程序的执行状态的系统的节点的操作的框图。
图4是图示了根据本发明的一个实施例的动态分析器的框图。
图5是图示了根据本发明的一个实施例的分析基于攻击字符串的Web应用程序的执行状态的方法的序列图。
图6是图示了根据本发明的一个实施例的执行静态分析的方法的流程图。
图7是图示了根据本发明的一个实施例的执行动态分析的方法的流程图。
具体实施方式
本发明能够实施多种变更且能够具有各种实施例,因而要在附图中例示各特定实施例并详细地进行说明。但这并不是要将本发明限定在特定的实施方式,而应当理解为包括落入本发明的思想以及技术范围的所有变更、等同物乃至替代物。
第一、第二等用语能够用于说明多种构成要素,但上述各构成要素不得由上述各用语所限定。上述各用语仅用于使一个构成要素区别于其它构成要素的目的。例如,在不逸出本发明的权利范围的情况下第一构成要素能够命名为第二构成要素,与此类似地、第二构成要素也能够命名为第一构成要素。所谓“和/或”的用语包括多个相关而记载的各项目的组合或多个相关而记载的各项目中的某一项目。
在提及到某一构成要素与另一构成要素“连接”或者“接触”的情况下,虽然能够与该另一构成要素直接连接或接触,但应当理解为在两者之间还能够存在其它构成要素。相反,在提及到某一构成要素与另一构成要素“直接连接”或者“直接接触”的情况下,应当理解为在两者之间并不存在其它构成要素。
本申请中所使用的用语只是为了说明特定的实施例而使用的,并无限定本发明的用意。单个的表达除非在文理上有明显不同的含义就包括多个的表达。在本申请中,“包括”或“具有”等用语旨在指定说明书中所记载的特征、数字、步骤、动作、构成要素、零部件或它们的组合存在,应当理解为并不是预先排除一个或其以上的其它各特征或者数字、步骤、动作、构成要素、零部件或它们的组合的存在或附加可能性。
除非另有定义,包括技术性或科学性用语在内这里所使用的全部用语具有与由本领域普通技术人员所通常理解的含义相同的含义。如通常使用的词典中所定义的用语应当解释为具有与相关技术的文理所具有的含义一致的含义,除非在本申请中明确地定义,否则不得理想地或过度地解释成形式上的含义。
以下,将参照各附图更详细地说明本发明的优选实施例。在说明本发明过程中,为了便于整体理解,对于附图中的相同的构成要素使用相同的参照标号,并对于相同的构成要素省略重复说明。以下,参照附图详细说明根据本发明的优选实施例。
图1是简略地图示了根据本发明的一个实施例的分析基于攻击字符串的Web应用程序的执行状态的系统的框图。
参照图1,能够包括分析基于攻击字符串的Web应用程序的执行状态的系统服务器(Server)100、静态分析器110、动态分析器120、安装有Web应用程序130的设备等。服务器100能够通过有线网络或无线网络而与静态分析器110和动态分析器120连接。例如,服务器100能够通过3GPP标准所规定的长期演进(long term evolution,LTE)、先进的长期演进(long term evolution-advanced,LTE-A)等而与静态分析器110和动态分析器120连接。或者,服务器100能够通过IEEE标准所规定的无线局域网(Wireless LAN,WLAN)、无线个域网(Wireless Personal Area Network,WPAN)等而与静态分析器110和动态分析器120连接。或者,服务器100能够通过有线局域网等而与静态分析器110和动态分析器120连接。
服务器100能够从静态分析器110和动态分析器120接收生成最终攻击字符串所需的信息,并基于所接收的信息而能够生成最终攻击字符串。静态分析器110和动态分析器120能够向服务器100传输软件开发所需的信息。
动态分析器120能够将最终攻击字符串生成而向安装有Web应用程序130的设备(device)传输。
图2是图示了根据本发明的一个实施例的构成分析基于攻击字符串的Web应用程序的执行状态的系统的节点的框图。
参照图2,节点200能够包括至少一个处理器(processor)210、存储器220以及与网络连接而执行通信的网络接口装置230。另外,节点200能够进一步包括输入接口装置240、输出接口装置250、存储装置260等。这里,节点200可以是参照图1而说明的服务器100、静态分析器110、动态分析器120等。包括于节点200的各个构成要素能够通过总线(bus)270连接而彼此执行通信。
处理器210能够执行存储于存储器220和/或存储装置260的程序指令(programcommand)。处理器210可以指代中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)或执行根据本发明的各方法的专用处理器。存储器220和存储装置260能够由易失性存储介质和/或非易失性存储介质构成。例如,存储器220能够由只读存储器(read only memory,ROM)和/或随机存取存储器(random access memory,RAM)构成。
另外,在各节点中,在说明了在第一节点执行的方法(例如,信号(或消息(message))的传输或接收)的情况下,与其对应的第二节点也能够执行与在第一节点执行的方法相应的方法(例如,信号(或消息)的接收或传输)。即、在说明了服务器100的操作的情况下,与其对应的静态分析器110和动态分析器120能够执行与服务器100的操作相应的操作。相反,在说明了静态分析器110和动态分析器120的操作的情况下,与其对应的服务器100能够执行与静态分析器110和动态分析器120的操作相应的操作。
图3是图示了根据本发明的一个实施例的构成分析基于攻击字符串的Web应用程序的执行状态的系统的节点的操作的框图。
参照图3,分析基于攻击字符串的Web应用程序的执行状态的系统能够包括服务器100、静态分析器110、动态分析器120、安装有Web应用程序130的设备等。
约束条件求解器102能够包括于服务器100。静态分析器110能够通过有线或无线通信方法而与存储有存在于Web上的Web应用程序的源代码310的Web服务器连接。源代码310也能够在Web应用程序130开发过程中利用。静态分析器110能够通过有线和无线通信方法而与服务器100连接。通过连接静态分析器110和服务器100的有线和无线通信方法,能够从静态分析器110向服务器100传输统一资源定位符(uniform resource locator,URL)地址320、参数字符串330、参数字符串约束条件340。参数字符串330可以指代使字符串转换为参数。另外,参数字符串330可以指代为了进行静态分析而使用的参数字符串。参数字符串约束条件340可以指代能够规避设计成过滤原始攻击字符串的过滤逻辑(FilteringLogic)的条件。
约束条件求解器102可以是存在于服务器100的处理器。动态分析器120通过有线和无线通信方法而能够与服务器100连接。通过连接动态分析器120和服务器100的有线和无线通信方法能够从服务器100向动态分析器120传输最终攻击字符串350。动态分析器120能够分析安装于设备的Web应用程序130的执行状态。
图4是图示了根据本发明的一个实施例的动态分析器的框图。
参照图4,动态分析器120能够包括测试用例(Test case)生成器121、自动执行器123、结果分析器124等。
动态分析器120能够接收最终攻击字符串350并将其利用于动态分析。自动执行器123能够通过有线和无线通信方法而与设备400连接。设备400安装所要确认的Web应用程序而能够支持动态分析。
测试用例生成器121根据测试目的而能够生成其它方式的测试用例122。
自动执行器123能够自动执行测试用例生成器121所执行的指令,且能够负责Web应用程序的安装和删除等。结果分析器124为了生成Excel文件而能够汇集各信息,且根据所要输出的格式而能够进行扩展和修改。
图5是图示了根据本发明的一个实施例的分析基于攻击字符串的Web应用程序的执行状态的方法的序列图。
参照图5,动态分析器120能够将请求最终攻击字符串的信号(或消息)传输至服务器100(S500),其中,最终攻击字符串包括指示通过Web应用程序而执行的特定操作的参数。若包括指示通过Web应用程序而执行的特定操作的参数的最终攻击字符串是原始攻击字符串,最终攻击字符串则能够绕过能够被过滤的过滤逻辑。
服务器100在接收了请求最终攻击字符串的信号(或消息)的情况下,能够向静态分析器110传输请求URL地址、参数字符串、参数字符串约束条件的信号(或消息)(S510)。
URL地址可以指代为了访问因特网而利用的因特网地址,参数能够指示通过Web应用程序而执行的特定操作。参数字符串可以指代参数转换为字符串。参数字符串约束条件可以指代能够规避设计成过滤原始攻击字符串的过滤逻辑的条件。
动态分析器120基于意味着一般攻击字符串的原始攻击字符串而能够执行动态分析。就原始攻击字符串而言,由于通常在参数字符串有规则,因此在进行简单的过滤(例如,置换参数字符串的前后或重复记载字符等行为)的情况下能够容易地规避原始攻击字符串的攻击。
接收了请求URL地址、参数字符串、参数字符串约束条件的信号(或消息)的静态分析器110获取Web应用程序源代码,并从所获取的Web应用程序源代码分析特征而能够执行静态分析(S520)。
静态分析能够如下执行。
图6是图示了根据本发明的一个实施例的执行静态分析的方法的流程图。
参照图6,就静态分析器110的操作而言,能够从服务器100接收请求URL地址、参数字符串以及参数字符串的约束条件的信号(或消息)(S521)。静态分析器110能够分析多个Web应用程序的源代码的特征。
静态分析器110能够从一个或多个Web应用程序的源代码分析特征并确认源代码而执行静态分析。静态分析器110通过所执行的静态分析而能够生成静态分析信息(S522)。
执行Web应用程序的执行服务器端代码通常会具有用于规避原始攻击字符串的过滤逻辑。静态分析器110分析过滤逻辑而能够确认通过何种方法生成了过滤逻辑。静态分析器110在分析并确认过滤逻辑的步骤,静态分析器110能够获取包括了URL地址、参数字符串以及过滤逻辑的参数字符串的约束条件(S523)。静态分析器110能够向服务器100传输通过静态分析而获取的URL地址、参数字符串以及参数字符串的约束条件(S524)。
重新参照图5,静态分析器110能够将通过静态分析而获取的URL地址、参数字符串、参数字符串约束条件传输至服务器100(S530)。
静态分析器110在从动态分析器120接收请求最终攻击字符串的信号的情况下,还能够将通过静态分析而预先获取的URL地址、参数字符串、参数字符串约束条件传输至服务器100,其中,最终攻击字符串包括指示通过Web应用程序而执行的特定操作的参数。
服务器100能够接收URL地址、参数字符串、参数字符串约束条件。服务器100利用反映约束条件而生成最终攻击字符串的约束条件求解器能够生成最终攻击字符串(S540)。
原始攻击字符串能够由URL地址和原始参数构成,最终攻击字符串能够由URL地址和修改的参数构成。原始攻击字符串可以指代任意攻击字符串。服务器100的约束条件求解器基于URL地址、参数字符串以及参数字符串的约束条件而能够生成能够绕过设计成过滤原始攻击字符串的过滤逻辑的最终攻击字符串。
服务器100能够向动态分析器120传输通过服务器100的约束条件求解器而生成的最终攻击字符串(S550)。动态分析器120能够从服务器100接收最终攻击字符串。接收了最终攻击字符串的动态分析器120能够向所要进行动态分析的安装有Web应用程序的设备400传输最终攻击字符串(S560)。
动态分析器120对于所要进行动态分析的安装有Web应用程序的设备400执行特定操作而能够进行动态分析。通过Web应用程序而执行的特定操作能够包括分布式拒绝服务(distributed denial of service,DDoS)攻击操作、高级持续性威胁(advancedpersistent threat,APT)攻击操作、密码破解(password cracking)攻击操作、键盘记录(key logging)攻击操作、欺骗(spoofing)攻击操作以及rootkit攻击操作中的至少一个操作。
设备400能够示出基于最终攻击字符串的Web应用程序的执行状态。动态分析器120能够监控设备400所示出的基于最终攻击字符串的Web应用程序的执行状态(S570)。动态分析器120能够从设备400接收基于最终攻击字符串的操作。动态分析器120根据从设备400接收的基于最终攻击字符串的操作而能够执行动态分析(S580)。动态分析方法可以如下。
图7是图示了根据本发明的一个实施例的执行动态分析的方法的流程图。
参照图7,测试用例生成器能够生成测试用例(test case)(S581)。
结果分析器向Web应用程序输入文本数据而能够分析Web应用程序的漏洞所在(S582)。文本数据可以指代向URL地址输入参数值。参数值可以是通过静态分析反映约束条件而生成的最终攻击字符串。
分析结果,在通过最终攻击字符串而指示的特定操作通过Web应用程序而执行的情况下,能够判断为最终攻击字符串并未由Web应用程序所过滤。分析结果,在通过最终攻击字符串而指示的特定操作并未通过Web应用程序而执行的情况下,能够判断为最终攻击字符串由Web应用程序所过滤。
通过Web应用程序而执行的特定操作能够包括分布式拒绝服务(distributeddenial of service,DDoS)攻击操作、高级持续性威胁(advanced persistent threat,APT)攻击操作、密码破解(password cracking)攻击操作、键盘记录(key logging)攻击操作、欺骗(spoofing)攻击操作以及rootkit攻击操作中的至少一个操作。
根据本发明的各种方法能够以通过各种计算机设备而能够执行的程序指令形式具体实现而记录在计算机可读介质上。计算机可读介质能够将程序指令、数据文件、数据结构等单独或组合而包括。记录在计算机可读介质上的程序指令可以是为了本发明而专门设计并构成的程序指令,或者,还可以是公知于计算机软件领域的技术人员而能够使用的程序指令。
计算机可读介质的例子中包括如只读存储器(rom)、随机存取存储器(ram)、闪存(flash memory)等那样专门构成为存储并执行程序指令的硬件设备。程序指令的例子中不仅包括如通过编译器(compiler)而生成的机械语言代码,还包括使用解释器(interpreter)等并通过计算机而能够执行的高级语言代码。就上述的硬件设备而言,能够构成为以至少一个软件模块来工作以执行本发明的操作,反之亦然。
以上虽然参照实施例进行了说明,但本领域技术人员能够理解在不逸出所附的权利要求书中所记载的本发明的思想及领域的范围内对本发明能够进行各种修改及变更。
Claims (9)
1.一种生成攻击字符串的方法,包括:使用动态分析器来分析Web应用程序的执行状态,其特征在于,所述动态分析器的操作方法包括:
向服务器发送请求最终攻击字符串的信号或消息,并接收响应消息;
从服务器接收包括具有预定参数的最终攻击字符串的响应消息,该预定参数指示将通过网络应用程序执行的特定操作;
分析基于上述最终攻击字符串的上述Web应用程序的执行状态的步骤;以及,
基于对上述Web应用程序的执行状态的分析结果而判断上述最终攻击字符串是否由上述Web应用程序所过滤的步骤,
其中,最终攻击字符串是由服务器基于静态分析器使用Web应用程序的源代码生成的静态分析信息生成的,以及
其中,静态分析信息包括被设计为过滤出包括预定参数的原始攻击串的过滤逻辑的信息。
2.根据权利要求1所述的方法,其特征在于,
基于静态分析器的静态分析信息生成最终攻击字符串,该静态分析器通过响应于从服务器接收到的信号或消息,分析来自Web应用程序源代码的特征来执行静态分析,以及
其中,最终攻击字符串进一步包括统一资源定位符地址。
3.根据权利要求1所述的方法,其特征在于,
通过上述Web应用程序而执行的特定操作包括分布式拒绝服务攻击操作、跨站点脚本钓鱼攻击操作、跨站点脚本钓鱼高级持续性威胁攻击操作、密码破解攻击操作、键盘记录攻击操作、欺骗攻击操作以及rootkit攻击操作中的至少一个操作。
4.一种生成攻击字符串的方法,应用于生成最终攻击字符串的服务器,用于分析Web应用程序的执行状态,其特征在于,所述服务器的操作方法包括:
向静态分析器发送信号或第一请求,请求提供避免过滤逻辑的策略,其中,响应于接收信号或第一请求消息而收到第一响应消息;
从静态分析器接收静态分析信息的第一响应消息以避免过滤逻辑,该过滤逻辑被设计为基于Web应用的源代码过滤出包括预定参数的原始攻击字符串;
生成包括修改后的参数的最终攻击字符串,该修改后的参数指示要通过Web应用程序执行的特定操作,以使该最终攻击字符串避免过滤逻辑;
接收要求从动态分析器提供最终攻击字符串的第二请求消息,其中,响应第二请求消息,传送第二响应消息;和
将包括最终攻击字符串的第二响应消息传送到动态分析器。
5.根据权利要求4所述的操作方法,其特征在于,
第一响应消息包括统一资源定位符地址和指示通过Web应用程序而执行的特定操作的原始参数,或者最后攻击字符串进一步包括一个URL地址。
6.根据权利要求4所述的操作方法,其特征在于,
通过上述Web应用程序而执行的特定操作包括分布式拒绝服务攻击操作、跨站点脚本钓鱼攻击操作、高级持续性威胁攻击操作、密码破解攻击操作、键盘记录攻击操作、欺骗攻击操作以及rootkit攻击操作中的至少一个操作。
7.一种服务器,其生成最终攻击字符串,所述服务器的特征在于,包括:
处理器;以及,
数据库,其存储有通过上述处理器而执行的至少一个指令,
上述至少一个指令,
向静态分析器发送请求提供避免过滤逻辑的策略的信号或第一请求消息,其中响应于第一请求消息而收到第一响应消息;
接收包括过滤逻辑的第一响应消息,该过滤逻辑被设计为基于网络应用的源代码从静态分析器中过滤出包括预定参数的原始攻击字符串;
生成包括修改后的参数的最终攻击字符串,该修改后的参数指示要通过Web应用程序执行的特定操作,以使该最终攻击字符串避免过滤逻辑;
接收要求从动态分析器提供最终攻击字符串的第二请求消息,其中,响应第二请求消息,传送第二响应消息;
并将包括最终攻击字符串的第二响应消息发送到动态分析器。
8.根据权利要求7所述的服务器,其特征在于,
第一响应消息包括统一资源定位符地址和指示通过Web应用程序而执行的特定操作的原始参数。
9.根据权利要求7所述的服务器,其特征在于,
通过上述Web应用程序而执行的特定操作包括分布式拒绝服务攻击操作、跨站点脚本钓鱼攻击操作跨站点脚本钓鱼、高级持续性威胁攻击操作、密码破解攻击操作、键盘记录攻击操作、欺骗攻击操作以及rootkit攻击操作中的至少一个操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160091242A KR101885615B1 (ko) | 2016-07-19 | 2016-07-19 | 공격 문자열 생성 방법 및 장치 |
KR10-2016-0091242 | 2016-07-19 | ||
PCT/KR2016/008263 WO2018016669A2 (ko) | 2016-07-19 | 2016-07-28 | 공격 문자열 생성 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109565499A CN109565499A (zh) | 2019-04-02 |
CN109565499B true CN109565499B (zh) | 2022-03-25 |
Family
ID=60993127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680087790.9A Active CN109565499B (zh) | 2016-07-19 | 2016-07-28 | 攻击字符串生成方法及装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11496502B2 (zh) |
JP (1) | JP6785360B2 (zh) |
KR (1) | KR101885615B1 (zh) |
CN (1) | CN109565499B (zh) |
WO (1) | WO2018016669A2 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102231726B1 (ko) * | 2019-03-28 | 2021-03-25 | 네이버클라우드 주식회사 | 취약점 진단방법 및 이를 위한 진단장치 |
CN112507347B (zh) * | 2020-10-27 | 2022-06-24 | 中国科学院信息工程研究所 | 面向分布式密码破解框架的破解作业描述信息生成方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883024A (zh) * | 2010-06-23 | 2010-11-10 | 南京大学 | 一种跨站点伪造请求的动态检测方法 |
CN102136051A (zh) * | 2011-05-06 | 2011-07-27 | 南开大学 | 一种应用SGM-SQL注入模型驱动web应用渗透测试的方法 |
CN102917360A (zh) * | 2012-10-24 | 2013-02-06 | 北京邮电大学 | 一种Zigbee协议漏洞的检测装置及方法 |
CN104683328A (zh) * | 2015-01-29 | 2015-06-03 | 兴华永恒(北京)科技有限责任公司 | 一种跨站漏洞扫描方法及系统 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070261124A1 (en) * | 2006-05-03 | 2007-11-08 | International Business Machines Corporation | Method and system for run-time dynamic and interactive identification of software authorization requirements and privileged code locations, and for validation of other software program analysis results |
KR100894331B1 (ko) | 2006-11-15 | 2009-04-24 | 한국전자통신연구원 | 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의침입 탐지 시스템 및 방법 |
US8656495B2 (en) * | 2006-11-17 | 2014-02-18 | Hewlett-Packard Development Company, L.P. | Web application assessment based on intelligent generation of attack strings |
US8726394B2 (en) * | 2009-12-15 | 2014-05-13 | Seeker Security Ltd. | Method and system of runtime analysis |
JP5425699B2 (ja) | 2010-04-30 | 2014-02-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、テストケース生成方法、プログラムおよび記録媒体 |
US8949992B2 (en) * | 2011-05-31 | 2015-02-03 | International Business Machines Corporation | Detecting persistent vulnerabilities in web applications |
US9032528B2 (en) * | 2011-06-28 | 2015-05-12 | International Business Machines Corporation | Black-box testing of web applications with client-side code evaluation |
US9083736B2 (en) * | 2013-01-28 | 2015-07-14 | Hewlett-Packard Development Company, L.P. | Monitoring and mitigating client-side exploitation of application flaws |
US9507943B1 (en) * | 2013-02-19 | 2016-11-29 | Amazon Technologies, Inc. | Analysis tool for data security |
US10515214B1 (en) * | 2013-09-30 | 2019-12-24 | Fireeye, Inc. | System and method for classifying malware within content created during analysis of a specimen |
US9363284B2 (en) * | 2013-12-11 | 2016-06-07 | International Business Machines Corporation | Testing web applications for security vulnerabilities with metarequests |
EP3224984A4 (en) * | 2014-11-26 | 2018-08-08 | EntIT Software LLC | Determine vulnerability using runtime agent and network sniffer |
US10033747B1 (en) * | 2015-09-29 | 2018-07-24 | Fireeye, Inc. | System and method for detecting interpreter-based exploit attacks |
US10176325B1 (en) * | 2016-06-21 | 2019-01-08 | Symantec Corporation | System and method for dynamic detection of command and control malware |
-
2016
- 2016-07-19 KR KR1020160091242A patent/KR101885615B1/ko active IP Right Grant
- 2016-07-28 WO PCT/KR2016/008263 patent/WO2018016669A2/ko active Application Filing
- 2016-07-28 US US16/318,476 patent/US11496502B2/en active Active
- 2016-07-28 JP JP2019503340A patent/JP6785360B2/ja active Active
- 2016-07-28 CN CN201680087790.9A patent/CN109565499B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883024A (zh) * | 2010-06-23 | 2010-11-10 | 南京大学 | 一种跨站点伪造请求的动态检测方法 |
CN102136051A (zh) * | 2011-05-06 | 2011-07-27 | 南开大学 | 一种应用SGM-SQL注入模型驱动web应用渗透测试的方法 |
CN102917360A (zh) * | 2012-10-24 | 2013-02-06 | 北京邮电大学 | 一种Zigbee协议漏洞的检测装置及方法 |
CN104683328A (zh) * | 2015-01-29 | 2015-06-03 | 兴华永恒(北京)科技有限责任公司 | 一种跨站漏洞扫描方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
KR20180009510A (ko) | 2018-01-29 |
US11496502B2 (en) | 2022-11-08 |
CN109565499A (zh) | 2019-04-02 |
JP6785360B2 (ja) | 2020-11-18 |
US20190297107A1 (en) | 2019-09-26 |
JP2019521456A (ja) | 2019-07-25 |
WO2018016669A3 (ko) | 2018-03-08 |
KR101885615B1 (ko) | 2018-08-06 |
WO2018016669A2 (ko) | 2018-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2966408C (en) | A system and method for network intrusion detection of covert channels based on off-line network traffic | |
KR101001132B1 (ko) | 웹 어플리케이션의 취약성 판단 방법 및 시스템 | |
Li et al. | Security issues in OAuth 2.0 SSO implementations | |
RU2446459C1 (ru) | Система и способ проверки веб-ресурсов на наличие вредоносных компонент | |
US9356937B2 (en) | Disambiguating conflicting content filter rules | |
CN110209583B (zh) | 安全测试方法、装置、系统、设备和存储介质 | |
Stasinopoulos et al. | Commix: automating evaluation and exploitation of command injection vulnerabilities in Web applications | |
US20070136809A1 (en) | Apparatus and method for blocking attack against Web application | |
JP2017021778A (ja) | 変更されたウェブページを判定するためのシステム及び方法 | |
US8904492B2 (en) | Method of controlling information processing system, computer-readable recording medium storing program for controlling apparatus | |
KR101902747B1 (ko) | 클라이언트 측 웹 취약점 분석 방법 및 장치 | |
Falkenberg et al. | A new approach towards DoS penetration testing on web services | |
Salazar et al. | 5greplay: A 5g network traffic fuzzer-application to attack injection | |
Antrobus et al. | The forgotten I in IIoT: A vulnerability scanner for industrial Internet of Things | |
CN109565499B (zh) | 攻击字符串生成方法及装置 | |
KR101452299B1 (ko) | 무결성이 보장되는 프로그램 코드를 이용한 보안 방법 및 서버 | |
KR101372906B1 (ko) | 악성코드를 차단하기 위한 방법 및 시스템 | |
US10757118B2 (en) | Method of aiding the detection of infection of a terminal by malware | |
CN108259416A (zh) | 检测恶意网页的方法及相关设备 | |
US20220329567A1 (en) | User interface for web server risk awareness | |
JP2008262311A (ja) | セキュリティ検査用モデル生成プログラム,装置,およびセキュリティ検査用モデル検査装置 | |
US20190347407A1 (en) | Detecting client-side exploits in web applications | |
Ponomarev | Intrusion Detection System of industrial control networks using network telemetry | |
KR20210076455A (ko) | Xss 공격 검증 자동화 방법 및 그 장치 | |
KR20100124441A (ko) | 컨텐츠 검사 장치와 악성 코드 관제 장치 및 이를 이용한 컨텐츠 검사 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |