CN114844689A - 一种基于有限状态机的网站逻辑漏洞检测方法及系统 - Google Patents
一种基于有限状态机的网站逻辑漏洞检测方法及系统 Download PDFInfo
- Publication number
- CN114844689A CN114844689A CN202210409638.5A CN202210409638A CN114844689A CN 114844689 A CN114844689 A CN 114844689A CN 202210409638 A CN202210409638 A CN 202210409638A CN 114844689 A CN114844689 A CN 114844689A
- Authority
- CN
- China
- Prior art keywords
- node
- network request
- logic
- data
- user
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims description 19
- 238000012360 testing method Methods 0.000 claims abstract description 51
- 238000000034 method Methods 0.000 claims abstract description 26
- 238000012986 modification Methods 0.000 claims description 16
- 230000004048 modification Effects 0.000 claims description 16
- 230000006399 behavior Effects 0.000 claims description 15
- 235000014510 cooky Nutrition 0.000 claims description 15
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 230000009191 jumping Effects 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 12
- 238000012795 verification Methods 0.000 description 9
- 230000035772 mutation Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000035515 penetration Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 241001147416 Ursus maritimus Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于有限状态机的网站逻辑漏洞检测方法及系统,属于信息安全领域。该方法包括:捕获HTTP数据包和服务端的数据库执行日志,识别用户操作序列信息;利用所述信息对安全敏感的业务逻辑流程构建属性图模型以表示用户操作的逻辑行为模式;基于原始HTTP请求信息,对参数进行变异以生成新的测试用例,并根据不同的变异对象判定不同类型的逻辑漏洞。该方法可以高效的检测Web应用程序中存在的业务逻辑漏洞,并且可以推测出逻辑漏洞的类型,方便快速定位Web逻辑漏洞并提出有效的解决方案。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种基于有限状态机的网站逻辑漏洞检测方法及系统。
背景技术
随着Web安全技术的不断发展,传统的注入类安全问题已经得到了广泛而深入的研究,目前无论是学术界还是工业界,针对该类安全缺陷均已有了比较成熟的解决方案。随着传统漏洞利用过程技术成本的不断增加,越来越多的攻击者将目光转向Web逻辑漏洞的攻击和利用。Web业务逻辑漏洞主要由于程序开发人员在编写Web程序时,由于未对用户输入进行严格校验,或将某些安全验证行为完全寄托在用户不可见性上,即可导致Web逻辑漏洞的发生。在实际场景中,我们常将Web逻辑漏洞分为关键流程跳过、未授权访问、越权漏洞、参数未校验等类型。不同于传统Web安全漏洞,逻辑漏洞对于系统本身不会产生威胁,但是会极大的干扰业务的安全运行。该攻击所能造成的影响包括但不限于:由于越权导致的用户隐私泄露,校验不严导致的任意密码修改,校验不严导致的电子商城支付漏洞等等。
然而,由于逻辑漏洞自身难以发现,并且依赖手工测试的特点,如何高效的检测逻辑漏洞已经成为Web安全一大难题。工业界目前针对Web漏洞的主流扫描工具,包括AWVS、Nessus、OWASP Zed、北极熊扫描器等,均不支持对Web逻辑漏洞进行自动化的高效检测。以中通安全团队开源的越权漏洞检测工具为例,该工具通过对捕获的HTTP数据包进行处理,替换(或置空)数据包中的身份令牌并重放数据包以识别越权漏洞的存在。由于技术本身的限制,该型工具无法定位和识别除越权漏洞以外的其他逻辑漏洞,在实际应用过程中具有较大的限制。
目前,针对Web逻辑漏洞的定位和检测,需要经过经验丰富的渗透测试工程师进行工序繁琐的渗透测试和代码审计以后才可以发现,并且由于工程师专业素养的差距和技术条件限制,难以批量化、标准化的进行逻辑漏洞的识别和检测。因此,迫切需要一种网站逻辑漏洞检测工具实现程序中潜在的逻辑漏洞定位,避免业务正常逻辑受到干扰。
发明内容
为了实现上述目的,本发明提供了一种基于有限状态机的网站逻辑漏洞检测方法和系统,该方法基于有限状态机理论构建特征属性图,在应用逻辑层面构建用户行为模型,然后生成测试用例以检测Web逻辑漏洞。
本发明采用如下技术方案:
一种基于有限状态机的网站逻辑漏洞检测方法,包括以下步骤:
步骤1:读取数据库日志与网络请求序列,匹配数据行为和网络请求的对应关系,得到每次网络请求对应的数据操作信息;
步骤2:根据数据操作信息,获取每一次网络请求对应的安全属性,确定关键节点和安全性无关节点;
步骤3:建立有限状态机,对网络的业务逻辑进行建模,得到特征属性图模型,以表示用户操作的逻辑行为模式;
步骤4:在原始网络请求的基础上进行参数变异,生成新的测试用例,并对新测试用例的执行效果进行评估,根据不同的变异对象判定不同类型的逻辑漏洞。
作为本发明的优选实施方式,所述的步骤1包括:
(1-1)获取用户每一次访问网站产生的HTTP数据包和对应的时间戳,以及读取服务端的数据库日志文件;
(1-2)解析数据库日志文件,获取日志文件中的时间戳和原始执行的SQL语句,提取原始SQL语句中涉及的表名和列名信息,可基于Python的sql_metadata模块实现;
(1-3)解析HTTP数据包,获取每一个数据包产生后的浏览器URL地址(可以从浏览器标签页中获取URL地址),记录URL地址变化期间产生的HTTP数据包以及对应的时间戳;
(1-4)将SQL语句时间戳和HTTP数据包的时间戳进行匹配,获得每次URL跳转事件期间所有HTTP数据包对应产生的数据操作信息。
作为本发明的优选实施方式,所述的步骤2具体为:
判断每一次网络请求对应的数据操作信息,若数据操作不包含对数据的增删改操作(即UPDATE DELETE INSERT),且不包含用户标识的与安全性相关的关键表名与字段名的查询操作(即SELECT),则认为该网络请求与安全性无关,将该网络请求对应的URL地址定义为安全性无关节点;否则,将该网络请求对应的URL地址定义为关键节点。
作为本发明的优选实施方式,所述的关键节点包括查询节点、修改节点、删除节点和增添节点;所述的查询节点为包含用户标识的与安全性相关的关键表名与字段名的数据查询操作网络请求对应的URL地址,所述的修改节点为数据的数据修改操作网络请求对应的URL地址,所述的删除节点为数据删除操作网络请求对应的URL地址,增添节点为数据添加操作网络请求对应的URL地址。
步骤3中,采用有限状态机理论构建特征属性图,可以具体的描述用户从访问网站开始的各种操作及逻辑转换过程,有效的表述网站逻辑转换信息,从而快速定位逻辑漏洞节点。作为本发明的优选实施方式,所述的步骤3包括:
(3-1)将包含用户标识的与安全性相关的关键表名与字段名的查询操作对应的查询节点作为有限状态机初始节点,构建属性图;
(3-2)每次用户操作涉及URL地址转换时,在属性图上创建新节点,新节点的名称为对应的URL地址,并将新URL地址下所有网络请求对应的数据操作信息(HTTP状态码、请求结果等)作为新节点属性,将触发URL跳转的网络请求作为连接两个相邻节点的边;
(3-3)重复步骤(3-2),直至创建完成的新节点为修改节点、删除节点或增添节点,则将该节点的下一节点作为终止节点。若一直到网络请求序列结束,仍然没有找到对应修改节点、删除节点或增添节点的网络请求,则将属性图的初始节点作为独立查询节点。
该步骤3中,所述的节点定义为用户浏览器的URL地址,状态转换定义为浏览器URL地址跳转。例如,当用户访问地址A,此时用户浏览器地址栏显示地址A,即认为用户当前处在节点A中,无论用户在当前节点进行任何操作(鼠标点击、输入、调整页面大小等)均不会引发节点跳转。当用户单击每个按钮或点击某个URL地址,使当前用户浏览器地址栏显示的地址转换为B时,认为用户从上一个节点A发生状态转换至当前节点B。
作为本发明的优选实施方式,所述的步骤4包括:
(4-1)识别构成特征属性图模型的边的网络请求中的参数类型,分为int类型、String类型、以及cookies类型;
(4-2)若原始网络请求的参数属于int类型,则对所述的原始网络请求分别进行代数运算、置零运算以及取反运算,生成新的测试用例;
若原始网络请求的参数属于String类型,则在所述的原始网络请求对应的邻近网络请求中选择最接近的字符串参数进行替换,生成新的测试用例;
若原始网络请求的参数属于cookies类型,则将所述的原始网络请求的cookies值置空,生成新的测试用例;
(4-3)执行新生成的测试用例,测试新生成的测试用例是否可以复现步骤3中的特征属性图模型中的轨迹,若可以,则网站存在逻辑漏洞,根据新的测试用例的类型判断逻辑漏洞类型:对于int类型或String类型的测试用例,如果可以复现,则认为存在“参数未校验”类型的逻辑漏洞;对于cookies类型的测试用例,如果可以复现,则认为存在“越权”类型的逻辑漏洞;
若不可以,则网站不存在逻辑漏洞。
本发明还提出了一种基于有限状态机的网站逻辑漏洞检测系统,用于实现上述的网站逻辑漏洞检测方法,所述的网站逻辑漏洞检测系统包括:
用户操作追踪模块,其用于读取数据库日志与网络请求序列,匹配数据行为和网络请求的对应关系,得到每次网络请求对应的数据操作信息。
属性图建模模块,其用于根据数据操作信息,获取每一次网络请求对应的安全属性,确定关键节点和安全性无关节点;以及用于建立基于有限状态机的特征属性图模型,以表示用户操作的逻辑行为模式;属性图建模模块所需的建模信息均由用户操作追踪模块提供。
测试用例生成与执行模块,其用于根据用户操作追踪模块提供的原始网络请求,以及属性图建模模块提供的特征属性图模型,在int类型、String类型以及cookies类型三个层面上生成新的测试用例,评估并判断逻辑漏洞的存在性及类型,例如,可采用Python的request-html模块基于无头浏览器精准重放测试用例以实现检测。
作为本发明的优选实施方式,所述的用户操作追踪模块包括:
用户操作收集器,其部署于客户端浏览器,用于捕获用户的网络请求序列,并监控浏览器地址栏的跳转情况,将地址跳转期间的网络请求序列定义为一次用户操作;
用户数据追踪器,其部署于服务端,用于读取服务端数据库日志,并解析每次地址跳转期间涉及的SQL语句,匹配每一次用户操作与其引发的数据库行为进行匹配。
与现有技术相比,本发明的有益效果为:
本发明通过采集用户行为和用户行为触发的数据信息,对Web应用程序进行业务逻辑级建模。建模时同时考虑网络层面与数据层面的信息,可以精准建模网站用户的真实逻辑行为。通过三个维度生成的测试用例,可以准确判断逻辑漏洞是否存在,并推测出逻辑漏洞的具体类型。
附图说明
图1为本发明提出的基于有限状态机的网站逻辑漏洞检测方法的示意图;
图2为用户操作追踪模块流程图;
图3为安全敏感识别流程图;
图4为属性图建模模块流程图;
图5为生成与验证测试用例流程图。
具体实施方式
下面结合附图和实施例对本发明进一步详细阐述,需要指出的是,以下所述实例旨在进一步说明本发明的技术流程与细节,而不对其产生任何限定作用。
本发明通过用户操作追踪模块、属性图建模模块以及测试用例生成与执行模块实现网站逻辑漏洞检测。如图1所示,主要工作流程具体如下:当用户访问Web应用程序后,用户操作追踪模块获取用户产生的HTTP请求信息以及URL地址,并且读取服务器的数据库日志文件以获取日志信息。基于用户操作追踪模块获取的信息,属性图建模模块对Web应用程序的业务逻辑进行建模,得到特征属性图模型以表示用户操作的逻辑行为模式。在原始HTTP请求信息的基础上对参数进行变异,生成新的测试用例,并对测试用例的执行效果进行评估,根据不同的变异对象判定不同类型的逻辑漏洞。
在本发明的一项具体实施中,考虑如下实例,某新闻浏览与讨论Web程序提供首页A(index.php),新闻浏览页面B(news.php)以及用户个人信息页面C(user.php)。在所述的用户个人信息页面C中,提供个人密码修改功能,用户需要首先输入正确的原密码以通过验证,然后输入新密码以完成密码修改。
针对上述实例,进行如下操作:
(1)用户操作追踪模块追踪用户在网络层面和数据层面的操作序列,为建模提供足够的信息依据,其过程如图2所示。用户在浏览器中依据上述实例过程访问Web应用程序,用户操作追踪模块提取每一次访问中产生的HTTP数据包及其对应的时间戳。该过程产生的HTTP数据包包括访问首页的第一数据包、由首页跳转至新闻页面的第二数据包、由新闻页面跳转至用户个人主页的第三数据包、用户输入旧密码并发送给服务器验证的第四数据包、用户输入新密码并发送给服务器进行密码修改的第五数据包。
用户操作追踪模块通过对这些HTTP数据包进行处理以提取建模所需的信息,过程如下:
(1-1)获取每一个数据包产生后的浏览器URL地址。
(1-2)解析并获取每一个数据包产生的时间戳。
(1-3)读取服务端的数据库日志文件,对日志文件记录的SQL语句进行提取并获得时间戳。
(1-4)将SQL语句时间戳与HTTP数据包的时间戳进行匹配,获得每次浏览器URL地址跳转期间所有HTTP数据包对应产生的数据操作信息。
(2)利用上一步获得的数据操作信息,提取节点信息并识别与安全性相关的节点,如图3所示,该过程包括:
(2-1)提取节点。将每一个浏览器URL地址作为一个节点,在该节点上发生的所有HTTP请求导致的服务端数据操作均作为该节点的属性。
(2-2)标注节点属性,识别节点的安全敏感性。
根据HTTP数据包对应的数据操作信息,判断节点是否涉及对数据的增删改操作,以及是否包含用户标识的与安全性相关的关键表名与字段名的查询操作,若否,则将该节点属性标记为安全无关节点;若是,则将该节点属性标记为安全敏感节点。
继续对安全敏感节点进行分类,若该节点涉及的数据操作信息为对某数据库字段的查询操作,将其作为安全敏感的查询节点。若该节点涉及对某数据库字段的修改操作,将其作为安全敏感的修改节点。在本实例中,用户个人主页为安全敏感节点,因为其同时包含对数据库中密码字段的查询和修改操作。
(3)基于有限状态机理论构建特征属性图模型,如图4所示,该过程如下:
(3-1)识别建模起点。将安全敏感的查询节点作为模型初始节点q0。在本实例中,用户输入原始密码的页面对应的浏览器URL地址为初始节点。
(3-2)新增模型节点。从初始节点q0出发,标记用户每次进入的新的节点qx,并将节点名称和属性标注于节点上;例如,可以使用请求脚本文件地址、GET请求参数、POST请求参数、HTTP-Referer、Cookies来表示一个逻辑转换的输入激活变量,同时使用目的脚本地址来与GET参数名组合作为节点名称,并使用HTTP状态码、数据库操作标识以及HTTP响应体长度作为附加属性,表述一个Web页面唯一的请求状态。
以导致该节点发生跳转的HTTP请求作为边,连接每一个模型节点。在本实例中,通过原密码验证后进入的新密码输入界面对应的浏览器URL地址为第一个新增节点。
(3-3)识别结束节点。当模型构建至安全敏感的修改节点qF时,建模进入结束阶段,将该节点的下一个节点作为结束节点。在本实例中,显示成功修改密码的页面对应的浏览器URL地址为结束节点。
(4)基于模型信息生成并复现测试用例,判断逻辑漏洞的类型与存在性,如图5所示,该过程包括:
(4-1)生成每一轮测试用例,并仅在一个HTTP请求上发生一次变异,变异类型包括int类型变异、String类型变异和cookies类型变异。
对于每一次的int类型变异,简单代数运算为分别进行加1操作和减1操作;指令操作为对原数值设置为0;取反操作为对原数值乘-1实现。
对于每一次String类型变异,在临近的HTTP请求中寻找其他的String类型参数。例如,在本该实例中,用户输入的原始密码为“abcdefg”,用户输入的新密码为“aaaaaaa”。由于这两个参数类型相同,长度最接近(相同),则将原始的参数“abcdefg”变异为新参数“aaaaaaa”。
对于每一次cookies类型变异,将原始请求的一个cookies值置换为NULL。
(4-2)对变异后生成的测试用例,通过无头浏览器复现用户请求序列,即测试新生成的测试用例是否可以复现与步骤(3)相同的特征属性图模型。对于通过int类型或String类型变异的测试用例,如果可以正确复现,则认为存在“参数未校验”类型的逻辑漏洞;对于通过cookies变异生成的测试用例,如果可以正确复现,则认为存在“越权”类型的逻辑漏洞。
在本实例中,经过若干轮测试用例的生成与复现,最终对原密码验证阶段的HTTP请求中的String类型原密码字段进行变异,将原始模型中正确的原密码参数修改为其他String类型参数。由于该实例缺乏对于原密码的正确性验证操作,因此经过该变异后生成的测试用例可以正确的执行,并顺利的完成密码修改操作,可以判定该程序在原密码验证阶段存在“参数未校验”类型的逻辑漏洞。
以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。
Claims (10)
1.一种基于有限状态机的网站逻辑漏洞检测方法,其特征在于,包括以下步骤:
步骤1:读取数据库日志与网络请求序列,匹配数据行为和网络请求的对应关系,得到每次网络请求对应的数据操作信息;
步骤2:根据数据操作信息,获取每一次网络请求对应的安全属性,确定关键节点和安全性无关节点;
步骤3:建立有限状态机,对网络的业务逻辑进行建模,得到特征属性图模型,以表示用户操作的逻辑行为模式;
步骤4:在原始网络请求的基础上进行参数变异,生成新的测试用例,并对新测试用例的执行效果进行评估,根据不同的变异对象判定不同类型的逻辑漏洞。
2.根据权利要求1所述的基于有限状态机的网站逻辑漏洞检测方法,其特征在于,所述的步骤1包括:
(1-1)获取用户每一次访问网站产生的HTTP数据包和对应的时间戳,以及读取服务端的数据库日志文件;
(1-2)解析数据库日志文件,获取日志文件中的时间戳和原始执行的SQL语句,提取原始SQL语句中涉及的表名和列名信息;
(1-3)解析HTTP数据包,获取每一个数据包产生后的浏览器URL地址,记录URL地址变化期间产生的HTTP数据包以及对应的时间戳;
(1-4)将SQL语句时间戳和HTTP数据包的时间戳进行匹配,获得每次URL跳转事件期间所有HTTP数据包对应产生的数据操作信息。
3.根据权利要求1所述的基于有限状态机的网站逻辑漏洞检测方法,其特征在于,所述的步骤2具体为:
判断每一次网络请求对应的数据操作信息,若数据操作不包含对数据的增删改操作,且不包含用户标识的与安全性相关的关键表名与字段名的查询操作,则认为该网络请求与安全性无关,将该网络请求对应的URL地址定义为安全性无关节点;否则,将该网络请求对应的URL地址定义为关键节点。
4.根据权利要求3所述的基于有限状态机的网站逻辑漏洞检测方法,其特征在于,所述的关键节点包括查询节点、修改节点、删除节点和增添节点;所述的查询节点为包含用户标识的与安全性相关的关键表名与字段名的数据查询操作网络请求对应的URL地址,所述的修改节点为数据的数据修改操作网络请求对应的URL地址,所述的删除节点为数据删除操作网络请求对应的URL地址,增添节点为数据添加操作网络请求对应的URL地址。
5.根据权利要求4所述的基于有限状态机的网站逻辑漏洞检测方法,其特征在于,所述的步骤3包括:
(3-1)将包含用户标识的与安全性相关的关键表名与字段名的查询操作对应的查询节点作为有限状态机初始节点,构建属性图;
(3-2)每次用户操作涉及URL地址转换时,在属性图上创建新节点,新节点的名称为对应的URL地址,并将新URL地址下所有网络请求对应的数据操作信息作为新节点属性,将触发URL跳转的网络请求作为连接两个相邻节点的边;
(3-3)重复步骤(3-2),直至创建完成的新节点为修改节点、删除节点或增添节点,则将该节点的下一节点作为终止节点。
6.根据权利要求5所述的基于有限状态机的网站逻辑漏洞检测方法,其特征在于,所述的步骤(3-3)中,若一直到网络请求序列结束,仍然没有找到对应修改节点、删除节点或增添节点的网络请求,则将属性图的初始节点作为独立查询节点。
7.根据权利要求1所述的基于有限状态机的网站逻辑漏洞检测方法,其特征在于,所述的步骤4包括:
(4-1)识别构成特征属性图模型的边的网络请求中的参数类型,分为int类型、string类型、以及cookies类型;
(4-2)若原始网络请求的参数属于int类型,则对所述的原始网络请求分别进行代数运算、置零运算以及取反运算,生成新的测试用例;
若原始网络请求的参数属于String类型,则在所述的原始网络请求对应的邻近网络请求中选择最接近的字符串参数进行替换,生成新的测试用例;
若原始网络请求的参数属于cookies类型,则将所述的原始网络请求的cookies值置空,生成新的测试用例;
(4-3)执行新生成的测试用例,测试新生成的测试用例是否可以复现步骤3中的特征属性图模型中的轨迹,若可以,则网站存在逻辑漏洞,根据新的测试用例的类型判断逻辑漏洞类型;若不可以,则网站不存在逻辑漏洞。
8.根据权利要求7所述的基于有限状态机的网站逻辑漏洞检测方法,其特征在于,对于int类型或String类型的测试用例,如果可以复现,则认为存在“参数未校验”类型的逻辑漏洞;对于cookies类型的测试用例,如果可以复现,则认为存在“越权”类型的逻辑漏洞。
9.一种基于有限状态机的网站逻辑漏洞检测系统,用于实现权利要求1所述的网站逻辑漏洞检测方法,其特征在于,所述的网站逻辑漏洞检测系统包括:
用户操作追踪模块,其用于读取数据库日志与网络请求序列,匹配数据行为和网络请求的对应关系,得到每次网络请求对应的数据操作信息;
属性图建模模块,其用于根据数据操作信息,获取每一次网络请求对应的安全属性,确定关键节点和安全性无关节点;以及用于建立基于有限状态机的特征属性图模型,以表示用户操作的逻辑行为模式;
测试用例生成与执行模块,其用于根据用户操作追踪模块提供的原始网络请求,以及属性图建模模块提供的特征属性图模型,在int类型、String类型以及cookies类型三个层面上生成新的测试用例,评估并判断逻辑漏洞的存在性及类型。
10.根据权利要求9所述的基于有限状态机的网站逻辑漏洞检测系统,其特征在于,所述的用户操作追踪模块包括:
用户操作收集器,其部署于客户端浏览器,用于捕获用户的网络请求序列,并监控浏览器地址栏的跳转情况,将地址跳转期间的网络请求序列定义为一次用户操作;
用户数据追踪器,其部署于服务端,用于读取服务端数据库日志,并解析每次地址跳转期间涉及的SQL语句,匹配每一次用户操作与其引发的数据库行为进行匹配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210409638.5A CN114844689A (zh) | 2022-04-19 | 2022-04-19 | 一种基于有限状态机的网站逻辑漏洞检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210409638.5A CN114844689A (zh) | 2022-04-19 | 2022-04-19 | 一种基于有限状态机的网站逻辑漏洞检测方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114844689A true CN114844689A (zh) | 2022-08-02 |
Family
ID=82565069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210409638.5A Pending CN114844689A (zh) | 2022-04-19 | 2022-04-19 | 一种基于有限状态机的网站逻辑漏洞检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114844689A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115329753A (zh) * | 2022-10-13 | 2022-11-11 | 北京谊慧信息技术有限公司 | 一种基于自然语言处理的智能数据分析方法和系统 |
CN117034273A (zh) * | 2023-08-28 | 2023-11-10 | 山东省计算中心(国家超级计算济南中心) | 基于图卷积网络的安卓恶意软件检测方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190361766A1 (en) * | 2017-02-08 | 2019-11-28 | Huawei Technologies Co., Ltd. | System and Method for Failure Management Using Distributed Execution Traces |
CN111064735A (zh) * | 2019-12-25 | 2020-04-24 | 南开大学 | 一种电力信息系统sql注入漏洞检测方法及系统 |
CN113221120A (zh) * | 2021-05-19 | 2021-08-06 | 西北工业大学太仓长三角研究院 | 一种面向物联网应用规则的漏洞检测方法及系统 |
-
2022
- 2022-04-19 CN CN202210409638.5A patent/CN114844689A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190361766A1 (en) * | 2017-02-08 | 2019-11-28 | Huawei Technologies Co., Ltd. | System and Method for Failure Management Using Distributed Execution Traces |
CN111064735A (zh) * | 2019-12-25 | 2020-04-24 | 南开大学 | 一种电力信息系统sql注入漏洞检测方法及系统 |
CN113221120A (zh) * | 2021-05-19 | 2021-08-06 | 西北工业大学太仓长三角研究院 | 一种面向物联网应用规则的漏洞检测方法及系统 |
Non-Patent Citations (1)
Title |
---|
姜百合;傅建明;王应军;王亚丽;黄坚伟;: "基于Fuzzing技术的云数据泄露漏洞检测", 武汉大学学报(理学版), no. 02, 28 February 2018 (2018-02-28) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115329753A (zh) * | 2022-10-13 | 2022-11-11 | 北京谊慧信息技术有限公司 | 一种基于自然语言处理的智能数据分析方法和系统 |
CN117034273A (zh) * | 2023-08-28 | 2023-11-10 | 山东省计算中心(国家超级计算济南中心) | 基于图卷积网络的安卓恶意软件检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210382949A1 (en) | Systems and methods for web content inspection | |
Aliero et al. | An algorithm for detecting SQL injection vulnerability using black-box testing | |
Gupta et al. | PHP-sensor: a prototype method to discover workflow violation and XSS vulnerabilities in PHP web applications | |
CN112131882A (zh) | 一种多源异构网络安全知识图谱构建方法及装置 | |
CN103888490B (zh) | 一种全自动的web客户端人机识别的方法 | |
KR101676366B1 (ko) | 사이버 공격 대응을 위한 악성코드 침해 경로 및 행위 추적을 수행하는 침해 공격 추적 시스템 및 방법 | |
CN114844689A (zh) | 一种基于有限状态机的网站逻辑漏洞检测方法及系统 | |
CN114003903B (zh) | 一种网络攻击追踪溯源方法及装置 | |
CN114528457B (zh) | Web指纹检测方法及相关设备 | |
CN114915479A (zh) | 一种基于Web日志的Web攻击阶段分析方法及系统 | |
US11709764B2 (en) | Creating test cases for testing software using anonymized log data | |
Li et al. | LogicScope: Automatic discovery of logic vulnerabilities within web applications | |
Le et al. | Automated reverse engineering of role-based access control policies of web applications | |
Qu | Research on password detection technology of iot equipment based on wide area network | |
CN111125704B (zh) | 一种网页挂马识别方法及系统 | |
KR101464736B1 (ko) | 정보보호 관리 시스템 및 이를 통한 홈페이지 위변조 탐지 방법 | |
CN111898126A (zh) | 一种基于动态获取用户界面的Android重打包应用检测方法 | |
CN112015715A (zh) | 工业互联网数据管理服务测试方法及系统 | |
CN116094808A (zh) | 基于RBAC模式Web应用安全的访问控制漏洞检测方法及系统 | |
CN112446030B (zh) | 一种网页端的文件上传漏洞检测方法和装置 | |
CN111934949A (zh) | 一种基于数据库注入测试的安全测试系统 | |
Iyer et al. | Towards automated learning of access control policies enforced by web applications | |
Alata et al. | An automated approach to generate web applications attack scenarios | |
TWI726455B (zh) | 滲透測試個案建議方法及系統 | |
Horan | Open-Source Intelligence Investigations: Development and Application of Efficient Tools |
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 |