CN103562927A - 自动化安全测试 - Google Patents

自动化安全测试 Download PDF

Info

Publication number
CN103562927A
CN103562927A CN201180071246.2A CN201180071246A CN103562927A CN 103562927 A CN103562927 A CN 103562927A CN 201180071246 A CN201180071246 A CN 201180071246A CN 103562927 A CN103562927 A CN 103562927A
Authority
CN
China
Prior art keywords
web
leak
response
recording
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
CN201180071246.2A
Other languages
English (en)
Other versions
CN103562927B (zh
Inventor
S.M.辛普森
P.E.哈默
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.)
Weifosi Co., Ltd
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN103562927A publication Critical patent/CN103562927A/zh
Application granted granted Critical
Publication of CN103562927B publication Critical patent/CN103562927B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/10Monitoring; Testing of transmitters
    • H04B17/15Performance testing
    • H04B17/17Detection of non-compliance or faulty performance, e.g. response deviations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/10Monitoring; Testing of transmitters
    • H04B17/101Monitoring; Testing of transmitters for measurement of specific parameters of the transmitter or components thereof
    • H04B17/102Power radiated at antenna
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/30Monitoring; Testing of propagation channels
    • H04B17/309Measuring or estimating channel quality parameters
    • H04B17/318Received signal strength
    • 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/1433Vulnerability analysis
    • 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/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/04Arrangements for maintaining operational condition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/08Access point devices

Landscapes

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

Abstract

一种自动化安全测试的方法包括记录宏。播放所记录的宏并且当播放宏时拦截web请求。web请求可以被攻击以及被发送到web服务器。接收基于web请求的来自web服务器的响应,并且处理web服务器的响应以确定任何漏洞。

Description

自动化安全测试
背景技术
 许多事务保持在线存在并且使用web(网络)来进行许多它们的商业和事务运营。通常,事务加入已知为web 2.0的可以涉及跨web信息共享的web的各方面,其中web被视为用于以用户为中心的设计的平台。具有安全网页是确保事务保持其在线数据的完整性并且继续在web和web 2.0上合适地运行的一种技术。因此,经常性地验证网页安全。
