CN111651766B - 越权访问的测试方法及装置 - Google Patents
越权访问的测试方法及装置 Download PDFInfo
- Publication number
- CN111651766B CN111651766B CN202010470115.2A CN202010470115A CN111651766B CN 111651766 B CN111651766 B CN 111651766B CN 202010470115 A CN202010470115 A CN 202010470115A CN 111651766 B CN111651766 B CN 111651766B
- Authority
- CN
- China
- Prior art keywords
- remote network
- uniform resource
- resource locator
- administrator
- information
- 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
Classifications
-
- 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
- G06F21/563—Static detection by source code analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- 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
- G06F21/604—Tools and structures for managing or administering access control systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Virology (AREA)
- Automation & Control Theory (AREA)
- Bioethics (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开涉及一种越权访问的测试方法、装置、电子设备及计算机可读介质。该方法包括:获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;确定多个管理员中的任一管理员为目标管理员;所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。本公开涉及的越权访问的测试方法、装置、电子设备及计算机可读介质,能够快速准确的完成越权测试,既提高了测试的效率又保证了测试的准确。
Description
技术领域
本公开涉及计算机信息处理领域,具体而言,涉及一种越权访问的测试方法、装置、电子设备及计算机可读介质。
背景技术
越权访问的情况可例如为非系统管理员用户,却偷偷的跑进了系统管理菜单,僭越权利访问里面的信息甚至修改其中的数据(不同级别的越权又称垂直越权访问),越权访问会对数据的安全性造成极大的威胁,每家企业都有其方法来保证企业内部数据的安全性,也就是解决越权访问的问题。特别是在某些场景下要求网络安全设备拥有三个管理员:系统管理员、安全保密管理员、日志管理员。每个管理员有自己的web访问权限,相互独立相互制约。这种三权分立的系统很多,越权现象一旦产生,对这个系统影响极大。
为了测试系统中是否存在越权访问的现象,现有技术可分别使用多个管理员登录设备,并依次访问每个页面记录每个页面的url,从而整理出每个用户权限下的全部url。然后使用浏览器依次登录每个管理员,并且在新的标签页中去访问其他管理员权限下的url,如果能够成功访问则属于越权访问。这种通过人工搜索判断的方式工作量很大,并且很容易引入不必要的错误。
因此,需要一种新的越权访问的测试方法、装置、电子设备及计算机可读介质。
在所述背景技术部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本公开提供一种越权访问的测试方法、装置、电子设备及计算机可读介质,能够快速准确的完成越权测试,既提高了测试的效率又保证了测试的准确。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一方面,提出一种越权访问的测试方法,该方法包括:获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;确定多个管理员中的任一管理员为目标管理员;所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。
在本公开的一种示例性实施例中,还包括:基于跨平台计算机程序设计语言创建模拟登陆对象;通过登陆秘钥生成登陆信息;在管理员基于模拟登陆对象登陆所述远程网络设备时,基于所述管理员权限下的原始数据生成所述权限信息。
在本公开的一种示例性实施例中,管理员基于模拟登陆对象登陆所述远程网络设备,包括:管理员基于登陆对象调取登陆信息;登陆对象基于所述登陆信息访问所述远程网络设备。
在本公开的一种示例性实施例中,基于所述管理员权限下的原始数据生成所述权限信息,包括:访问所述远程网络设备上的超文本传输协议接口以获取管理员权限下的所述原始数据,所述原始数据包括页面和字符串;提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息。
在本公开的一种示例性实施例中,访问所述远程网络设备上的超文本传输协议接口以获取用户权限下的所述原始数据,包括:访问所述远程网络设备上的超文本传输协议接口;通过抓包的方式获取用户权限下的所述原始数据。
在本公开的一种示例性实施例中,提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息,包括:通过跨平台计算机程序设计语言中的正则表达式提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息。
在本公开的一种示例性实施例中,包括:通过超级管理员账户登陆所述远程网络设备;获取网站主页的源代码;提取所述源代码中的隐藏统一资源定位符地址;访问所述隐藏统一资源定位符地址,生成返回结果;在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。
在本公开的一种示例性实施例中,提取所述源代码中的隐藏统一资源定位符地址,包括:通过跨平台计算机程序设计语言中的正则表达式提取所述源代码中的统一资源定位符地址;在统一资源定位符地址提取出隐藏统一资源定位符地址。
在本公开的一种示例性实施例中,访问所述隐藏统一资源定位符地址,包括:将所述隐藏统一资源定位符地址存储在列表中;基于超文本传输协议循环调用所述列表中的隐藏统一资源定位符地址以进行访问。
根据本公开的一方面,提出一种越权访问的测试装置,该装置包括:信息模块,用于获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;用户模块,用于确定多个管理员中的任一管理员为目标管理员;登陆模块,用于所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;返回模块,用于所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;判断模块,用于在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。
根据本公开的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本公开的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。
根据本公开的越权访问的测试方法、装置、电子设备及计算机可读介质,获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;确定多个管理员中的任一管理员为目标管理员;所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问的方式,能够快速准确的完成越权测试,既提高了测试的效率又保证了测试的准确。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本公开的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种越权访问的测试方法及装置的系统框图。
图2是根据一示例性实施例示出的一种越权访问的测试方法的流程图。
图3是根据另一示例性实施例示出的一种越权访问的测试方法的流程图。
图4是根据另一示例性实施例示出的一种越权访问的测试方法的流程图。
图5是根据另一示例性实施例示出的一种越权访问的测试方法的流程图。
图6是根据另一示例性实施例示出的一种越权访问的测试方法的流程图。
图7是根据一示例性实施例示出的一种越权访问的测试装置的框图。
图8是根据一示例性实施例示出的一种电子设备的框图。
图9是根据一示例性实施例示出的一种计算机可读介质的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本公开概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本公开所必须的,因此不能用于限制本公开的保护范围。
本公开涉及到的名词解释如下:
WEB三权分立:某些场景下要求网络安全设备拥有三个管理员:系统管理员、安全保密管理员、日志管理员。每个管理员有自己的web访问权限,相互独立相互制约。
WEB越权访问:三权分立场景下,某个管理员如果能够访问其他管理员的web页面就属于越权访问。
Python:Python是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。
Python requests库:使用requests可以模拟浏览器的请求,比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urllib3)
Python re库:正则表达式是一个特殊的字符序列,能方便的检查一个字符串是否与某种模式匹配。re模块使得python拥有全部的正则表达式功能。
Burpsuit:是用于攻击web应用程序的集成平台,包含了许多工具。Burp Suite为这些工具设计了许多接口,以加快攻击应用程序的过程。所有工具都共享一个请求,并能处理对应的HTTP消息、持久性、认证、代理、日志、警报。
图1是根据一示例性实施例示出的一种越权访问的测试方法、装置、电子设备及计算机可读介质的系统框图。
如图1所示,系统架构10可以包括测试设备101,网络102和网络设备103。网络102用以在测试设备101和网络设备103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用测试设备101通过网络102与网络设备103交互,以接收或发送消息等。测试设备101可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。测试设备101上可安装python并且安装第三方库requests、re等。
测试设备101可例如获取远程网络设备103的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;测试设备101可例如确定多个管理员中的任一管理员为目标管理员;测试设备101可例如所述目标管理员基于其对应的登陆信息登陆所述远程网络设备103;测试设备101可例如所述目标管理员在远程网络设备103中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;测试设备101可例如在所述返回结果中包含预设内容时,确定所述远程网络设备103中存在越权访问。
测试设备101可以是一个实体的台式机、服务器,还可例如为多个服务器组成,需要说明的是,本公开实施例所提供的越权访问的测试方法可以由测试设备101执行,相应地,越权访问的测试装置可以设置于测试设备101中。
图2是根据一示例性实施例示出的一种越权访问的测试方法的流程图。越权访问的测试方法20至少包括步骤S202至S210。
如图2所示,在S202中,获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址。可事先通过在构造函数中创建的对象来存储多个管理员的登陆信息和权限信息,具体存储方式将在图4对应的实施例中进行详细说明。
在一个实施例中,远程网络设备中包含三个管理员,分别为管理员system、管理员、business、管理员log,system_admin_password、business_admin_password、log_admin_password用于存储登陆信息用以登录远程网络设备,三个列表变量system_list、business_list、log_list用于存储每个用户权限下的url信息。
在S204中,确定多个管理员中的任一管理员为目标管理员。可依次由多个管理员中选择本次测试的目标管理员。
在S206中,所述目标管理员基于其对应的登陆信息登陆所述远程网络设备。根据登陆信息中的内容,登陆到远程网络中。
更具体的,可例如管理员system通过system_admin_password中的信息登陆到远程网络中;管理员business、通过business_admin_password中的信息登陆到远程网络中;管理员log通过log_admin_password中的信息登陆到远程网络中。
在S208中,所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果。
在S210中,在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。
在一个实施例中,管理员system通过system_se去循环访问business_list、log_list中的url,如果返内容为:”没有操作权限”则没有越权访问。否则代表该管理员能够越权访问其他管理员权限下的url并输出结果(如果log_list、business_list中的url在system_list中也存在则不属于越权,此时属于产品设计缺陷,没有达到三个管理员相互独立的目的)。
在一个实施例中,管理员business通过business_se去循环访问system_list、log_list中的url,如果返内容为:”没有操作权限”则没有越权访问。否则代表该管理员能够越权访问其他管理员权限下的url并输出结果(如果system_list、log_list中的url在business_list中也存在则不属于越权,此时属于产品设计缺陷,没有达到三个管理员相互独立的目的)。
在一个实施例中,管理员log通过log_se去循环访问system_list、business_list中的url,如果返内容为:”没有操作权限”则没有越权访问。否则代表该管理员能够越权访问其他管理员权限下的url并输出结果(如果system_list、business_list中的url在log_list中也存在则不属于越权,此时属于产品设计缺陷,没有达到三个管理员相互独立的目的)。
根据本公开的越权访问的测试方法,获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;确定多个管理员中的任一管理员为目标管理员;所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问的方式,能够快速准确的完成越权测试,既提高了测试的效率又保证了测试的准确。
应清楚地理解,本公开描述了如何形成和使用特定示例,但本公开的原理不限于这些示例的任何细节。相反,基于本公开公开的内容的教导,这些原理能够应用于许多其它实施例。
图3是根据另一示例性实施例示出的一种越权访问的测试方法的流程图。图3所示的流程30是对图2所示的流程的详细描述。
如图3所示,在S302中,创建对象。可使用python创建system_se、business_se、log_se,分别发送三个管理员system、、business、log发起http请求使用。
在S304中,管理员通过对象访问远端设备,获取URL数据。三个管理员分别使用单个对象登陆远程设备,然后访问func/web_main/display/user/main获取各自权限下的URL原始数据。
在S306中,使用正则表达式提取每个管理员的原始数据中全部页面的连接名称和URL并保存到列表system_list、business_list、log_list。
在S308中,每个管理员遍历其他两个管理员的URL。
在S310中,其他两个管理员的URL_list中是否有当前URL。
在S312中,属于产品设计缺陷。
在S314中,返回内容是否为“没有操作权限”。
在S316中,该用户不能越权访问当前URL。
在S318中,该用户可以越权访问当前URL。
传统的三权分立web模块权限划分测试方法采用手动测试,由于每个管理员权限下都有大量的url,容易造成漏测、测试工作量大等现象。采用本方案大30秒内就能完成测试且不会出现漏测现象,既提高了测试的效率又保证了测试结果的准确性。
图4是根据另一示例性实施例示出的一种越权访问的测试方法的流程图。图4所示的流程40是对图2所示的流程的补充描述。
如图4所示,在S402中,基于跨平台计算机程序设计语言创建模拟登陆对象。其中,跨平台计算机程序设计语言可为python。
在一个实施例中,还可通过python selenium库是先本申请的目的。相对于pythonrequests库,用python selenium库可以更贴近用户,用python requests库属于接口测试效率更高。
更具体的,可基于python创建类fw_exceed并在构造函数中创建三个requests.session对象:system_se、business_se、log_se,分别用于三个管理员发起http请求。
在S404中,通过登陆秘钥生成登陆信息。创建并初始化三个字符串变量system_admin_password、business_admin_password、log_admin_password用于存储用户登录设备的秘钥,创建并初始化三个列表变量system_link、.business_link、log_link用于存储每个管理员权限下的url信息
在S406中,在管理员基于模拟登陆对象登陆所述远程网络设备时,基于所述管理员权限下的原始数据生成所述权限信息。包括:管理员基于登陆对象调取登陆信息;登陆对象基于所述登陆信息访问所述远程网络设备。
在一个实施例中,基于所述管理员权限下的原始数据生成所述权限信息,包括:访问所述远程网络设备上的超文本传输协议接口以获取管理员权限下的所述原始数据,所述原始数据包括页面和字符串;提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息。
在一个实施例中,访问所述远程网络设备上的超文本传输协议接口以获取用户权限下的所述原始数据,包括:访问所述远程网络设备上的超文本传输协议接口;通过抓包的方式获取用户权限下的所述原始数据。
在一个实施例中,提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息,包括:通过跨平台计算机程序设计语言中的正则表达式提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息。
更具体的,管理员system可使用equests.session对象system_se登录设备,登录参数直接调用变量system_admin_password。然后访问相关http接口获取当前管理员权限下全部页面的原始字符串数据,通过python的re正则表达式库提取原始数据中全部页面的链接名称和url并保存到步骤a中创建的列表system_list。
更具体的,管理员business可使用requests.session对象business_se登录设备,登录参数直接调用变量business_admin_password。然后访问相关http接口获取当前管理员权限下全部页面的原始字符串数据,通过python的re正则表达式库提取原始数据中全部页面的链接名称和url并保存到步骤a中创建的列表business_list。
更具体的,管理员log可使用requests.session对象log_se登录设备,登录参数直接调用变量log_admin_password。然后访问相关http接口获取当前管理员权限下全部页面的原始字符串数据,通过python的re正则表达式库提取原始数据中全部页面的链接名称和url并保存到步骤a中创建的列表log_list。
图5是根据另一示例性实施例示出的一种越权访问的测试方法的流程图。图5所示的流程50是对图2所示的流程的补充描述。
如图5所示,在S502中,通过超级管理员账户登陆所述远程网络设备。在大部分网络设备中,还会存在一个默认的超级管理员账户,这个账户权限比其他管理员权限大。
在S504中,获取网站主页的源代码。可通过超级管理员admin登录远程网络设备,审查网站主页/func/web_main/display/frame/main的源代码并保存为字符串main_str。
超级管理员admin可以通过页面/func/web_main/display/frame/main的源代码获取当前框式设备都插了哪些业务板(当前环境只插了FW业务板)。审查页面/func/web_main/display/user/main源代码并通过正则表达式提取全部的exist_in属性不是'main'和'fw'的<MenuItem>标签并保存在列表中,提取列表中的全部的url就是隐藏的url,还可尝试在浏览器的新标签中访问这些隐藏的页面看是否能够越权访问成功。
在S506中,提取所述源代码中的隐藏统一资源定位符地址。包括:通过跨平台计算机程序设计语言中的正则表达式提取所述源代码中的统一资源定位符地址;在统一资源定位符地址提取出隐藏统一资源定位符地址。通过正则表达式re.findall(r”””url="(.*?)"”””,main_str)提取网站中的网站中的隐藏url,然后在浏览器新标签中去访问查看是否能够越权访问一些隐藏的网页。
在S508中,访问所述隐藏统一资源定位符地址,生成返回结果。包括:将所述隐藏统一资源定位符地址存储在列表中;基于超文本传输协议循环调用所述列表中的隐藏统一资源定位符地址以进行访问。
在S510中,在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。
以迪普框子设备为例:理论上只有框子上有对应的业务板卡才会显示相应的页面,通过审查主页/func/web_main/display/frame/main的源代码<slot_info>标签中能够显示当前插入了哪些类型的业务板(当前环境只有防火墙业务板),但是<slot_type>标签中不仅包含防火墙业务页面:/func/web_main/display/frame/main_leftarea_fw,还包含其他业务页面:
/func/web_main/display/frame/main_leftarea_ips(IPS业务页面),
/func/web_main/display/frame/main_leftarea_uag(UAG业务页面),
/func/web_main/display/frame/main_leftarea_adx(ADX业务页面),
/func/web_main/display/frame/main_leftarea_guard(GUARD业务页面),
/func/web_main/display/frame/main_leftarea_waf(WAF业务页面)等全部的业务页面,这些页面相对于管理员来说应该是隐藏的,尝试在浏览器的新标签中访问这些隐藏的页面看是否能够越权访问成功。
图6是根据另一示例性实施例示出的一种越权访问的测试方法的流程图。图6所示的流程60是对图5所示的流程的详细描述。
如图6所示,在S602中,超级管理员登陆后审查远程网络设备的源代码。
在S604中,通过正则表达式提取网站主页/func/web_main/display/frame/main和/func/web_main/display/user/main的全部URL。
在S606中,判断哪些URL属于隐藏URL。
在S608中,保存隐藏的URL,然后以循环的方式访问list中的URL。
在S610中,根据http返回结果:response.status_code、response.tex等内容判断是否能越权访问隐藏URL。
在S612中,记录测试结果。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本公开提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图7是根据一示例性实施例示出的一种越权访问的测试装置的框图。如图7所示,越权访问的测试装置70包括:信息模块702,用户模块704,登陆模块706,返回模块708,判断模块710。
信息模块702用于获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;
用户模块704用于确定多个管理员中的任一管理员为目标管理员;
登陆模块706用于所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;
返回模块708用于所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;
判断模块710用于在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。
根据本公开的越权访问的测试装置,获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;确定多个管理员中的任一管理员为目标管理员;所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问的方式,能够快速准确的完成越权测试,既提高了测试的效率又保证了测试的准确。
图8是根据一示例性实施例示出的一种电子设备的框图。
下面参照图8来描述根据本公开的这种实施方式的电子设备800。图8显示的电子设备800仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:至少一个处理单元810、至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830、显示单元840等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书上述电子处方流转处理方法部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元810可以执行如图2,图3,图4,图5,图6中所示的步骤。
所述存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以进一步包括只读存储单元(ROM)8203。
所述存储单元820还可以包括具有一组(至少一个)程序模块8205的程序/实用工具8204,这样的程序模块8205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备800’(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器860可以通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,如图9所示,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述方法。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;确定多个管理员中的任一管理员为目标管理员;所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;所述目标管理员在远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施例的方法。
以上具体地示出和描述了本公开的示例性实施例。应可理解的是,本公开不限于这里描述的详细结构、设置方式或实现方法;相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (8)
1.一种越权访问的测试方法,其特征在于,包括:
获取远程网络设备的多个管理员的多个登陆信息和多个权限信息,权限信息包括管理员访问的统一资源定位符地址;
确定所述多个管理员中的任一管理员为目标管理员;
所述目标管理员基于其对应的登陆信息登陆所述远程网络设备;
所述目标管理员在所述远程网络设备中依次访问所述多个权限信息中的统一资源定位符地址,生成返回结果;
在所述返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问;
通过超级管理员账户登陆所述远程网络设备;
获取网站主页的源代码;
提取所述源代码中的隐藏统一资源定位符地址;
访问所述隐藏统一资源定位符地址,生成返回结果,并在返回结果中包含预设内容时,确定所述远程网络设备中存在越权访问。
2.如权利要求1所述的方法,其特征在于,还包括:
基于跨平台计算机程序设计语言创建模拟登陆对象;
通过登陆秘钥生成登陆信息;
在管理员基于模拟登陆对象登陆所述远程网络设备时,基于所述管理员权限下的原始数据生成所述权限信息。
3.如权利要求2所述的方法,其特征在于,管理员基于模拟登陆对象登陆所述远程网络设备,包括:
管理员基于登陆对象调取登陆信息;
登陆对象基于所述登陆信息访问所述远程网络设备。
4.如权利要求2所述的方法,其特征在于,基于所述管理员权限下的原始数据生成所述权限信息,包括:
访问所述远程网络设备上的超文本传输协议接口以获取管理员权限下的所述原始数据,所述原始数据包括页面和字符串;
提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息。
5.如权利要求4所述的方法,其特征在于,访问所述远程网络设备上的超文本传输协议接口以获取用户权限下的所述原始数据,包括:
访问所述远程网络设备上的超文本传输协议接口;
通过抓包的方式获取用户权限下的所述原始数据。
6.如权利要求4所述的方法,其特征在于,提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息,包括:
通过跨平台计算机程序设计语言中的正则表达式提取所述原始数据中的链接名称和统一资源定位符地址以生成所述权限信息。
7.如权利要求1所述的方法,其特征在于,提取所述源代码中的隐藏统一资源定位符地址,包括:
通过跨平台计算机程序设计语言中的正则表达式提取所述源代码中的统一资源定位符地址;
在统一资源定位符地址提取出隐藏统一资源定位符地址。
8.如权利要求1所述的方法,其特征在于,访问所述隐藏统一资源定位符地址,包括:
将所述隐藏统一资源定位符地址存储在列表中;
基于超文本传输协议循环调用所述列表中的隐藏统一资源定位符地址以进行访问。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010470115.2A CN111651766B (zh) | 2020-05-28 | 2020-05-28 | 越权访问的测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010470115.2A CN111651766B (zh) | 2020-05-28 | 2020-05-28 | 越权访问的测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111651766A CN111651766A (zh) | 2020-09-11 |
CN111651766B true CN111651766B (zh) | 2023-08-22 |
Family
ID=72343452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010470115.2A Active CN111651766B (zh) | 2020-05-28 | 2020-05-28 | 越权访问的测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111651766B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242482B (zh) * | 2022-07-18 | 2024-01-30 | 中国电信股份有限公司 | 越权访问风险检测方法、装置、电子设备及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501304A (zh) * | 2013-10-12 | 2014-01-08 | 深信服网络科技(深圳)有限公司 | 控制web系统越权访问的方法及装置 |
CN106713347A (zh) * | 2017-01-18 | 2017-05-24 | 国网江苏省电力公司电力科学研究院 | 一种电力移动应用越权访问漏洞检测方法 |
CN110968825A (zh) * | 2019-11-30 | 2020-04-07 | 信联科技(南京)有限公司 | 一种web页面细粒度权限控制方法 |
CN111079104A (zh) * | 2019-11-21 | 2020-04-28 | 腾讯科技(深圳)有限公司 | 一种权限控制方法、装置、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10121009B2 (en) * | 2015-09-25 | 2018-11-06 | Synack, Inc. | Computer system for discovery of vulnerabilities in applications including guided tester paths based on application coverage measures |
US10019529B2 (en) * | 2015-11-19 | 2018-07-10 | International Business Machines Corporation | Identifying webpages accessible by unauthorized users via URL guessing or network sniffing |
US11265347B2 (en) * | 2017-09-18 | 2022-03-01 | Fortinet, Inc. | Automated testing of network security policies against a desired set of security controls |
-
2020
- 2020-05-28 CN CN202010470115.2A patent/CN111651766B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501304A (zh) * | 2013-10-12 | 2014-01-08 | 深信服网络科技(深圳)有限公司 | 控制web系统越权访问的方法及装置 |
CN106713347A (zh) * | 2017-01-18 | 2017-05-24 | 国网江苏省电力公司电力科学研究院 | 一种电力移动应用越权访问漏洞检测方法 |
CN111079104A (zh) * | 2019-11-21 | 2020-04-28 | 腾讯科技(深圳)有限公司 | 一种权限控制方法、装置、设备及存储介质 |
CN110968825A (zh) * | 2019-11-30 | 2020-04-07 | 信联科技(南京)有限公司 | 一种web页面细粒度权限控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111651766A (zh) | 2020-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3097509B1 (en) | Intercepting and supervising calls to transformed operations and objects | |
US11151215B2 (en) | Identifying webpages accessible by unauthorized users via URL guessing or network sniffing | |
US20120240224A1 (en) | Security systems and methods for distinguishing user-intended traffic from malicious traffic | |
US8621613B1 (en) | Detecting malware in content items | |
US9607145B2 (en) | Automated vulnerability and error scanner for mobile applications | |
CN111683047B (zh) | 越权漏洞检测方法、装置、计算机设备及介质 | |
US11288376B2 (en) | Identifying hard-coded secret vulnerability inside application source code | |
KR20100023880A (ko) | 서버 측 분석 및 인스트루먼테이션을 통한 매쉬업 컴포넌트 격리 | |
CN111163095B (zh) | 网络攻击分析方法、网络攻击分析装置、计算设备和介质 | |
US20190222587A1 (en) | System and method for detection of attacks in a computer network using deception elements | |
CN111163094B (zh) | 网络攻击检测方法、网络攻击检测装置、电子设备和介质 | |
CN112583815A (zh) | 一种操作指令管理方法、装置 | |
US10129278B2 (en) | Detecting malware in content items | |
CN112347169A (zh) | 基于php框架的用户请求处理方法、装置及电子设备 | |
CN111488581A (zh) | 弱口令漏洞检测方法、装置、电子设备及计算机可读介质 | |
CN111651766B (zh) | 越权访问的测试方法及装置 | |
Dhivya et al. | Evaluation of Web Security Mechanisms Using Vulnerability &Sql Attack Injection | |
Sharif | Web Attacks Analysis and Mitigation Techniques | |
CN115733685A (zh) | Web会话认证管理方法、装置、计算机设备及存储介质 | |
Satyanarayana et al. | Static analysis tool for detecting web application vulnerabilities | |
CN113839957B (zh) | 未授权漏洞的检测方法及装置 | |
Mingsheng et al. | Research and Development of Dual-Core Browser-Based Compatibility and Security | |
Alghofaili | Security Analysis of Open Source Content Management Systems Wordpress, Joomla, and Drupal | |
CN113824696B (zh) | portal认证方法及装置 | |
US20170200012A1 (en) | Application Modification Based on a Security Vulnerability |
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 |