CN113761536B - 一种基于业务逻辑的安全检测方法及系统 - Google Patents
一种基于业务逻辑的安全检测方法及系统 Download PDFInfo
- Publication number
- CN113761536B CN113761536B CN202110850263.1A CN202110850263A CN113761536B CN 113761536 B CN113761536 B CN 113761536B CN 202110850263 A CN202110850263 A CN 202110850263A CN 113761536 B CN113761536 B CN 113761536B
- Authority
- CN
- China
- Prior art keywords
- vulnerability
- service
- characteristic value
- determining
- characteristic
- 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
-
- 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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于业务逻辑的安全检测方法及系统,其中方法包括:步骤S1:基于用户的业务行为,建立业务逻辑矩阵;步骤S2:基于预设的漏洞检测规则和业务逻辑矩阵,确定存在的业务逻辑漏洞。本发明的基于业务逻辑的安全检测方法,基于用户处理业务的业务逻辑出发,对用户处理业务的安全性进行检测,通过检测发现用户处理业务的漏洞,进而实现对漏洞的有效处理,保障用户的信息的安全。
Description
技术领域
本发明涉及信息安全技术领域,特别涉及一种基于业务逻辑的安全检测方法及系统。
背景技术
随着软件规模增大,软件面临的安全威胁类型也日益增加,如银行和互联网金融软件为用户处理业务的时候,因为用户的信息要经过很多种逻辑处理过程,在这期间用户隐私数据很容易发生泄露。因此,对用户处理业务时的安全性进行检测是亟需解决的技术问题。
发明内容
本发明提供一种基于业务逻辑的安全检测方法,基于用户处理业务的业务逻辑出发,对用户处理业务的安全性进行检测,通过检测发现用户处理业务的漏洞,进而实现对漏洞的有效处理,保障用户的信息的安全。
本发明还提供一种基于业务逻辑的安全检测方法,包括:
步骤S1:基于用户的业务行为,建立业务逻辑矩阵;
步骤S2:基于预设的漏洞检测规则和业务逻辑矩阵,确定存在的业务逻辑漏洞。
优选的,步骤S1,基于用户的业务行为,建立业务逻辑矩阵,包括:
获取用户的业务行为;
基于业务行为,确定用户的业务执行步骤;
解析业务执行步骤,确定业务逻辑;
基于业务逻辑,构建业务逻辑矩阵。
优选的,获取用户的业务行为,包括:
接收用户的业务办理请求;
解析业务办理请求,确定业务办理请求对应的业务行为。
优选的,基于业务行为,确定用户的业务执行步骤,包括:
获取业务行为对应的源代码;
基于源代码,生成语法树;
解析语法树,确定语法树结构;
查找语法树结构中的结构链路,基于结构链路得到语法树的执行顺序;
基于执行顺序,建立代码执行步骤,对代码执行步骤进行分析转换,得到业务执行步骤。
优选的,解析业务执行步骤,确定业务逻辑,包括:
基于预设的逻辑关键词表,对业务执行步骤进行关键词提取,确定多个关键词;
基于关键词,查询预设的业务逻辑库,确定业务逻辑。
优选的,步骤S2:基于预设的漏洞检测规则和业务逻辑矩阵,确定存在的业务逻辑漏洞,包括:
根据业务逻辑矩阵的特征确定特征提取数据;
根据业务逻辑中的元素确定归一化数据;
将特征提取数据与归一化数据进行精度匹配,得到特征提取矩阵;
将业务逻辑矩阵和特征提取矩阵进行计算,得到特征值矩阵;
基于特征值矩阵和漏洞检测规则确定业务逻辑漏洞。
优选的,漏洞检测规则,确定过程如下:
获取历史业务数据;
将历史业务数据导入预设的机器学习模型;
根据机器学习模型的训练结果,筛选出存在业务逻辑漏洞的漏洞数据,并确定漏洞数据的漏洞类型;
对历史业务数据进行归一化处理,得到历史标准数据;
对历史标准数据进行特征提取,得到历史标准数据的特征值;
基于特征值,确定历史标准数据中存在业务逻辑漏洞的漏洞数据的漏洞类型所对应的特征值取值范围;
基于特征值取值范围,将历史标准数据划分为多个特征数据集合,并获取每个特征数据集合对应的漏洞类型;
将特征数据集合以特征值为单位建立坐标系,坐标系表示特征值与漏洞类型之间的对应关系,获取特征数据集合中特征数据的坐标点;
对坐标系中的坐标点进行分析,获取存在漏洞类型重叠的特征值范围内的第一坐标点;
基于第一坐标点的漏洞类型,对第一坐标点进行分类,得到第二坐标点和第三坐标点;
获取第二坐标点、第三坐标点的坐标分布,将坐标分布依次输入至中心获取模型中,分别得到第二坐标点、第三坐标点的第二中心特征值、第三中心特征值;
将第二中心特征值、第三中心特征值的平均值作为第一中心特征值,作为漏洞类型重叠的特征分界值;
基于特征分界值对不同的漏洞类型对应的特征值取值范围进行调整;
基于调整后的不同的漏洞类型对应的特征值取值范围,确定漏洞检测规则。
优选的基于业务逻辑的安全检测方法,还包括:对漏洞检测规则的准确性进行检测,其过程如下:
对漏洞检测规则进行解析,确定漏洞检测规则中漏洞类型的个数、每个漏洞类型中历史标准数据集合的个数、历史标准数据集合中的历史标准数据对应的平均特征值大小;
确定漏洞检测规则中漏洞类型的个数,并根据如下公式计算漏洞检测规则中各个漏洞类型的检测准确值:
其中,Qi表示漏洞检测规则中第i个漏洞类型的检测准确值,S表示漏洞检测规则中漏洞类型的个数,m表示第i个漏洞类型中历史标准数据集合的个数,Bj表示第i个漏洞类型中第j个历史标准数据集合中的历史标准数据对应的平均特征值,P1表示第i个漏洞类型中特征取值范围的左边界特征值,P2表示第i个漏洞类型中特征取值范围的右边界特征值,δi第i个漏洞类型的标准特征值,取值为(0.2,1);e表示自然常数,取值为2.72,K表示漏洞检测规则在检测过程中的检测稳定值,取值为[0.7,0.9];
将漏洞检测规则中各个漏洞类型输入至难度检测模型中,输出各个漏洞类型的检测难度结果,基于检测难度结果为各个漏洞类型设置权重值;
基于各个漏洞类型设置权重值,并根据如下公式计算漏洞检测规则的总体准确值:
其中,Qz表示漏洞检测规则的总体准确值,γi表示第i个漏洞类型的权重值,取值范围为(0.8,1.2);
判断漏洞检测规则的总体准确值是否大于预设准确值;
若是,确定漏洞检测规则能够检测执行每个业务执行步骤时存在的业务逻辑漏洞;
否则,重新调整漏洞检测规则中漏洞类型的特征值范围,直到满足预设准确值。
本发明还提供一种基于业务逻辑的安全检测系统,包括:
建立模块,基于用户的业务行为,建立业务逻辑矩阵;
确定模块,用于基于预设的漏洞检测规则和业务逻辑矩阵,确定存在的业务逻辑漏洞。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中一种基于业务逻辑的安全检测方法的流程图;
图2为本发明实施例中一种基于业务逻辑的安全检测系统的结构图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例提供一种基于业务逻辑的安全检测方法,如图1所示,包括:
步骤S1:基于用户的业务行为,建立业务逻辑矩阵;
步骤S2:基于预设的漏洞检测规则和业务逻辑矩阵,确定存在的业务逻辑漏洞。
优选的,步骤S1,基于用户的业务行为,建立业务逻辑矩阵,包括:
获取用户的业务行为;
基于业务行为,确定用户的业务执行步骤;
解析业务执行步骤,确定业务逻辑;
基于业务逻辑,构建业务逻辑矩阵。
·该实施例中,用户的业务行为例如是向银行办理借贷业务,其对应的业务执行步骤为1、借款人向银行提出贷款申请,提交相关材料;2、经银行审批同意的,借款人和担保人与本机构签订借款合同和担保合同;3、银行落实贷款条件后,按规定程序办理放款手续,将贷款资金划入借款人账户;4、借款人按期归还贷款本息;5、贷款结清,到银行办理撤押手续。
·在该实施例中,业务执行步骤对应的业务逻辑为基于业务执行步骤得到的领域实体:借款人、银行办理人员、担保人等;业务规则:提交了材料,银行才会同意、办理了手续,才会放款等;数据完整性:必须有借款人和担保人的身份信息等;工作流:提交材料-银行同意-签订合同-办理手续-发放贷款-归还贷款利息-办理撤押手续。业务逻辑矩阵为基于业务逻辑得到矩阵映射关系,得到的体现业务逻辑的矩阵。
·在该实施例中,业务逻辑漏洞是应用程序的设计和实现中的缺陷,攻击者可以利用这些缺陷引发意外行为。这可能使攻击者能够操纵合法功能来实现恶意行为。这些缺陷通常是由于无法预期可能发生的异常应用程序状态,因此无法安全处理它们所导致的。例如在借款人按期归还贷款本息,如果开发人员规定用户将仅通过Web浏览器传递数据,则应用程序可能完全依赖不安全的客户端来验证输入。攻击者可以使用拦截代理轻松绕过这些漏洞。
·在该实施例中,述漏洞检测规则包括:越权检测规则、涉敏检测规则、大权检测规则、弱口令检测规则、行为基线异常检测规则等,
上述设计方案的有益效果是:通过对将用户业务行为转化为业务执行步骤,并根据漏洞检测规则来确定执行每个业务执行步骤时存在的业务逻辑漏洞,不需要标注与业务逻辑相关语义,从而提高安全检测的效率,提醒及时进行漏洞修复,解决了业务处理过程中引起的业务安全问题,提高软件的适用性。
在一个实施例中,获取用户的业务行为,包括:
接收用户的业务办理请求;
解析业务办理请求,确定业务办理请求对应的业务行为。
上述技术方案的有益效果是:通过根据用户的业务办理请求确定用户的业务请求,提高用户的业务请求的准确性,为安全检测提供基础。
在一个实施例中,基于业务行为,确定用户的业务执行步骤,包括:
获取业务行为对应的源代码;
基于源代码,生成语法树;
解析语法树,确定语法树结构;
查找语法树结构中的结构链路,基于结构链路得到语法树的执行顺序;
基于执行顺序,建立代码执行步骤,对代码执行步骤进行分析转换,得到业务执行步骤。
上述技术方案的工作原理为:
可以将语法树输入语法分析模型对初始语法树进行优化,具体为基于语法分析模型对语法树进行分析,修正语法树中部分源代码的语法错误。
语法树的执行顺序即源代码的执行顺序,例如先执行if语句再执行whlie语句等。
在该实施例中,语法树的节点类型包括元素、文本等。
在该实施例中,语法树的节点位置为对应的节点在整个语法树中的位置。
在该实施例中,结构链路表示由节点之间的连接关系组成的完整的链路。
上述技术方案的有益效果是:通过根据业务行为,对业务行为建立语法树结构,确定用户的业务执行步骤,提高了获取的业务执行步骤的精确性,为安全检测提供基础。
在一个实施例中,解析业务执行步骤,确定业务逻辑,包括:
基于预设的逻辑关键词表,对业务执行步骤进行关键词提取,确定多个关键词;
基于关键词,查询预设的业务逻辑库,确定业务逻辑。
在该实施例中,关键词例如是“求和”、“加密”等。
在该实施例中,业务逻辑是指是只用代码实现的真实业务的规则映射。
上述设计方案的有益效果是:通过对业务执行步骤进行语义分析得到对应业务逻辑,为后续基于业务逻辑的安全检测提供基础。
在一个实施例中,步骤S2:基于预设的漏洞检测规则和业务逻辑矩阵,确定存在的业务逻辑漏洞,包括:
根据业务逻辑矩阵的特征确定特征提取数据;
根据业务逻辑中的元素确定归一化数据;
将特征提取数据与归一化数据进行精度匹配,得到特征提取矩阵;
将业务逻辑矩阵和特征提取矩阵进行计算,得到特征值矩阵;
基于特征值矩阵和漏洞检测规则确定业务逻辑漏洞。
其中,特征提取矩阵由特征提取数据与归一化数据确定,用来与业务逻辑矩阵确定特征值矩阵。
根据漏洞检测规则检测执行每个业务执行步骤时存在的业务逻辑漏洞的原理如下:判断特征值矩阵中的特征值大小,确定业务逻辑是否存在业务逻辑漏洞,若存在,根据特征值大小所在的取值范围,确定业务逻辑漏洞的类型。
上述设计方案的有益效果是:基于业务逻辑矩阵,根据漏洞检测规则检测执行每个业务执行步骤时存在的业务逻辑漏洞,不需要标注与业务逻辑相关语义,从而提高安全检测的效率,解决了业务处理过程中引起的业务安全问题,提高软件的适用性。
在一个实施例中,漏洞检测规则,确定过程如下:
获取历史业务数据;
将历史业务数据导入预设的机器学习模型;
根据机器学习模型的训练结果,筛选出存在业务逻辑漏洞的漏洞数据,并确定漏洞数据的漏洞类型;
对历史业务数据进行归一化处理,得到历史标准数据;
对历史标准数据进行特征提取,得到历史标准数据的特征值;
基于特征值,确定历史标准数据中存在业务逻辑漏洞的漏洞数据的漏洞类型所对应的特征值取值范围;
基于特征值取值范围,将历史标准数据划分为多个特征数据集合,并获取每个特征数据集合对应的漏洞类型;
将特征数据集合以特征值为单位建立坐标系,坐标系表示特征值与漏洞类型之间的对应关系,获取特征数据集合中特征数据的坐标点;
对坐标系中的坐标点进行分析,获取存在漏洞类型重叠的特征值范围内的第一坐标点;
基于第一坐标点的漏洞类型,对第一坐标点进行分类,得到第二坐标点和第三坐标点;
获取第二坐标点、第三坐标点的坐标分布,将坐标分布依次输入至中心获取模型中,分别得到第二坐标点、第三坐标点的第二中心特征值、第三中心特征值;
将第二中心特征值、第三中心特征值的平均值作为第一中心特征值,作为漏洞类型重叠的特征分界值;
基于特征分界值对不同的漏洞类型对应的特征值取值范围进行调整;
基于调整后的不同的漏洞类型对应的特征值取值范围,确定漏洞检测规则。
其中,漏洞数据为出现业务逻辑漏洞所对应的数据。
不同的漏洞类型具有不同的特征,根据对这些特征进行分析处理,确认每个特征的特征值,从而反过来可以根据特征值的取值范围来分辨漏洞类型。
根据历史标准数据的特征值的不同,将历史标准数据划分为多个特征数据集合,例如第一特征数据集合中特征数据的取值范围为第一特征值范围,第二特征数据集合中特征数据的取值范围为第二特征值范围。
存在漏洞类型重叠的特征值范围例如第一类型的特征值范围为[0.4,0.7],第二类型的特征值范围为[0.5,0.9],则漏洞类型重叠的特征值范围为[0.5,0.7]。
述漏洞检测规则包括:越权检测规则、涉敏检测规则、大权检测规则、弱口令检测规则、行为基线异常检测规则等,这些规则对应不同的特征值范围,例如,若在执行步骤过程中,数据的特征值为0.5,而越权检测规则的特征值范围为[0.4,0.7],则执行步骤存在越权逻辑漏洞。
将特征数据以特征值为单位建立坐标系,来确定漏洞类型重叠的特征分界值,通过坐标系可以直观显示,提高获取的特征分界值的精确度。
上述技术方案的有益效果是:基于历史业务数据,确定漏洞检测规则,基于漏洞检测规则进行安全检测,提高了安全检测的效率。
在一个实施例中,基于业务逻辑的安全检测方法,还包括:对漏洞检测规则的准确性进行检测,其过程如下:
对漏洞检测规则进行解析,确定漏洞检测规则中漏洞类型的个数、每个漏洞类型中历史标准数据集合的个数、历史标准数据集合中的历史标准数据对应的平均特征值大小;
确定漏洞检测规则中漏洞类型的个数,并根据如下公式计算漏洞检测规则中各个漏洞类型的检测准确值:
其中,Qi表示漏洞检测规则中第i个漏洞类型的检测准确值,S表示漏洞检测规则中漏洞类型的个数,m表示第i个漏洞类型中历史标准数据集合的个数,Bj表示第i个漏洞类型中第j个历史标准数据集合中的历史标准数据对应的平均特征值,P1表示第i个漏洞类型中特征取值范围的左边界特征值,P2表示第i个漏洞类型中特征取值范围的右边界特征值,δi第i个漏洞类型的标准特征值,取值为(0.2,1);e表示自然常数,取值为2.72,K表示漏洞检测规则在检测过程中的检测稳定值,取值为[0.7,0.9];
将漏洞检测规则中各个漏洞类型输入至难度检测模型中,输出各个漏洞类型的检测难度结果,基于检测难度结果为各个漏洞类型设置权重值;
基于各个漏洞类型设置权重值,并根据如下公式计算漏洞检测规则的总体准确值:
其中,Qz表示漏洞检测规则的总体准确值,γi表示第i个漏洞类型的权重值,取值范围为(0.8,1.2);
判断漏洞检测规则的总体准确值是否大于预设准确值;
若是,确定漏洞检测规则能够检测执行每个业务执行步骤时存在的业务逻辑漏洞;
否则,重新调整漏洞检测规则中漏洞类型的特征值范围,直到满足预设准确值。
各个漏洞类型包括:越权漏洞类型、涉敏漏洞类型、大权漏洞类型、弱口令漏洞类型、行为基线异常漏洞类型等。
漏洞类型中漏洞类型的标准特征值为在漏洞类型下,漏洞类型的特征值取值出现频率最高的特征值,例如越权漏洞类型的特征值取值范围为[0.4,0.7],在越权漏洞类型数据中,数据的特征值取值出现频率最高的为0.5,则0.5即为越权漏洞类型的标准特征值。
历史标准数据集合为由多个历史业务得到的多个历史业务数据集合经过归一化处理得到的。
漏洞类型的难度检测越高,对应的权重值越大。
漏洞检测规则在检测过程中的检测稳定值与检测业务数据的数量有关,数量越少,稳定值越大。
不同的漏洞类型对应不同的特征值取值范围,例如越权漏洞类型的特征值取值范围为[0.4,0.7],则对应的左边界特征值为0.4,右边界特征值为0.7。
上述技术方案的有益效果是:通过对漏洞检测规则的准确性进行检测,提高了根据漏洞检测规则检测执行每个业务执行步骤时存在的业务逻辑漏洞时准确性,便于准确解决了业务处理过程中引起的业务安全问题。
本发明实施例提供一种基于业务逻辑的安全检测系统,如图2所示,包括:
建立模块,基于用户的业务行为,建立业务逻辑矩阵;
确定模块,用于基于预设的漏洞检测规则和业务逻辑矩阵,确定存在的业务逻辑漏洞。
上述技术方案的工作原理及有益效果在方法权利要求中已经说明,此处不再赘述。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (7)
1.一种基于业务逻辑的安全检测方法,其特征在于,包括:
步骤S1:基于用户的业务行为,建立业务逻辑矩阵;
所述步骤S1包括:
获取用户的业务行为;
基于所述业务行为,确定用户的业务执行步骤;
解析所述业务执行步骤,确定业务逻辑;
基于所述业务逻辑,构建所述业务逻辑矩阵;
步骤S2:基于预设的漏洞检测规则和所述业务逻辑矩阵,确定存在的业务逻辑漏洞;
漏洞检测规则的确定过程如下:
获取历史业务数据;
将所述历史业务数据导入预设的机器学习模型;
根据所述机器学习模型的训练结果,筛选出存在业务逻辑漏洞的漏洞数据,并确定所述漏洞数据的漏洞类型;
对所述历史业务数据进行归一化处理,得到历史标准数据;
对所述历史标准数据进行特征提取,得到所述历史标准数据的特征值;
基于所述特征值,确定所述历史标准数据中存在业务逻辑漏洞的漏洞数据的漏洞类型所对应的特征值取值范围;
基于所述特征值取值范围,将所述历史标准数据划分为多个特征数据集合,并获取每个特征数据集合对应的漏洞类型;
将所述特征数据集合以特征值为单位建立坐标系,所述坐标系表示特征值与所述漏洞类型之间的对应关系,获取特征数据集合中特征数据的坐标点;
对所述坐标系中的坐标点进行分析,获取存在漏洞类型重叠的特征值范围内的第一坐标点;
基于所述第一坐标点的漏洞类型,对所述第一坐标点进行分类,得到第二坐标点和第三坐标点;
获取所述第二坐标点、第三坐标点的坐标分布,将所述坐标分布依次输入至中心获取模型中,分别得到所述第二坐标点、第三坐标点的第二中心特征值、第三中心特征值;
将所述第二中心特征值、第三中心特征值的平均值作为第一中心特征值,作为所述漏洞类型重叠的特征分界值;
基于所述特征分界值对不同的漏洞类型对应的特征值取值范围进行调整;
基于调整后的不同的漏洞类型对应的特征值取值范围,确定漏洞检测规则。
2.如权利要求1所述的基于业务逻辑的安全检测方法,其特征在于,所述获取用户的业务行为,包括:
接收用户的业务办理请求;
解析所述业务办理请求,确定所述业务办理请求对应的所述业务行为。
3.如权利要求1所述的基于业务逻辑的安全检测方法,其特征在于,所述基于所述业务行为,确定用户的业务执行步骤,包括:
获取所述业务行为对应的源代码;
基于所述源代码,生成语法树;
解析所述语法树,确定所述语法树结构;
查找所述语法树结构中的结构链路,基于所述结构链路得到所述语法树的执行顺序;
基于所述执行顺序,建立代码执行步骤,对所述代码执行步骤进行分析转换,得到业务执行步骤。
4.根据权利要求1所述的基于业务逻辑的安全检测方法,其特征在于,所述解析所述业务执行步骤,确定业务逻辑,包括:
基于预设的逻辑关键词表,对所述业务执行步骤进行关键词提取,确定多个关键词;
基于所述关键词,查询预设的业务逻辑库,确定所述业务逻辑。
5.根据权利要求1所述的基于业务逻辑的安全检测方法,其特征在于,所述步骤S2:基于预设的漏洞检测规则和所述业务逻辑矩阵,确定存在的业务逻辑漏洞,包括:
根据业务逻辑矩阵的特征确定特征提取数据;
根据所述业务逻辑中的元素确定归一化数据;
将所述特征提取数据与所述归一化数据进行精度匹配,得到特征提取矩阵;
将所述业务逻辑矩阵和特征提取矩阵进行计算,得到特征值矩阵;
基于所述特征值矩阵和所述漏洞检测规则确定所述业务逻辑漏洞。
6.根据权利要求1所述的基于业务逻辑的安全检测方法,其特征在于,还包括:对所述漏洞检测规则的准确性进行检测,其过程如下:
对所述漏洞检测规则进行解析,确定所述漏洞检测规则中漏洞类型的个数、每个漏洞类型中历史标准数据集合的个数、所述历史标准数据集合中的历史标准数据对应的平均特征值大小;
确定所述漏洞检测规则中漏洞类型的个数,并根据如下公式计算所述漏洞检测规则中各个漏洞类型的检测准确值:
其中,表示所述漏洞检测规则中第i个漏洞类型的检测准确值,S表示所述漏洞检测
规则中漏洞类型的个数,m表示第i个漏洞类型中历史标准数据集合的个数,表示第i个漏
洞类型中第j个历史标准数据集合中的历史标准数据对应的平均特征值,表示第i个漏洞
类型中特征取值范围的左边界特征值,表示第i个漏洞类型中特征取值范围的右边界特
征值,第i个漏洞类型的标准特征值,取值为(0.2,1);e表示自然常数,取值为2.72,K表示
所述漏洞检测规则在检测过程中的检测稳定值,取值为[0.7,0.9];
将所述漏洞检测规则中各个漏洞类型输入至难度检测模型中,输出各个漏洞类型的检测难度结果,基于所述检测难度结果为所述各个漏洞类型设置权重值;
基于所述各个漏洞类型设置权重值,并根据如下公式计算所述漏洞检测规则的总体准确值:
判断所述漏洞检测规则的总体准确值是否大于预设准确值;
若是,确定所述漏洞检测规则能够检测执行每个业务执行步骤时存在的业务逻辑漏洞;
否则,重新调整所述漏洞检测规则中漏洞类型的特征值范围,直到满足预设准确值。
7.一种基于业务逻辑的安全检测系统,其特征在于,包括:
建立模块,基于用户的业务行为,建立业务逻辑矩阵,具体为:
获取用户的业务行为;
基于所述业务行为,确定用户的业务执行步骤;
解析所述业务执行步骤,确定业务逻辑;
基于所述业务逻辑,构建所述业务逻辑矩阵;
确定模块,用于基于预设的漏洞检测规则和所述业务逻辑矩阵,确定存在的业务逻辑漏洞;
漏洞检测规则的确定过程如下:
获取历史业务数据;
将所述历史业务数据导入预设的机器学习模型;
根据所述机器学习模型的训练结果,筛选出存在业务逻辑漏洞的漏洞数据,并确定所述漏洞数据的漏洞类型;
对所述历史业务数据进行归一化处理,得到历史标准数据;
对所述历史标准数据进行特征提取,得到所述历史标准数据的特征值;
基于所述特征值,确定所述历史标准数据中存在业务逻辑漏洞的漏洞数据的漏洞类型所对应的特征值取值范围;
基于所述特征值取值范围,将所述历史标准数据划分为多个特征数据集合,并获取每个特征数据集合对应的漏洞类型;
将所述特征数据集合以特征值为单位建立坐标系,所述坐标系表示特征值与所述漏洞类型之间的对应关系,获取特征数据集合中特征数据的坐标点;
对所述坐标系中的坐标点进行分析,获取存在漏洞类型重叠的特征值范围内的第一坐标点;
基于所述第一坐标点的漏洞类型,对所述第一坐标点进行分类,得到第二坐标点和第三坐标点;
获取所述第二坐标点、第三坐标点的坐标分布,将所述坐标分布依次输入至中心获取模型中,分别得到所述第二坐标点、第三坐标点的第二中心特征值、第三中心特征值;
将所述第二中心特征值、第三中心特征值的平均值作为第一中心特征值,作为所述漏洞类型重叠的特征分界值;
基于所述特征分界值对不同的漏洞类型对应的特征值取值范围进行调整;
基于调整后的不同的漏洞类型对应的特征值取值范围,确定漏洞检测规则。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110850263.1A CN113761536B (zh) | 2021-07-27 | 2021-07-27 | 一种基于业务逻辑的安全检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110850263.1A CN113761536B (zh) | 2021-07-27 | 2021-07-27 | 一种基于业务逻辑的安全检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113761536A CN113761536A (zh) | 2021-12-07 |
CN113761536B true CN113761536B (zh) | 2022-02-11 |
Family
ID=78787954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110850263.1A Active CN113761536B (zh) | 2021-07-27 | 2021-07-27 | 一种基于业务逻辑的安全检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113761536B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114971497B (zh) * | 2022-07-06 | 2022-10-21 | 国网浙江省电力有限公司金华供电公司 | 基于协同互联的物资供应链全链感知的数据处理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616529A (zh) * | 2018-04-24 | 2018-10-02 | 成都信息工程大学 | 一种基于业务流的异常检测方法及系统 |
CN109359468A (zh) * | 2018-08-23 | 2019-02-19 | 阿里巴巴集团控股有限公司 | 漏洞检测方法、装置及设备 |
CN110032872A (zh) * | 2019-05-08 | 2019-07-19 | 北京国舜科技股份有限公司 | 一种业务逻辑漏洞检测方法及装置 |
CN111523119A (zh) * | 2020-04-26 | 2020-08-11 | 南开大学 | 漏洞检测的方法和装置、电子设备及计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090199090A1 (en) * | 2007-11-23 | 2009-08-06 | Timothy Poston | Method and system for digital file flow management |
-
2021
- 2021-07-27 CN CN202110850263.1A patent/CN113761536B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616529A (zh) * | 2018-04-24 | 2018-10-02 | 成都信息工程大学 | 一种基于业务流的异常检测方法及系统 |
CN109359468A (zh) * | 2018-08-23 | 2019-02-19 | 阿里巴巴集团控股有限公司 | 漏洞检测方法、装置及设备 |
CN110032872A (zh) * | 2019-05-08 | 2019-07-19 | 北京国舜科技股份有限公司 | 一种业务逻辑漏洞检测方法及装置 |
CN111523119A (zh) * | 2020-04-26 | 2020-08-11 | 南开大学 | 漏洞检测的方法和装置、电子设备及计算机可读存储介质 |
Non-Patent Citations (5)
Title |
---|
《Fuzzing IPC with Knowledge Inference》;Kun Yang;《2019 38th Symposium on Reliable Distributed Systems (SRDS)》;20200330;第11-1109页 * |
《web服务异常检测的研究与应用》;蒋梦丹等;《中国优秀硕士学位论文全文数据库(电子期刊)》;20200531;信息科技辑第I139-23页 * |
《人民银行事后监督工作转型趋势探讨》;杨欣明等;《北方金融》;20180228(第2期);第98-100页 * |
《攻防演练中的业务逻辑漏洞及检测思路》;皮靖;《http://blog.nsfocus.net/business-logic-vulnerabilities-1208/》;20201208;第1-8页 * |
《移动互联网应用安全现状分析与监测预警机制研究》;田原等;《2020中国网络安全等级保护和关键信息基础设施保护大会论文集》;20201230;第85-88页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113761536A (zh) | 2021-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11526614B2 (en) | Continuous vulnerability management system for blockchain smart contract based digital asset using sandbox and artificial intelligence | |
Nicholls et al. | Financial cybercrime: A comprehensive survey of deep learning approaches to tackle the evolving financial crime landscape | |
Zhou et al. | Spi: Automated identification of security patches via commits | |
CN103262088B (zh) | 评估应用代码中的降级器代码的方法和装置 | |
Shar et al. | Auditing the XSS defence features implemented in web application programs | |
CN111107096A (zh) | 一种Web站点安全防护方法及装置 | |
Kumar et al. | Evaluating the impact of malware analysis techniques for securing web applications through a decision-making framework under fuzzy environment | |
Liu et al. | Characterizing transaction-reverting statements in ethereum smart contracts | |
CN115622738A (zh) | 一种基于rbf神经网络安全应急处置系统及应急处置方法 | |
CN114036531A (zh) | 一种基于多尺度代码度量的软件安全漏洞检测方法 | |
CN113761536B (zh) | 一种基于业务逻辑的安全检测方法及系统 | |
Wang et al. | ProMutator: Detecting vulnerable price oracles in DeFi by mutated transactions | |
Alhassan et al. | A fuzzy classifier-based penetration testing for web applications | |
Zheng et al. | Turn the rudder: A beacon of reentrancy detection for smart contracts on ethereum | |
Zhou et al. | SmartGift: Learning to generate practical inputs for testing smart contracts | |
Partenza et al. | Automatic identification of vulnerable code: Investigations with an ast-based neural network | |
He et al. | Tokenaware: Accurate and efficient bookkeeping recognition for token smart contracts | |
Aljawarneh et al. | Usage of data validation techniques in online banking: A perspective and case study | |
Mandloi et al. | A machine learning-based dynamic method for detecting vulnerabilities in smart contracts | |
Nha et al. | Methodology Interaction by Machine Learning Model to Detect Vulnerability in Smart Contract of Blockchain | |
Sanni et al. | A Predictive Cyber Threat Model for Mobile Money Services | |
Li et al. | ARdetector: Android ransomware detection framework | |
CN117592092B (zh) | 一种数据库内容的保密检查方法及系统 | |
Patil et al. | Impact of PCA Feature Extraction Method used in Malware Detection for Security Enhancement | |
Deeb et al. | A machine learning approach for detecting and categorizing evasion sources in Android malware |
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 |