人工渗透测试是一种安全验证的技术。在人工渗透测试中,在网页上模拟来自恶意源的攻击。攻击通常包括将恶意代码插入到与网页的通信中。用户可以关于通过攻击而已被暴露的漏洞来人工地分析网站。然而,许多网页很大并且很广泛,因此在人工分析期间漏洞会被遗漏。另外,网站管理员可能未察觉存在于贯穿网络的各种网页上的一些应用,并且与那些应用有关的漏洞也可能被遗漏。进一步地,事务过程能够很难测试,并且源代码可能不完全被人工攻击所涵盖而允许更多的被遗漏的漏洞。
可替代地,传输层攻击机制可以被用来对漏洞进行测试。通过将包括攻击代码的各种参数封闭在web请求内可以创建传输层攻击。请求可以被发送到服务器以供处理。当存在此类漏洞时,如果服务器以预期的方式对请求进行响应,那么基于攻击可以找到漏洞。
爬行(crawl)和审查(audit)技术也可以被用来发现漏洞,并且通常通过对导致向服务器的请求以及来自服务器的响应的每个链接静态地起作用而被使用。另外地,爬行和审查技术在没有用户交互或web浏览器的帮助的情况下被自动地执行。不记录用户业务,因此对于访问web 2.0应用而言没有认证数据是可用的。
附图说明
在以下详细描述中并且参考附图描述了某些示例性实施例,其中:
图1是示出根据本技术的实施例的用于自动化安全测试的计算机执行方法的过程流程图。
图2是示出根据本技术的实施例的用于自动化安全测试的计算机执行方法的过程流程图。
图3是根据本技术的实施例的可以提供自动化安全测试的系统的框图。
图4是示出根据本技术的实施例的存储用于自动化安全测试的代码的非临时计算机可读介质的框图。
具体实施方式
通过记录与web浏览器的用户交互,本技术的实施例可以自动地检测网页安全漏洞。而且,本技术的实施例可以创建能够在web浏览器上被记录和播放的宏(macro),并且将攻击注入到由宏所播放的事件中。宏的回放可以被用来在对网站的完全自动化漏洞扫描期间发现新漏洞。进一步地,本技术的实施例可以自动地登录到网页并且使用包含与web浏览器的用户交互的所记录的宏的回放来保持各种网页的状态。在回放所记录的宏期间可以做出web请求,以便发现新链接、在web应用中找到攻击点、进行攻击、以及发现漏洞。
图1是示出根据实施例的用于自动化安全测试的计算机执行方法100的过程流程图。在块102处记录了宏。如本文所使用的,宏是可以被回放以重复动作或输入的一系列动作或输入的软件记录。宏可以包括网页的元素的操作、元素的属性的修改、对于文档对象模型(DOM)中的元素的位置的改变、以及元素的任何同级(sibling)。元素还可以基于由与web浏览器的用户交互所引起的事件。作为结果,宏可以记录用户与web浏览器的交互。用户能够以与如由用户所选择的要被记录的事务过程对应的诸如登录到网页中或查看简档信息之类的任何方式来与web浏览器交互。事件句柄(handler)也可以被用来记录宏。
用户还可以选择诸如指示登入状态或登出状态的元素之类的网页的元素来记录。例如,在网页上说出“登录”的按钮可以指示登出状态。进一步地,用户能够定义要被包括在宏中并且被用于由网页为了认证目的而呈现的动态安全问题的一组问题和答案。还可以记录动态安全问题的位置。例如,银行网站能够向用户提示作为部分“深入安全(security-in-depth)”方法的对于诸如“你的猫的最喜欢的球是什么?”之类的一系列预配置问题的答案。当用户将该组问题和答案定义成包括在宏中时,在漏洞扫描期间可以克服这些问题。
如本文所述,当用户发起浏览器内的动作时,可以记录元素属性、以及诸如元素的同级和元素是否是表单的部分之类的关于DOM的其他有关信息,其中元素存在于DOM中。即使DOM的布局不同,通过以该方式记录关于每个元素的信息也可以在随后的对DOM的改变中找到相同的元素。一般地,DOM是用于HTML和XML文档的应用编程接口。DOM可以定义网站的HTML和XML文档的逻辑结构并且控制文档被访问和操纵的方式。网页的DOM结构在与web 2.0应用的用户交互期间可以改变,因而逻辑地或结构地改变DOM内的元素。
当在记录宏时DOM结构改变时,使用扫描引擎可以找到DOM内的元素。初始地,扫描引擎基于诸如标签名称、元素ID、和元素名称之类的信息可以找到DOM内的元素。如果对于DOM搜索的元素的初始搜索未找到与所搜索的元素具有相同的标签名称的在DOM中相同位置处的元素,那么基于所记录元素的确切位置或基于其相对于DOM中其他元素的位置可以找到它。当与web 2.0应用交互时,在寻找DOM内的元素的方面的该灵活性允许在发生对DOM的动态改变时发现漏洞。
在块104处播放了所记录的宏。播放宏可以被用来验证捕获了正确的步骤以及在回放期间达到了期望的浏览器状态。宏可以被初始地播放来建立状态以及用被宏访问过的统一资源定位符(URL)来填充爬行。爬行可以被用来向审查引擎提供如以下所描述的可以执行攻击的攻击表面。进一步地,审查引擎可以是扫描引擎的部分。
在初始宏回放之后,可以关于指示在随后的宏回放期间被记录在宏中的登出状态的元素来检查网页。如果找到这些元素,那么可以暂停宏回放并且可以重新播放宏以便重新建立登入状态因而能够执行实用分析。在登出状态中可以严格地限制分析,并且如果回放停留在登出状态中那么关键漏洞可能不会被发现。
在块106处,在宏回放期间所做的web请求被代理服务器拦截。代理服务器可以被配置成在回放web浏览器内的宏期间拦截来自web浏览器的业务。进一步地,代理服务器可以将web请求提供到审查引擎。在块108处攻击web请求。攻击可以由审查引擎来执行。攻击web请求可以包括将恶意代码注入到请求中,从而试图在web请求中利用不被用户意图使用的一些功能。另外地,在回放宏期间可以攻击web请求。在跨站脚本处理的情况中,跨站脚本处理负荷可以被注入到web请求中。
在块110处,web请求被发送到web服务器。在web请求被拦截并被发送到代理服务器之前,web服务器可以是它的原始目的地。在块112处,接收基于web请求的来自web服务器的响应。在块114处,处理web服务器的响应以确定任何漏洞。对于所做的每个攻击,存在关于什么构成漏洞的对应规则。通常地,该规则是能够由审查引擎在响应文本上运行的正则表达式。如果满足规则,那么在该网页处存在漏洞。复杂的审查引擎能够具有与它们关联的状态,以使得响应的处理可以依赖于过去攻击的成功。
图2是示出根据实施例的用于处理web服务器响应来确定任何漏洞的计算机执行方法200的过程流程图。当浏览器代替审查引擎来处理响应时可以揭示一些漏洞。在块202处,可以在web浏览器内执行响应中的脚本。在块204处,若干DOM方法可以被挂钩(hooked)、或被链接到当执行DOM方法时可以被执行的应用代码。在该场景中,通过将响应传递到浏览器并且将若干DOM方法挂钩到在响应的脚本执行期间可以被调用的应用代码,可以检测漏洞。在块206处,如由应用代码执行所指出的,基于在脚本执行期间被调用的特定DOM方法可以确定漏洞。
本技术可以被用来检测跨站脚本处理漏洞。例如,考虑允许用户编辑和查看他的简档信息的异步JavaScript和XML(AJAX)驱动的网站。当用户点击“编辑”按钮时可以触发简档信息的编辑,其具有JavaScript事件句柄。一旦被编辑,“保存”按钮就能够将AJAX请求发送到web服务器以供存储。此外,可以点击“查看”按钮来显示该简档信息。当点击查看按钮时,发送第二个AJAX请求来从服务器检索简档数据的JavaScript可以被执行,并且该数据能够被转变成DOM元素并且在浏览器中被渲染。编辑、保存、和查看按钮中的每个可以是AJAX驱动页的元素。
当点击按钮时可以触发JavaScript事件或者在POST发生之前修改用户名和密码值的JavaScript。POST是web请求,例如当将表单数据提交到服务器时,所述POST作为请求的部分而被客户端使用以向服务器发送数据。当为每个表单生成随机命名隐藏表单输入时,可以发生输入清理(sanitization),并且服务器检查在web请求中参数的存在。一般地,输入清理包括在输入被发送到web服务器之前在客户端上验证诸如表单数据和信息记录程序(cookies)之类的用户输入。输入清理技术可以被用来防止跨站请求伪造(CSRF),并且因为重放相同序列的请求将不认证用户,所以会使得由自动化引擎的重放web请求变得很难。此外,为了攻击这些复杂应用,诸如SQL注入或跨站脚本处理之类的用户的状态应该在每个被注入的攻击之前是已知的。
如果简档信息在没有输入清理的情况下被转变成DOM元素,那么可以存在跨站脚本处理漏洞。因此,跨站脚本处理漏洞通常在web应用中找到,其使得攻击者能够将客户端脚本注入到由其他用户查看的网页中。为了检查该漏洞,使用web浏览器来模拟漏洞可能发生的状况,可以以特定序列来重复当用户与浏览器交互时发生的DOM事件。DOM事件可以被严密监视以准确地检测攻击的负荷的执行。
如在块102(图1)处所描述的,为了记录可以导致跨站脚本处理漏洞的客户端事件,可以通过将事件句柄“挂钩”到当前渲染的网页的DOM以及将改变事件句柄“挂钩”到DOM的基础这二者来记录宏。元素可以激发一系列事件,从而允许一连串事件句柄被“挂钩”到所述元素,以使得无论何时特定事件被激发都调用所述事件句柄。
对于web浏览器或扫描引擎无论何时检测到与网页的用户交互,事件句柄都可以发送通知。基于由与web浏览器的用户交互所引起的事件的一系列元素可以被记录并且然后被任意播放以模拟与web浏览器的用户交互。宏可以包括满足安全验证要求的问题和答案以及成功认证该回放会话的其他信息。
如在块104(图1)处所描述的,扫描引擎可以呈现被编程以播放所记录的宏的web浏览器的实例。因为web浏览器在宏回放期间导航,使用扫描引擎可以操纵DOM并且在记录期间用户与之交互的相同元素被操纵。例如,在回放期间保存、编辑、查看、点击、导航、设值元素能够被操纵,正如对于实际用户交互而言它们被操纵一样。另外地,客户端JavaScript可以运行,正如对于用户交互而言它们运行一样。
如在块106(图1)处所描述的,代理服务器可以被配置成当发生宏的回放时拦截来自web浏览器的业务,并且当播放宏时可以拦截web请求。如在块108(图1)处所描述的,当正在进行宏的回放时使用代理服务器可以攻击web请求。依赖于攻击的类型,可以停止回放。如在块110和112(图1)处所描述的,web服务器对从代理服务器被发送到它的被攻击的web请求进行响应。依赖于审查引擎处理攻击的类型,行为在该点处分歧。如在块114(图1)处所描述的,审查引擎能够处理web服务器响应并且确定漏洞是否存在。宏的回放可以继续进行直到它完成,关于漏洞指示而检查每个新响应。
如在块202(图2)处所描述的,当检测到跨站脚本处理漏洞时,web浏览器执行在攻击中被发送的脚本。在该场景中,漏洞在客户端脚本中发生并且可以不把数据发送到web服务器。因此,当攻击这些web请求时,web浏览器DOM的状态是重要的。如以上所讨论的,web浏览器DOM可以定义网站的HTML和XML文档的逻辑结构并且控制文档被访问和操纵的方式。如在块204(图2)处所描述的,web浏览器DOM可以被挂钩到应用代码,并且应用代码可以提供被调用的DOM方法的通知。例如,被链接到DOM方法的应用代码可以是在攻击中被发送的跨站脚本处理负荷。作为结果,如在块206(图2)处所描述的,当web浏览器调用预期在漏洞存在时被调用的特定DOM方法时,可以确定漏洞。当漏洞出现时可以发生所述漏洞的通知。作为结果,在纯传输层攻击中可能不是可访问的漏洞是可访问的。
图3是根据本技术的实施例的可以提供自动化安全测试的系统的框图。通过附图标记300来一般地指代该系统。本领域的一般技术人员将领会的是,在图3中所示出的功能块和设备可以包含包括电路的硬件元素、包括在有形、机器可读介质上存储的计算机代码的软件元素、或者硬件和软件元素这二者的组合。另外地,系统300的功能块和设备仅是可以在一个实施例中实现的功能块和设备的一个示例。基于关于特定电子设备的设计考虑,本领域的一般技术人员将容易能够定义特定功能块。
系统300可以包括被连接到网络306的测试计算机302。如在图3中所图示的,测试计算机302可以包括可以通过总线308而连接到显示器310、键盘312、一个或多个输入设备314、以及诸如打印机316之类的输出设备的一个或多个处理器306。输入设备314可以包括诸如鼠标或触摸屏之类的设备。在云计算架构中处理器306可以包括单核、多核、或一群核。测试计算机302还可以通过总线308而被连接到网络接口卡(NIC)318。NIC 318可以将测试计算机302连接到网络304。
网络304可以是局域网(LAN)、广域网(WAN)、或另外的网络配置。网络304可以包括路由器、交换机、调制解调器、或用于互连的任何其他种类的接口设备。网络304可以连接到web服务器320。尽管未被示出,但是web服务器320可以通过网络306连接到各种其他计算机。
测试计算机302可以通过总线308而使其他单元操作地耦合到处理器306,诸如本地代理服务器322。通过总线308而被操作地耦合到处理器306的其他单元可以包括诸如存储器324之类的有形机器可读存储介质、基于事件的记录器模块326、扫描引擎328、以及审查引擎330。存储器324可以包括硬盘驱动器、只读存储器(ROM)、随机访问存储器(RAM)、RAM驱动器、闪盘驱动器、光学驱动器、高速缓存存储器等等的任何组合。尽管代理服务器322、基于事件的记录器模块326、扫描引擎328、以及审查引擎330被示出存在于测试计算机302上,但是本领域中的一般技术人员将领会的是这些单元可以存在于测试计算机302上或者被存在于连接到测试计算机302的任何其他计算机上。
图4是示出根据本技术的实施例的存储用于自动化安全测试的代码的非临时计算机可读介质的框图。通过附图标记400来一般地指代非临时计算机可读介质。
非临时计算机可读介质400可以与存储诸如编程代码等之类的计算机实现指令的任何典型存储设备相对应。例如,非临时计算机可读介质400可以包括非易失性存储器、易失性存储器、和/或一个或多个存储设备中的一个或多个。
非易失性存储器的示例包括但不限于电可擦除可编程只读存储器(EEPROM)和只读存储器(ROM)。易失性存储器的示例包括但不限于静态随机访问存储器(SRAM)、和动态随机访问存储器(DRAM)。存储设备的示例包括但不限于硬盘、光盘驱动器、数字多功能盘驱动器、和闪存设备。
通常处理器402检索和执行存储在非临时计算机可读介质400上的计算机实现指令以供自动化安全测试。在块404处,当被执行时记录模块使得处理器记录宏。宏可以包括网页的各种元素并且当用户与网页交互时被记录。在块406处,当被执行时播放模块使得处理器播放宏。可以在web浏览器中播放宏。在块408处,当被执行时拦截模块使得处理器拦截来自宏回放的web请求。在宏回放期间可以拦截web请求。在块410处,当被执行时攻击模块使得处理器攻击web请求。可以通过将恶意代码注入到web请求中而攻击web请求。在块412处,当被执行时响应模块使得处理器通过处理针对web攻击的web服务器的响应来确定漏洞。当在web浏览器内执行响应中的脚本时,通过由脚本执行所调用的特定DOM方法也可以确定漏洞,并且DOM方法被挂钩到应用代码。进一步地,可以在web浏览器内执行响应中的脚本,并且若干DOM方法可以被挂钩到当执行DOM方法时可以被执行的应用代码。如由应用代码的执行所指出的,可以基于在脚本执行期间被调用的文档对象模型方法来确定漏洞。

Claims (15)

1.一种用于自动化安全测试的系统,包括:
适于执行所存储的指令的处理器;以及
存储指令的存储设备,所述存储设备包括处理器可执行代码,所述处理器可执行代码在被所述处理器执行时适于:
记录宏;
当拦截来自web浏览器的业务时播放记录的宏;
当播放所述宏时拦截web请求;
攻击所述web请求;
将所述web请求发送到web服务器;
接收基于所述web请求的来自web服务器的响应;以及
处理web服务器的响应以确定任何漏洞。
2.权利要求1中所记载的系统,其中存储设备包括计算机可执行代码,所述计算机可执行代码在被所述处理器执行时适于通过以下操作来处理web服务器的响应以确定任何漏洞:
用web浏览器来执行所述响应中的脚本;
将文档对象模型方法挂钩到在脚本执行期间被执行的应用代码;以及
如由所述应用代码的执行所指出的,基于在脚本执行期间被调用的文档对象模型方法来确定漏洞。
3.权利要求1中所记载的系统,其中存储设备包括计算机可执行代码,所述计算机可执行代码在被所述处理器执行时适于通过记录用户与web浏览器的交互来记录宏。
4.权利要求1中所记载的系统,其中存储设备包括计算机可执行代码,所述计算机可执行代码在被所述处理器执行时适于在回放所述宏期间攻击所述web请求。
5.权利要求1中所记载的系统,其中存储设备包括计算机可执行代码,所述计算机可执行代码在被所述处理器执行时适于通过以下操作来记录宏:
将文档对象模型的元素包括在所述宏中;以及
在文档对象模型已改变之后,基于所述元素的相对于文档对象模型中的其他元素的位置、标签名称、元素ID、元素名称、或其任何组合来在文档对象模型中找到所述元素。
6.一种用于自动化安全测试的方法,包括:
记录宏;
当代理服务器拦截来自web浏览器的业务时播放记录的宏;
当播放所述宏时拦截web请求;
攻击所述web请求;
将所述web请求发送到web服务器;
接收基于所述web请求的来自web服务器的响应;以及
处理web服务器的响应以确定任何漏洞。
7.权利要求6中所记载的方法,其中处理web服务器的响应以确定任何漏洞包括:
用web浏览器来执行所述响应中的脚本;
将文档对象模型方法挂钩到应用代码;以及
如由所述应用代码的执行所指出的,基于在脚本执行期间被调用的文档对象模型方法来确定漏洞。
8.权利要求6中所记载的方法,其中攻击所述web请求包括将恶意代码注入到所述web请求中。
9.权利要求6中所记载的方法,其中记录宏包括定义元素以供记录,所述元素指示登出状态、登入状态、或一组问题和答案。
10.权利要求6中所记载的方法,其中记录宏包括使用事件句柄来记录网页的元素。
11.权利要求6中所记载的方法,其中所述web请求被发送到在所述web请求被拦截之前是它的原始目的地的web服务器。
12.权利要求6中所记载的方法,其中攻击所述web请求包括关于什么构成漏洞的对应规则。
13.一种非临时计算机可读介质,包括被配置成引导处理器进行以下操作的代码:
记录宏;
当拦截来自web浏览器的业务时播放记录的宏;
当播放所述宏时拦截web请求;
攻击所述web请求;
将所述web请求发送到web服务器;
接收基于所述web请求的来自web服务器的响应;以及
处理web服务器的响应以确定任何漏洞。
14.权利要求13中所记载的非临时计算机可读介质,包括被配置成引导处理器通过以下操作来处理web服务器的响应以确定任何漏洞的代码:
用web浏览器来执行所述响应中的脚本;
将文档对象模型方法挂钩到在脚本执行期间被执行的应用代码;以及
如由所述应用代码的执行所指出的,基于在脚本执行期间被调用的文档对象模型方法来确定漏洞。
15.权利要求13中所记载的非临时计算机可读介质,包括被配置成引导处理器通过将恶意代码注入到所述web请求中来攻击web请求的代码。
CN201180071246.2A 2011-05-31 2011-05-31 自动化安全测试 Active CN103562927B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/038550 WO2012166113A1 (en) 2011-05-31 2011-05-31 Automated security testing

Publications (2)

Publication Number Publication Date
CN103562927A true CN103562927A (zh) 2014-02-05
CN103562927B CN103562927B (zh) 2016-06-01

Family

ID=47259659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180071246.2A Active CN103562927B (zh) 2011-05-31 2011-05-31 自动化安全测试

Country Status (7)

Country Link
US (3) US9276952B2 (zh)
EP (1) EP2715600B1 (zh)
JP (1) JP2014519119A (zh)
KR (2) KR101827232B1 (zh)
CN (1) CN103562927B (zh)
BR (1) BR112013030816A2 (zh)
WO (1) WO2012166113A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016033765A1 (zh) * 2014-09-03 2016-03-10 华为技术有限公司 网页自动化测试方法及装置
CN106789938A (zh) * 2016-11-30 2017-05-31 四川秘无痕信息安全技术有限责任公司 一种实时监控手机端浏览器搜索痕迹的方法
CN107016282A (zh) * 2017-02-06 2017-08-04 阿里巴巴集团控股有限公司 一种信息处理方法及装置
CN111935149A (zh) * 2020-08-11 2020-11-13 北京天融信网络安全技术有限公司 一种漏洞检测方法及系统

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103562927B (zh) * 2011-05-31 2016-06-01 惠普发展公司,有限责任合伙企业 自动化安全测试
US8683596B2 (en) * 2011-10-28 2014-03-25 International Business Machines Corporation Detection of DOM-based cross-site scripting vulnerabilities
GB201205117D0 (en) * 2012-03-23 2012-05-09 Saasid Ltd Dynamic rendering of a document object model
EP2951718A4 (en) * 2013-01-29 2016-08-31 Hewlett Packard Entpr Dev Lp ANALYSIS STRUCTURE FOR WEB APPLICATION
EP2959401A4 (en) * 2013-02-25 2016-09-28 Hewlett Packard Development Co PRESENTATION OF USER INTERFACE ELEMENTS BASED ON RULES
US9979726B2 (en) * 2013-07-04 2018-05-22 Jscrambler S.A. System and method for web application security
GB2516050A (en) * 2013-07-09 2015-01-14 Ibm A Network Security System
JP6167033B2 (ja) * 2013-12-13 2017-07-19 Kddi株式会社 アプリケーション解析装置、アプリケーション解析方法、プログラム
US9699142B1 (en) * 2014-05-07 2017-07-04 Amazon Technologies, Inc. Cross-site scripting defense using document object model template
US9571465B1 (en) 2014-09-18 2017-02-14 Amazon Technologies, Inc. Security verification by message interception and modification
US9407656B1 (en) 2015-01-09 2016-08-02 International Business Machines Corporation Determining a risk level for server health check processing
US9665697B2 (en) 2015-03-17 2017-05-30 International Business Machines Corporation Selectively blocking content on electronic displays
CN106154959A (zh) * 2015-04-02 2016-11-23 工业和信息化部计算机与微电子发展研究中心(中国软件评测中心) 一种用于检测炸药生产系统中plc信息安全性的方法
US10135862B1 (en) * 2015-12-04 2018-11-20 Amazon Technologies, Inc. Testing security incident response through automated injection of known indicators of compromise
US9727738B1 (en) * 2016-06-08 2017-08-08 Synack, Inc. Patch validation via replay and remediation verification
CN106126417A (zh) * 2016-06-17 2016-11-16 深圳开源互联网安全技术有限公司 交互式应用程序安全测试方法及其系统
US10970465B2 (en) 2016-08-24 2021-04-06 Micro Focus Llc Web page manipulation
EP3287930A1 (en) * 2016-08-26 2018-02-28 Entit Software LLC Javascript security testing
CN107798051A (zh) 2016-08-31 2018-03-13 安提特软件有限责任公司 文件对象模型事务爬行器
US10614221B2 (en) 2016-11-16 2020-04-07 International Business Machines Corporation Method and apparatus for security testing of application flows that cannot be automated through HTTP replay
US10257220B2 (en) 2017-01-30 2019-04-09 Xm Cyber Ltd. Verifying success of compromising a network node during penetration testing of a networked system
US10999308B2 (en) 2017-01-30 2021-05-04 Xm Cyber Ltd. Setting-up penetration testing campaigns
AU2018212708A1 (en) * 2017-01-30 2019-08-08 Xm Cyber Ltd. Penetration testing of a networked system
US10686822B2 (en) 2017-01-30 2020-06-16 Xm Cyber Ltd. Systems and methods for selecting a lateral movement strategy for a penetration testing campaign
US10068095B1 (en) 2017-05-15 2018-09-04 XM Cyber Ltd Systems and methods for selecting a termination rule for a penetration testing campaign
US10581802B2 (en) 2017-03-16 2020-03-03 Keysight Technologies Singapore (Sales) Pte. Ltd. Methods, systems, and computer readable media for advertising network security capabilities
CN108809890B (zh) * 2017-04-26 2021-05-25 腾讯科技(深圳)有限公司 漏洞检测方法、测试服务器及客户端
US10534917B2 (en) 2017-06-20 2020-01-14 Xm Cyber Ltd. Testing for risk of macro vulnerability
US10574684B2 (en) 2017-07-09 2020-02-25 Xm Cyber Ltd. Locally detecting phishing weakness
US10412112B2 (en) 2017-08-31 2019-09-10 Xm Cyber Ltd. Time-tagged pre-defined scenarios for penetration testing
US10447721B2 (en) 2017-09-13 2019-10-15 Xm Cyber Ltd. Systems and methods for using multiple lateral movement strategies in penetration testing
EP3711279A1 (en) 2017-11-15 2020-09-23 XM Cyber Ltd. Selectively choosing between actual-attack and simulation/evaluation for validating a vulnerability of a network node during execution of a penetration testing campaign
US10440044B1 (en) 2018-04-08 2019-10-08 Xm Cyber Ltd. Identifying communicating network nodes in the same local network
US10965708B2 (en) * 2018-06-06 2021-03-30 Whitehat Security, Inc. Systems and methods for machine learning based application security testing
US10382473B1 (en) 2018-09-12 2019-08-13 Xm Cyber Ltd. Systems and methods for determining optimal remediation recommendations in penetration testing
US10469521B1 (en) 2018-11-04 2019-11-05 Xm Cyber Ltd. Using information about exportable data in penetration testing
WO2020121078A1 (en) 2018-12-13 2020-06-18 Xm Cyber Ltd. Systems and methods for dynamic removal of agents from nodes of penetration testing systems
US10853218B1 (en) * 2018-12-17 2020-12-01 Shutterstock, Inc. Recording and playback of a web browser session
US10462177B1 (en) 2019-02-06 2019-10-29 Xm Cyber Ltd. Taking privilege escalation into account in penetration testing campaigns
US11283827B2 (en) 2019-02-28 2022-03-22 Xm Cyber Ltd. Lateral movement strategy during penetration testing of a networked system
US11206281B2 (en) 2019-05-08 2021-12-21 Xm Cyber Ltd. Validating the use of user credentials in a penetration testing campaign
US11568054B2 (en) 2019-06-11 2023-01-31 Micro Focus Llc Web application login macro generation and verification
US10637883B1 (en) 2019-07-04 2020-04-28 Xm Cyber Ltd. Systems and methods for determining optimal remediation recommendations in penetration testing
US11663339B2 (en) * 2019-07-31 2023-05-30 International Business Machines Corporation Security testing based on user request
US10880326B1 (en) 2019-08-01 2020-12-29 Xm Cyber Ltd. Systems and methods for determining an opportunity for node poisoning in a penetration testing campaign, based on actual network traffic
US11533329B2 (en) 2019-09-27 2022-12-20 Keysight Technologies, Inc. Methods, systems and computer readable media for threat simulation and threat mitigation recommendations
CN110928772B (zh) * 2019-11-05 2022-03-08 深圳前海微众银行股份有限公司 一种测试方法及装置
US11005878B1 (en) 2019-11-07 2021-05-11 Xm Cyber Ltd. Cooperation between reconnaissance agents in penetration testing campaigns
CN110881043B (zh) * 2019-11-29 2022-07-01 杭州迪普科技股份有限公司 一种web服务器漏洞的检测方法及装置
US11575700B2 (en) 2020-01-27 2023-02-07 Xm Cyber Ltd. Systems and methods for displaying an attack vector available to an attacker of a networked system
US11582256B2 (en) 2020-04-06 2023-02-14 Xm Cyber Ltd. Determining multiple ways for compromising a network node in a penetration testing campaign
US20210329022A1 (en) * 2020-04-17 2021-10-21 Cerner Innovation, Inc. Systems, methods, and storage media for conducting security penetration testing
CN113704760B (zh) * 2021-08-31 2024-05-24 深信服科技股份有限公司 一种页面检测方法及相关装置
CN114143047A (zh) * 2021-11-17 2022-03-04 湖北天融信网络安全技术有限公司 漏洞检测方法、装置、终端设备、Web服务器及存储介质
CN114579433A (zh) * 2022-02-15 2022-06-03 北京达佳互联信息技术有限公司 页面参数校验方法、装置、电子设备、介质及程序产品

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005266954A (ja) * 2004-03-16 2005-09-29 Hitachi Software Eng Co Ltd 操作情報記録・再生装置
US20060070075A1 (en) * 2004-09-03 2006-03-30 Sergei Rodionov Server-recorded macros and web application automation
US20070186285A1 (en) * 2000-11-28 2007-08-09 Hurst Dennis W Webcrawl internet security analysis and process
US7343625B1 (en) * 2001-08-28 2008-03-11 Nvidia International, Inc. System, method and computer program product for automated interaction with and data extraction from Java applets
CN101238475A (zh) * 2005-08-12 2008-08-06 Nxp股份有限公司 软件应用安全方法和系统
US20080320567A1 (en) * 2007-06-20 2008-12-25 Imperva, Inc. System and method for preventing web frauds committed using client-scripting attacks
JP2010250583A (ja) * 2009-04-16 2010-11-04 Fujitsu Ltd アプリケーションテスト生成プログラム、アプリケーションテスト生成方法及びアプリケーションテスト装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7073198B1 (en) 1999-08-26 2006-07-04 Ncircle Network Security, Inc. Method and system for detecting a vulnerability in a network
US7181769B1 (en) 2000-08-25 2007-02-20 Ncircle Network Security, Inc. Network security system having a device profiler communicatively coupled to a traffic monitor
US7152105B2 (en) 2002-01-15 2006-12-19 Mcafee, Inc. System and method for network vulnerability detection and reporting
US7243148B2 (en) * 2002-01-15 2007-07-10 Mcafee, Inc. System and method for network vulnerability detection and reporting
US7831995B2 (en) 2004-10-29 2010-11-09 CORE, SDI, Inc. Establishing and enforcing security and privacy policies in web-based applications
US7467333B2 (en) 2005-09-01 2008-12-16 Hewlett-Packard Development Company, L.P. System and method for interposition-based selective simulation of faults for access requests to a data storage system
GB2459629A (en) 2007-02-16 2009-11-04 Veracode Inc Assessment and analysis of software security flaws
WO2008109770A2 (en) 2007-03-06 2008-09-12 Core Sdi, Incorporated System and method for providing application penetration testing
US8099787B2 (en) * 2007-08-15 2012-01-17 Bank Of America Corporation Knowledge-based and collaborative system for security assessment of web applications
US8601586B1 (en) * 2008-03-24 2013-12-03 Google Inc. Method and system for detecting web application vulnerabilities
CN101964025B (zh) * 2009-07-23 2016-02-03 北京神州绿盟信息安全科技股份有限公司 Xss检测方法和设备
EP2476238A2 (en) 2009-09-08 2012-07-18 Core SDI, Incorporated System and method for probabilistic attack planning
CN103562927B (zh) * 2011-05-31 2016-06-01 惠普发展公司,有限责任合伙企业 自动化安全测试
US8683596B2 (en) * 2011-10-28 2014-03-25 International Business Machines Corporation Detection of DOM-based cross-site scripting vulnerabilities
US8752183B1 (en) * 2012-07-10 2014-06-10 Hoyt Technologies, Inc. Systems and methods for client-side vulnerability scanning and detection

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070186285A1 (en) * 2000-11-28 2007-08-09 Hurst Dennis W Webcrawl internet security analysis and process
US7343625B1 (en) * 2001-08-28 2008-03-11 Nvidia International, Inc. System, method and computer program product for automated interaction with and data extraction from Java applets
JP2005266954A (ja) * 2004-03-16 2005-09-29 Hitachi Software Eng Co Ltd 操作情報記録・再生装置
US20060070075A1 (en) * 2004-09-03 2006-03-30 Sergei Rodionov Server-recorded macros and web application automation
CN101238475A (zh) * 2005-08-12 2008-08-06 Nxp股份有限公司 软件应用安全方法和系统
US20080320567A1 (en) * 2007-06-20 2008-12-25 Imperva, Inc. System and method for preventing web frauds committed using client-scripting attacks
JP2010250583A (ja) * 2009-04-16 2010-11-04 Fujitsu Ltd アプリケーションテスト生成プログラム、アプリケーションテスト生成方法及びアプリケーションテスト装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016033765A1 (zh) * 2014-09-03 2016-03-10 华为技术有限公司 网页自动化测试方法及装置
CN105579976A (zh) * 2014-09-03 2016-05-11 华为技术有限公司 网页自动化测试方法及装置
CN105579976B (zh) * 2014-09-03 2018-07-20 华为技术有限公司 网页自动化测试方法及装置
CN106789938A (zh) * 2016-11-30 2017-05-31 四川秘无痕信息安全技术有限责任公司 一种实时监控手机端浏览器搜索痕迹的方法
CN106789938B (zh) * 2016-11-30 2020-04-21 四川秘无痕科技有限责任公司 一种实时监控手机端浏览器搜索痕迹的方法
CN107016282A (zh) * 2017-02-06 2017-08-04 阿里巴巴集团控股有限公司 一种信息处理方法及装置
CN107016282B (zh) * 2017-02-06 2020-01-31 阿里巴巴集团控股有限公司 一种信息处理方法及装置
CN111935149A (zh) * 2020-08-11 2020-11-13 北京天融信网络安全技术有限公司 一种漏洞检测方法及系统

Also Published As

Publication number Publication date
US9736177B2 (en) 2017-08-15
KR101745052B1 (ko) 2017-06-08
US20170264378A1 (en) 2017-09-14
KR20140026544A (ko) 2014-03-05
US9276952B2 (en) 2016-03-01
JP2014519119A (ja) 2014-08-07
CN103562927B (zh) 2016-06-01
EP2715600A4 (en) 2015-01-14
WO2012166113A1 (en) 2012-12-06
BR112013030816A2 (pt) 2016-12-06
US20140075563A1 (en) 2014-03-13
KR101827232B1 (ko) 2018-02-07
EP2715600A1 (en) 2014-04-09
US10243679B2 (en) 2019-03-26
EP2715600B1 (en) 2018-08-29
KR20170060615A (ko) 2017-06-01
US20160142434A1 (en) 2016-05-19

Similar Documents

Publication Publication Date Title
US10243679B2 (en) Vulnerability detection
USRE48382E1 (en) Security for WAP servers
US10505966B2 (en) Cross-site request forgery (CSRF) vulnerability detection
US20180349602A1 (en) Security testing framework including virtualized server-side platform
US9390270B2 (en) Security testing using semantic modeling
Shahriar et al. Client-side detection of cross-site request forgery attacks
JP2004164617A (ja) クロスサイトスクリプティング脆弱性の自動検出
Ahmed et al. Multiple-path testing for cross site scripting using genetic algorithms
CN111552854A (zh) 一种网页数据抓取方法、装置、存储介质和设备
CN103647678A (zh) 一种网站漏洞在线验证方法及装置
CN108322427A (zh) 一种对访问请求进行风控的方法与设备
CN110851838A (zh) 一种基于互联网的云测试系统及安全测试方法
US9923916B1 (en) Adaptive web application vulnerability scanner
Tatli et al. WIVET—benchmarking coverage qualities of web crawlers
Alidoosti et al. Evaluating the web‐application resiliency to business‐layer DoS attacks
Drakonakis et al. Rescan: A middleware framework for realistic and robust black-box web application scanning
JP5082555B2 (ja) セキュリティ検査用モデル生成装置,セキュリティ検査用モデル検査装置,およびセキュリティ検査用モデル生成プログラム
CN115499192A (zh) web蜜罐仿真方法、装置、计算机设备及可读存储介质
CN113378172B (zh) 用于识别敏感网页的方法、装置、计算机系统和介质
Algwil Click-based Captcha paradigm as a web service
De Meo et al. A formal and automated approach to exploiting multi-stage attacks of web applications
Le Breton et al. A reference framework for the automated exploration of web applications
Aggarwal et al. Spying Browser Extensions: Analysis and Detection
Khan et al. Open Source Web-Based Software: Security Challenges and Assessment Methodologies
Uijtewaal Dynamic access control analysis in WordPress plugins

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20161230

Address after: American Texas

Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: American Texas

Patentee before: Hewlett-Packard Development Company, L.P.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180611

Address after: American California

Patentee after: Antite Software Co., Ltd.

Address before: American Texas

Patentee before: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Utah, USA

Patentee after: Weifosi Co., Ltd

Address before: California, USA

Patentee before: Antiy Software Co.,Ltd.