CN109344611A - 应用的访问控制方法、终端设备及介质 - Google Patents

应用的访问控制方法、终端设备及介质 Download PDF

Info

Publication number
CN109344611A
CN109344611A CN201811037783.5A CN201811037783A CN109344611A CN 109344611 A CN109344611 A CN 109344611A CN 201811037783 A CN201811037783 A CN 201811037783A CN 109344611 A CN109344611 A CN 109344611A
Authority
CN
China
Prior art keywords
function
query interface
interface function
logic
code
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
CN201811037783.5A
Other languages
English (en)
Other versions
CN109344611B (zh
Inventor
席悦洋
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.)
Shenzhen Lian Intellectual Property Service Center
Tianyi Safety Technology Co Ltd
Original Assignee
Ping An Puhui Enterprise Management Co Ltd
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 Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN201811037783.5A priority Critical patent/CN109344611B/zh
Publication of CN109344611A publication Critical patent/CN109344611A/zh
Application granted granted Critical
Publication of CN109344611B publication Critical patent/CN109344611B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis

Abstract

本发明适用于信息处理技术领域,提供了一种应用的访问控制方法、终端设备及介质,该方法包括:加载移动应用的功能代码,并识别功能代码所包含的查询接口函数;根据接收到的代码编辑指令,在查询接口函数中添加逻辑漏洞检测点;若接收到外部对象发出的关于查询接口函数的应用访问请求,则基于逻辑漏洞检测点触发安全检测事件;获取与安全检测事件对应的反馈结果;若反馈结果为存在安全风险,则对发出应用访问请求的用户账号进行权限控制处理。本发明保证了在攻击事件出现的情况之下,攻击者也无法对其权限范围之外的后续业务流程进行逻辑攻击测试,故实现了一定程度上的安全防御,由此也提高了移动应用的安全性。

Description

应用的访问控制方法、终端设备及介质
技术领域
本发明属于信息处理技术领域,尤其涉及一种应用的访问控制方法、终端设备及计算机可读存储介质。
背景技术
目前,为了鉴定移动应用的正确性、完整性和安全性,在各类移动应用上线发布之前,其均需要由测试人员进行检测处理。测试过程需要依赖于预先设定的程序代码来执行,故应用测试结果的正确性与测试用例的完整性具有较大关联。然而,由于测试人员难以创建百分百全面的测试用例,因此,即使完成了测试操作,上线之后的移动应用也通常会存在或多或少的逻辑漏洞,由此使得黑客分子能够利用该逻辑漏洞来发起恶意攻击。
现有技术中,针对用户发起的恶意攻击,通常只能通过应用防火墙(waf)或者入侵防御系统等应用层系统来进行防御。这类应用层系统通过预设的字符规则模式来识别各类攻击请求并进行拦截。然而,对于无特定攻击模式、不满足特定字符规则的逻辑漏洞攻击方式来说,这类防御方式无法对其进行有效的拦截,故现有移动应用存在较高的安全风险问题。
发明内容
有鉴于此,本发明实施例提供了一种应用的访问控制方法、终端设备及计算机可读存储介质,以解决现有技术中,移动应用存在较高安全风险的问题。
本发明实施例的第一方面提供了一种应用的访问控制方法,包括:
加载移动应用的功能代码,并识别所述功能代码所包含的查询接口函数;
根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点,所述逻辑漏洞检测点用于触发对应用访问请求的安全性检测;
若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件;
获取与所述安全检测事件对应的反馈结果;
若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理。
本发明实施例的第二方面提供了一种终端设备,包括存储器以及处理器,所述存储器存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
加载移动应用的功能代码,并识别所述功能代码所包含的查询接口函数;
根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点,所述逻辑漏洞检测点用于触发对应用访问请求的安全性检测;
若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件;
获取与所述安全检测事件对应的反馈结果;
若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理。
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
加载移动应用的功能代码,并识别所述功能代码所包含的查询接口函数;
根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点,所述逻辑漏洞检测点用于触发对应用访问请求的安全性检测;
若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件;
获取与所述安全检测事件对应的反馈结果;
若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理。
本发明实施例中,通过在移动应用的功能代码中识别出其所包含的各类查询接口函数,并预先为这些查询接口函数设置逻辑漏洞检测点,保证了系统在接收到外部对象发出的关于上述查询接口函数的应用访问请求时,能够自动触发安全检测事件并获取对应的反馈结果;通过在反馈结果为存在安全风险时,对发出应用访问请求的用户账号进行权限控制处理,保证了在攻击事件出现的情况之下,攻击者也无法对其权限范围之外的后续业务流程进行逻辑攻击测试,故实现了一定程度上的安全防御,由此也提高了移动应用的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的应用的访问控制方法的实现流程图;
图2是本发明实施例提供的应用的访问控制方法S105的具体实现流程图;
图3是本发明实施例提供的应用的访问控制方法S103的具体实现流程图;
图4是本发明实施例提供的应用的访问控制方法S102的具体实现流程图;
图5是本发明实施例提供的应用的访问控制方法S103的另一具体实现流程图;
图6是本发明实施例提供的应用的访问控制装置的结构框图;
图7是本发明实施例提供的终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
图1示出了本发明实施例提供的应用的访问控制方法的实现流程,该方法流程包括步骤S101至S105。各步骤的具体实现原理如下:
S101:加载移动应用的功能代码,并识别所述功能代码所包含的查询接口函数。
本发明实施例中,在开发移动应用之前,预先收集关于该移动应用的开发需求,以确定移动应用所需实现的各项功能。通过接收开发人员输入的代码编辑指令,可在开发完成时,输出用于执行上述各项功能的功能代码。其中,功能代码中包含有多个功能模块。每一个功能模块用于实现移动应用所提供的一项业务子功能。例如,若移动应用提供有物品选择功能、下单功能以及付款功能,则其功能代码中包含有分别对应上述三项功能的功能模块。并且,每一个功能模块包含有一个或多个查询接口函数。通过对任意一个查询接口函数进行调用,可执行该查询接口函数所对应的外部控制逻辑。
本发明实施例中,基于移动应用中各项业务子功能所匹配的流程操作顺序,对各个功能模块进行排序处理,并对排序后所得到的移动应用的功能代码进行加载。
例如,用户通常需要在移动应用中登录自己的用户账号后,才能进行物品的选取、下单以及付款等操作,故上述一连串的操作顺序为预先设置的流程操作顺序。对应于该流程操作顺序,依序加载并展示功能代码中的登录功能模块、选取功能模块、下单功能模块以及付款功能模块。
本发明实施例中,对功能代码所包含的查询接口函数进行识别。
作为本发明的一个实施示例,根据开发人员发出的代码选取指令,在当前展示的功能代码中,定位出各个查询接口函数。
作为本发明的另一个实施示例,由于每一查询接口函数的代码中均携带有符合预设格式的函数标识符,因此,基于上述预设格式,可匹配出功能代码所包含的各个查询接口函数。
S102:根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点,所述逻辑漏洞检测点用于触发对应用访问请求的安全性检测。
本发明实施例中,根据再次接收到的代码编辑指令,在上述确定出的每一个查询接口函数中,添加用于触发安全性检测事件的埋点代码,则该埋点代码为逻辑漏洞检测点。其中,安全性检测事件用于判断当前接收到的应用访问请求是否携带安全风险。
优选地,由于每个查询接口函数所需的传参类型不同,故适应性地,可根据开发人员所自定义的代码编辑指令,为不同的查询接口函数分别设置对应的逻辑漏洞检测点。
对功能代码更改后的移动应用进行发布,以使终端用户安装并使用该移动终端。
S103:若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件。
S104:获取与所述安全检测事件对应的反馈结果。
本发明实施例中,外部对象包括终端用户,也包括第三方应用。当在移动应用中检测到外部对象发出的应用访问请求时,根据该应用访问请求所携带的请求参数,确定当前所需执行的部分功能代码。若该部分功能代码中存在上述包含逻辑漏洞检测点的查询接口函数,则基于该逻辑漏洞检测点,触发安全检测事件。
具体地,安全检测事件包括:获取与应用访问请求对应的参数返回值,并提取该参数返回值中所包含的接口参数;加载与该查询接口函数对应的风险判断条件;检测提取得到的接口参数是否满足上述风险判断条件;若检测结果为是,则确定存在逻辑漏洞攻击,与当前安全检测事件对应的反馈结果为存在安全风险;若检测结果为否,则确定与当前安全检测事件对应的反馈结果为不存在安全风险。
其中,上述风险判断条件包括但不限于:1)参数返回值所包含的接口参数的总数与预设的参数数目不同;2)当前所检测得到的接口参数的参数类型与查询接口函数对应的参数类型不同;3)接口参数所关联的用户账号与应用访问请求的来源用户账号不同。
示例性地,若当前应用访问请求所调用的查询接口函数主要用于查询商品订单号、订单价格以及流水号这三个参数,则该应用访问请求的参数返回值中应当包含三个接口参数,若实际监测到的接口参数的数目为四个,则确定上述风险判断条件1)成立。
示例性地,若当前所接收到的应用访问请求来源于用户账号A,但该应用访问请求所对应的参数返回值中携带有用户账号B的订单信息,则确定上述风险判断条件3)成立。
本发明实施例中,当上述任一风险判断条件成立时,确定当前安全检测事件对应的反馈结果为存在安全风险。
S105:若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理。
本发明实施例中,若当前安全检测事件对应的反馈结果为存在安全风险,则对发出应用访问请求的用户账号进行权限控制处理,包括:注销关于该用户账号的账号会话、强制登出该用户账号以及在预设时长内对该用户账号进行锁定等。若当前安全检测事件对应的反馈结果为不存在安全风险,则保持当前的用户会话,并继续响应用户所触发的后续流程操控事件。
本发明实施例中,通过在移动应用的功能代码中识别出其所包含的各类查询接口函数,并预先为这些查询接口函数设置逻辑漏洞检测点,保证了系统在接收到外部对象发出的关于上述查询接口函数的应用访问请求时,能够自动触发安全检测事件并获取对应的反馈结果;通过在反馈结果为存在安全风险时,对发出应用访问请求的用户账号进行权限控制处理,保证了在攻击事件出现的情况之下,攻击者也无法对其权限范围之外的后续业务流程进行逻辑攻击测试,故实现了一定程度上的安全防御,由此也提高了移动应用的安全性。
作为本发明的一个实施例,图2示出了本发明实施例提供的应用的访问控制方法S105的具体实现流程,详述如下:
S1051:若所述反馈结果为存在安全风险,则确定关联该反馈结果的风险判断条件。
本发明实施例中,由上述分析可知,安全检测事件所对应的反馈结果可根据预先的各个不同风险判断条件来确定。在确定反馈结果为存在安全风险时,获取与此次反馈结果相关的风险判断条件。
S1052:获取与所述风险判断条件对应的权限限制等级。
不同的风险判断条件对应预设有不同的权限限制等级,风险判断条件与权限限制等级的对应关系存储于权限数据表中。其中,权限限制等级越高,用户账号的访问权限越低,其对应的终端用户可使用的应用功能越少。
本发明实施例中,对于当前反馈结果所关联的风险判断条件,通过上述权限数据表,获取与该风险判断条件对应的权限限制等级。
S1053:基于所述权限限制等级,对发出所述应用访问请求的用户账号进行权限控制处理,并在预设时长内再次接收到来自所述用户账号的应用访问请求时,提升对所述用户账号进行权限控制处理的权限限制等级。
每一权限限制等级对应于一类权限控制方式,根据上述S1052所确定出的权限限制等级,对发出应用访问请求的用户账号进行权限控制处理。例如,若当前反馈结果为存在安全风险,该反馈结果是基于上述风险判断条件1)来生成的,且确定出的与其对应的权限控制方式为一级权限控制,则对当前的账号会话进行注销处理;若该反馈结果是基于上述风险判断条件2)来生成的,且确定出的与其对应的权限控制方式为二级权限控制,则后续5分钟之内,对发出应用访问请求的用户账号进行锁定。
本发明实施例中,在对用户账号进行权限控制处理之后,记录此次权限控制处理的权限限制等级,并启动计时器执行计时。在计时值达到预设阈值之前,若再次接收到来自该用户账号的应用访问请求,则直接对该用户账号进行权限控制处理,而无须执行上述步骤S101至S105。通过读取该用户账号在上一次权限控制处理时所对应的权限限制等级,将该权限限制等级进行提升后,再对该用户账号进行权限限制。
例如,若一级权限控制为强制用户账号登出,二级权限控制为注销账号会话,则在检测到应用访问请求存在安全风险而强制将用户账号A登出之后,启动计时。在5分钟内,若再次接收到关于用户账号A的应用访问请求,则将一级权限控制提升为二级权限控制,以直接注销用户账号A的账号会话。
优选地,若检测到反馈结果为存在安全风险时,则标记当前应用访问请求的用户账号。在预设时长内检测到关于该用户账号的业务申请事件时,提升该用户账号的业务办理条件。例如,将原本只需要验证账号信息的业务办理条件更改为需要实名认证用户的多类身份证件信息才需要办理当前业务。
本发明实施例中,在确认应用访问请求存在安全风险的情况之下,通过获取反馈结果所关联的风险判断条件,并根据风险判断条件所对应的权限限制等级来对用户账号进行权限管控,实现了层次级别不同的安全管理,实现了对移动应用安全的准确控制。
作为本发明的一个实施例,图3示出了本发明实施例提供的应用的访问控制方法S103的具体实现流程,详述如下:
S1031:若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点,记录预设时长内所依次调用的各个所述查询接口函数的函数标识。
本发明实施例中,若接收到关于查询接口函数的应用访问请求,且该查询接口函数中包含有逻辑漏洞检测点,则根据预置的计时器,启动计时,并执行该查询接口函数所对应的每一行功能代码。在执行每一行功能代码的过程中,基于预设的正则表达式,检测该行功能代码中是否存在函数标识定义符。对检测出的每一个函数标识定义符,读取后邻于该函数标识定义符的字符串,并将该字符串确定为当前所需调用的查询接口函数的函数标识后,将其进行记录。当检测到计时器的计时值达到预设阈值时,停止对功能代码中的函数标识定义符进行检测。此时,可获取得到在安全检测事件被触发后的预设时长内所记录的各个函数标识。
S1032:生成包含各项所述函数标识的函数序列,并获取预设的与所述逻辑漏洞检测点对应的函数序列集合。
本发明实施例中,由于预设时长内所检测到的每一个函数标识是依次进行记录存储的,因此,可根据记录存储的时间顺序,对已存储的函数标识进行排序,以得到包含各项函数标识的函数序列。
对于上述步骤S1031中的应用访问请求所关联的查询接口函数,根据该查询接口函数所包含的逻辑漏洞检测点的编码值,读取预存储的与该编码值匹配的函数序列集合。其中,函数序列集合包含多个函数序列,每一个函数序列中包含有依序排列的多个函数标识,该函数序列用于记录在一项正常业务操作流程的执行过程中,系统所需依序调用的各个查询接口函数的函数标识。
S1033:根据所述函数序列是否存在于所述函数序列集合,确定安全检测事件对应的反馈结果。
本发明实施例中,判断步骤S1032所生成的函数序列是否与上述函数序列集合中的任意一个函数序列相同。若判断结果为是,则确定当前触发的安全检测事件所对应的反馈结果为不存在安全风险;若判断结果为否,则确定当前触发的安全检测事件所对应的反馈结果为存在安全风险。
示例性地,在接收到外部对象发出的应用访问请求,且触发安全检测事件时,启动计时。若当前所调用到的查询接口函数为订单号确认函数A,且在预设的5分钟内,检测到付款确认函数B被调用,则可生成函数序列[A;B]。本示例中,读取预设的与订单号确认函数A对应的函数序列集合。若函数序列[A;B]存在于该函数序列集合,则表示当前所应当调用的查询接口函数符合预设的执行次序,故判断当前安全检测事件对应的反馈结果为不存在安全风险。
优选地,本发明实施例中的S1031至S1033可以作为其他各个实施例中的一个风险判断条件,包括作为任一权限限制等级对应的风险判断条件。
本发明实施例中,在逻辑漏洞检测点存在的情况之下,通过记录预设时长内所依次调用的各个查询接口函数的函数标识,并基于生成的函数序列来确定其与预设的合法函数序列是否匹配,实现了根据函数的逻辑调用顺序来确认安全风险,提高了对逻辑漏洞的检测准确率。
作为本发明的一个实施例,图4示出了本发明实施例提供的应用的访问控制方法S102的具体实现流程,详述如下:
S1021:根据接收到的代码编辑指令,确定用于触发登录事件的所述功能函数,所述功能函数为查询接口函数中的一种。
本发明实施例中,对移动应用的功能代码进行加载并展示。在开发人员查看功能代码之后,通过对功能代码进行识别处理,可以确定出其中用于触发登录事件的功能函数,并对该功能函数进行选取。因此,根据接收到的代码编辑指令,可确定用于触发登录事件的所述功能函数。其中,功能函数为上述查询接口函数中的一种,在此仅为了便于区分用于触发登录事件的查询接口函数以及其他查询接口函数。
作为本发明的另一实施实例,在确定用于触发登录事件的功能函数之前,读取各个功能模块所匹配的代码注释。基于预设的与登录事件匹配的关键词,对该代码注释进行检测。若检测到代码注释中存在该关键词,则将当前功能模块所包含的接口查询函数确定为上述用于触发登录事件的功能函数。
S1022:对所述功能代码进行分析处理,得到所述功能代码对应的控制流图,所述控制流图用于展示各个所述查询接口函数之间的调用关系。
本发明实施例中,通过利用预设的转换算法,对移动应用的功能代码进行处理,以生成功能代码对应的控制流程。控制流图包含多个节点以及用于连接节点的弧线。其中,每一个节点对应一个顺序流程的查询接口函数。若一查询接口函数需要基于对另一查询接口函数的调用才能执行,则在该两个查询接口函数所对应的节点之间绘制弧线。
S1023:根据所述控制流图,获取与所述功能函数具有调用关系且排序在所述功能函数之后的N个所述查询接口函数;其中,所述N为预设的大于零的整数。
对于上述S1021所确定出的功能函数,在控制流图中获取与该功能函数对应的节点。根据该节点在控制流图中所属的位置,确定与该节点通过弧线相连、且位于弧线指向末端的其余各个节点。为了区分功能函数所对应的节点以及其余节点,将与功能函数对应的节点称为根节点,将与根节点通过弧线相连且位于弧线指向末端的节点称为子节点。
本发明实施例中,筛选出与根节点具有最小距离值的N个子节点。距离值表示子节点与根节点之间的弧线连接数目。其中,N为预设的大于零的整数。对于筛选出的每一个子节点,在移动应用的功能代码中定位与该子节点对应的查询接口函数。
S1024:分别创建与所述N个查询接口函数对应的逻辑漏洞检测点。
本发明实施例中,发出关于定位得到的查询接口函数的提示信息,以使开发人员根据该提示信息,在其中的每一个查询接口函数中,添加用于触发安全性检测事件的埋点代码,以完成对逻辑漏洞检测点的创建。
本发明实施例中,通过确定功能代码中用于触发登录事件的功能函数,并利用控制流图来获取与该功能函数具有调用关系且排序在该功能函数之后的N个查询接口函数,创建与这N个查询接口函数对应的逻辑漏洞检测点,实现了仅在移动应用的登录入口附近设置有特定的逻辑漏洞检测,同时也保证了在功能函数被调用时,能够根据其关联调用的其他查询接口函数来一起进行逻辑漏洞检测,因而提高了逻辑漏洞检测的完整性。
作为本发明的一个实施例,图5示出了本发明实施例提供的应用的访问控制方法S103的另一具体实现流程,详述如下:
S1034:获取所述查询接口函数的关联文件,所述关联文件为所述查询接口函数所需调用的外部文件。
S1035:确定所述关联文件的文件类型。
本发明实施例中,由于不同的逻辑漏洞通常还会存在于不同类型的文件中,因此,在检测到关于每一查询接口函数的应用访问请求时,对该查询接口函数所对应的部分功能代码进行检测,判断其是否需要调用外部的其他文件。若判断结果为是,则在调用该外部的关联文件的同时,检测关联文件的后缀名。根据上述后缀名,确定出关联文件的文件类型。
例如,若检测出当前查询接口函数所调用的关联文件的后缀名为“.jpg”,则可确定其文件类型为JPG图片类型。
S1036:基于所述逻辑漏洞检测点触发安全检测事件,根据所述文件类型所预设对应的漏洞检测算法,对所述关联文件进行安全检测处理。
本发明实施例中,若查询接口函数中包含有逻辑漏洞检测点,则在触发安全检测事件后,在预设的漏洞数据库中,确定与其关联文件的文件类型想对应的漏洞检测算法。其中,漏洞数据库用于存储各文件类型、漏洞检测算法以及逻辑漏洞标识的映射关系。
根据确定出的漏洞检测算法,对该关联文件进行安全检测处理。若检测结果为关联文件存在安全风险,则将该漏洞检测算法所匹配的逻辑漏洞标识进行读取并输出,以使开发人员基于输出信息准确了解到逻辑漏洞的类型,便于进一步采取精准的方案来选择漏洞修复方式,因而提高了对逻辑漏洞的修复效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上文实施例所述的应用的访问控制方法,图6示出了本发明实施例提供的应用的访问控制装置的结构框图。为了便于说明,仅示出了与本发明实施例相关的部分。
参照图6,该装置包括:
加载单元61,用于加载移动应用的功能代码,并识别所述功能代码所包含的查询接口函数。
添加单元62,用于根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点,所述逻辑漏洞检测点用于触发对应用访问请求的安全性检测。
触发单元63,用于若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件。
获取单元64,用于获取与所述安全检测事件对应的反馈结果。
控制单元65,用于若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理。
可选地,所述触发单元63包括:
记录子单元,用于若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点,记录预设时长内所依次调用的各个所述查询接口函数的函数标识。
生成子单元,用于生成包含各项所述函数标识的函数序列,并获取预设的与所述逻辑漏洞检测点对应的函数序列集合。
第一确定子单元,用于根据所述函数序列是否存在于所述函数序列集合,确定安全检测事件对应的反馈结果。
可选地,所述控制单元65包括:
第二确定子单元,用于若所述反馈结果为存在安全风险,则确定关联该反馈结果的风险判断条件。
第一获取子单元,用于获取与所述风险判断条件对应的权限限制等级。
控制子单元,用于基于所述权限限制等级,对发出所述应用访问请求的用户账号进行权限控制处理,并在预设时长内再次接收到来自所述用户账号的应用访问请求时,提升对所述用户账号进行权限控制处理的权限限制等级。
可选地,所述添加单元62包括:
第三确定子单元,用于根据接收到的代码编辑指令,确定用于触发登录事件的所述功能函数,所述功能函数为查询接口函数中的一种。
分析子单元,用于对所述功能代码进行分析处理,得到所述功能代码对应的控制流图,所述控制流图用于展示各个所述查询接口函数之间的调用关系。
第二获取子单元,用于根据所述控制流图,获取与所述功能函数具有调用关系且排序在所述功能函数之后的N个所述查询接口函数;其中,所述N为预设的大于零的整数。
创建子单元,用于分别创建与所述N个查询接口函数对应的逻辑漏洞检测点。
可选地,所述触发单元63包括:
第三获取子单元,用于获取所述查询接口函数的关联文件,所述关联文件为所述查询接口函数所需调用的外部文件。
第四确定子单元,用于确定所述关联文件的文件类型。
检测子单元,用于基于所述逻辑漏洞检测点触发安全检测事件,根据所述文件类型所预设对应的漏洞检测算法,对所述关联文件进行安全检测处理。
图7是本发明一实施例提供的终端设备的示意图。如图6所示,该实施例的终端设备7包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机程序72,例如应用的访问控制程序。所述处理器70执行所述计算机程序72时实现上述各个应用的访问控制方法实施例中的步骤,例如图1所示的步骤101至105。或者,所述处理器70执行所述计算机程序72时实现上述各装置实施例中各模块/单元的功能,例如图5所示单元61至65的功能。
示例性的,所述计算机程序72可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器71中,并由所述处理器70执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序72在所述终端设备7中的执行过程。
所述终端设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是终端设备7的示例,并不构成对终端设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种应用的访问控制方法,其特征在于,包括:
加载移动应用的功能代码,并识别所述功能代码所包含的查询接口函数;
根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点,所述逻辑漏洞检测点用于触发对应用访问请求的安全性检测;
若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件;
获取与所述安全检测事件对应的反馈结果;
若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理。
2.如权利要求1所述的应用的访问控制方法,其特征在于,所述若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件,包括:
若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点,记录预设时长内所依次调用的各个所述查询接口函数的函数标识;
生成包含各项所述函数标识的函数序列,并获取预设的与所述逻辑漏洞检测点对应的函数序列集合;
根据所述函数序列是否存在于所述函数序列集合,确定安全检测事件对应的反馈结果。
3.如权利要求1所述的应用的访问控制方法,其特征在于,所述若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理,包括:
若所述反馈结果为存在安全风险,则确定关联该反馈结果的风险判断条件;
获取与所述风险判断条件对应的权限限制等级;
基于所述权限限制等级,对发出所述应用访问请求的用户账号进行权限控制处理,并在预设时长内再次接收到来自所述用户账号的应用访问请求时,提升对所述用户账号进行权限控制处理的权限限制等级。
4.如权利要求1所述的应用的访问控制方法,其特征在于,所述根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点,包括:
根据接收到的代码编辑指令,确定用于触发登录事件的所述功能函数,所述功能函数为查询接口函数中的一种;
对所述功能代码进行分析处理,得到所述功能代码对应的控制流图,所述控制流图用于展示各个所述查询接口函数之间的调用关系;
根据所述控制流图,获取与所述功能函数具有调用关系且排序在所述功能函数之后的N个所述查询接口函数;其中,所述N为预设的大于零的整数;
分别创建与所述N个查询接口函数对应的逻辑漏洞检测点。
5.如权利要求1所述的应用的访问控制方法,其特征在于,所述若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件,包括:
获取所述查询接口函数的关联文件,所述关联文件为所述查询接口函数所需调用的外部文件;
确定所述关联文件的文件类型;
基于所述逻辑漏洞检测点触发安全检测事件,根据所述文件类型所预设对应的漏洞检测算法,对所述关联文件进行安全检测处理。
6.一种终端设备,包括存储器以及处理器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如下步骤:
加载移动应用的功能代码,并识别所述功能代码所包含的查询接口函数;
根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点,所述逻辑漏洞检测点用于触发对应用访问请求的安全性检测;
若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件;
获取与所述安全检测事件对应的反馈结果;
若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理。
7.如权利要求6所述的终端设备,其特征在于,所述若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点触发安全检测事件的步骤,具体包括:
若接收到外部对象发出的关于所述查询接口函数的应用访问请求,则基于所述逻辑漏洞检测点,记录预设时长内所依次调用的各个所述查询接口函数的函数标识;
生成包含各项所述函数标识的函数序列,并获取预设的与所述逻辑漏洞检测点对应的函数序列集合;
根据所述函数序列是否存在于所述函数序列集合,确定安全检测事件对应的反馈结果。
8.如权利要求6所述的终端设备,其特征在于,所述若所述反馈结果为存在安全风险,则对发出所述应用访问请求的用户账号进行权限控制处理的步骤,具体包括:
若所述反馈结果为存在安全风险,则确定关联该反馈结果的风险判断条件;
获取与所述风险判断条件对应的权限限制等级;
基于所述权限限制等级,对发出所述应用访问请求的用户账号进行权限控制处理,并在预设时长内再次接收到来自所述用户账号的应用访问请求时,提升对所述用户账号进行权限控制处理的权限限制等级。
9.如权利要求6所述的终端设备,其特征在于,所述根据接收到的代码编辑指令,在所述查询接口函数中添加逻辑漏洞检测点的步骤,具体包括:
根据接收到的代码编辑指令,确定用于触发登录事件的所述功能函数,所述功能函数为查询接口函数中的一种;
对所述功能代码进行分析处理,得到所述功能代码对应的控制流图,所述控制流图用于展示各个所述查询接口函数之间的调用关系;
根据所述控制流图,获取与所述功能函数具有调用关系且排序在所述功能函数之后的N个所述查询接口函数;其中,所述N为预设的大于零的整数;
分别创建与所述N个查询接口函数对应的逻辑漏洞检测点。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
CN201811037783.5A 2018-09-06 2018-09-06 应用的访问控制方法、终端设备及介质 Active CN109344611B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811037783.5A CN109344611B (zh) 2018-09-06 2018-09-06 应用的访问控制方法、终端设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811037783.5A CN109344611B (zh) 2018-09-06 2018-09-06 应用的访问控制方法、终端设备及介质

Publications (2)

Publication Number Publication Date
CN109344611A true CN109344611A (zh) 2019-02-15
CN109344611B CN109344611B (zh) 2024-02-27

Family

ID=65292371

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811037783.5A Active CN109344611B (zh) 2018-09-06 2018-09-06 应用的访问控制方法、终端设备及介质

Country Status (1)

Country Link
CN (1) CN109344611B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309661A (zh) * 2019-04-19 2019-10-08 中国科学院信息工程研究所 一种基于控制流的敏感数据使用权限管理方法及装置
CN111931140A (zh) * 2020-07-31 2020-11-13 支付宝(杭州)信息技术有限公司 权限管理方法、资源访问控制方法、装置和电子设备
CN112905261A (zh) * 2021-03-05 2021-06-04 南京领行科技股份有限公司 一种api管控方法、装置及电子设备
CN113923048A (zh) * 2021-11-09 2022-01-11 中国联合网络通信集团有限公司 网络攻击行为识别方法、装置、设备及存储介质
CN114650187A (zh) * 2022-04-29 2022-06-21 深信服科技股份有限公司 一种异常访问检测方法、装置、电子设备及存储介质
CN114826717A (zh) * 2022-04-18 2022-07-29 深信服科技股份有限公司 一种异常访问检测方法、装置、电子设备及存储介质
CN115114626A (zh) * 2022-08-26 2022-09-27 国网江西省电力有限公司电力科学研究院 工业设备代码检测方法、系统、计算机设备及存储介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567200A (zh) * 2011-12-14 2012-07-11 北京航空航天大学 基于函数调用图的并行化安全漏洞检测方法
CN104462981A (zh) * 2013-09-12 2015-03-25 深圳市腾讯计算机系统有限公司 漏洞检测方法及装置
CN104732147A (zh) * 2015-04-13 2015-06-24 成都睿峰科技有限公司 一种应用程序处理方法
US20160330234A1 (en) * 2015-05-09 2016-11-10 Stephen T. Kertis Secure Coding Framework Based on Cyber Security through Lexical and Symbolic Proxy Technology
US20170011220A1 (en) * 2015-07-06 2017-01-12 Kaspersky Lab Zao System and method of controlling opening of files by vulnerable applications
CN106407797A (zh) * 2016-09-08 2017-02-15 努比亚技术有限公司 应用权限控制装置和方法
WO2017049800A1 (zh) * 2015-09-23 2017-03-30 百度在线网络技术(北京)有限公司 检测应用漏洞代码的方法和装置
CN106897607A (zh) * 2015-12-17 2017-06-27 北京奇虎科技有限公司 一种应用程序监控方法及装置
CN106897609A (zh) * 2015-12-17 2017-06-27 北京奇虎科技有限公司 一种对动态加载的应用程序进行监控的方法及装置
US9723489B1 (en) * 2016-04-19 2017-08-01 Synack, Inc. Automated vulnerability discovery in mobile device applications
CN107766733A (zh) * 2017-10-10 2018-03-06 北京奇虎科技有限公司 一种安全漏洞的屏蔽方法、装置及终端
CN108256322A (zh) * 2018-01-26 2018-07-06 平安科技(深圳)有限公司 安全测试方法、装置、计算机设备和存储介质
CN108268773A (zh) * 2016-12-30 2018-07-10 南京理工大学 Android应用升级包本地存储安全性检测方法

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567200A (zh) * 2011-12-14 2012-07-11 北京航空航天大学 基于函数调用图的并行化安全漏洞检测方法
CN104462981A (zh) * 2013-09-12 2015-03-25 深圳市腾讯计算机系统有限公司 漏洞检测方法及装置
CN104732147A (zh) * 2015-04-13 2015-06-24 成都睿峰科技有限公司 一种应用程序处理方法
US20160330234A1 (en) * 2015-05-09 2016-11-10 Stephen T. Kertis Secure Coding Framework Based on Cyber Security through Lexical and Symbolic Proxy Technology
US20170011220A1 (en) * 2015-07-06 2017-01-12 Kaspersky Lab Zao System and method of controlling opening of files by vulnerable applications
WO2017049800A1 (zh) * 2015-09-23 2017-03-30 百度在线网络技术(北京)有限公司 检测应用漏洞代码的方法和装置
CN106897607A (zh) * 2015-12-17 2017-06-27 北京奇虎科技有限公司 一种应用程序监控方法及装置
CN106897609A (zh) * 2015-12-17 2017-06-27 北京奇虎科技有限公司 一种对动态加载的应用程序进行监控的方法及装置
US9723489B1 (en) * 2016-04-19 2017-08-01 Synack, Inc. Automated vulnerability discovery in mobile device applications
CN106407797A (zh) * 2016-09-08 2017-02-15 努比亚技术有限公司 应用权限控制装置和方法
CN108268773A (zh) * 2016-12-30 2018-07-10 南京理工大学 Android应用升级包本地存储安全性检测方法
CN107766733A (zh) * 2017-10-10 2018-03-06 北京奇虎科技有限公司 一种安全漏洞的屏蔽方法、装置及终端
CN108256322A (zh) * 2018-01-26 2018-07-06 平安科技(深圳)有限公司 安全测试方法、装置、计算机设备和存储介质

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309661A (zh) * 2019-04-19 2019-10-08 中国科学院信息工程研究所 一种基于控制流的敏感数据使用权限管理方法及装置
CN110309661B (zh) * 2019-04-19 2021-07-16 中国科学院信息工程研究所 一种基于控制流的敏感数据使用权限管理方法及装置
CN111931140A (zh) * 2020-07-31 2020-11-13 支付宝(杭州)信息技术有限公司 权限管理方法、资源访问控制方法、装置和电子设备
CN112905261A (zh) * 2021-03-05 2021-06-04 南京领行科技股份有限公司 一种api管控方法、装置及电子设备
CN113923048A (zh) * 2021-11-09 2022-01-11 中国联合网络通信集团有限公司 网络攻击行为识别方法、装置、设备及存储介质
CN113923048B (zh) * 2021-11-09 2023-07-04 中国联合网络通信集团有限公司 网络攻击行为识别方法、装置、设备及存储介质
CN114826717A (zh) * 2022-04-18 2022-07-29 深信服科技股份有限公司 一种异常访问检测方法、装置、电子设备及存储介质
CN114826717B (zh) * 2022-04-18 2024-02-23 深信服科技股份有限公司 一种异常访问检测方法、装置、电子设备及存储介质
CN114650187A (zh) * 2022-04-29 2022-06-21 深信服科技股份有限公司 一种异常访问检测方法、装置、电子设备及存储介质
CN114650187B (zh) * 2022-04-29 2024-02-23 深信服科技股份有限公司 一种异常访问检测方法、装置、电子设备及存储介质
CN115114626A (zh) * 2022-08-26 2022-09-27 国网江西省电力有限公司电力科学研究院 工业设备代码检测方法、系统、计算机设备及存储介质
CN115114626B (zh) * 2022-08-26 2022-12-30 国网江西省电力有限公司电力科学研究院 工业设备代码检测方法、系统、计算机设备及存储介质

Also Published As

Publication number Publication date
CN109344611B (zh) 2024-02-27

Similar Documents

Publication Publication Date Title
CN109344611A (zh) 应用的访问控制方法、终端设备及介质
CN110399925B (zh) 账号的风险识别方法、装置及存储介质
CN109815657B (zh) 基于联盟链的身份认证方法、装置、计算机可读存储介质及终端设备
CN110177108B (zh) 一种异常行为检测方法、装置及验证系统
CN113706177B (zh) 一种基于大数据安防的威胁识别方法及数据安防服务器
KR102017756B1 (ko) 이상행위 탐지 장치 및 방법
CN109376078A (zh) 移动应用的测试方法、终端设备及介质
CN103679031B (zh) 一种文件病毒免疫的方法和装置
US20170279840A1 (en) Automated event id field analysis on heterogeneous logs
CN109660502A (zh) 异常行为的检测方法、装置、设备及存储介质
CN107659570A (zh) 基于机器学习与动静态分析的Webshell检测方法及系统
CN109271780A (zh) 机器学习恶意软件检测模型的方法、系统和计算机可读介质
CN108881263A (zh) 一种网络攻击结果检测方法及系统
CN103780450B (zh) 浏览器访问网址的检测方法和系统
CN107247902A (zh) 恶意软件分类系统及方法
CN109190368B (zh) 一种sql注入检测装置及sql注入检测方法
CN108769070A (zh) 一种越权漏洞检测方法及装置
CN109547426A (zh) 业务响应方法及服务器
CN104935548B (zh) 基于智能纹身设备的身份验证方法、装置及系统
CN111680167A (zh) 一种服务请求的响应方法及服务器
CN109324959A (zh) 一种自动转移数据的方法、服务器及计算机可读存储介质
CN104967603A (zh) 应用账号安全验证方法及装置
CN110837646A (zh) 一种非结构化数据库的风险排查装置
CN109905366A (zh) 终端设备安全验证方法、装置、可读存储介质及终端设备
WO2020192179A1 (zh) 一种基于iOS应用的安全检测方法、装置及系统

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20240129

Address after: Chinatelecom tower, No. 19, Chaoyangmen North Street, Dongcheng District, Beijing 100010

Applicant after: Tianyi Safety Technology Co.,Ltd.

Country or region after: China

Address before: Room 202, Block B, Aerospace Micromotor Building, No. 7 Langshan 2nd Road, Xili Street, Nanshan District, Shenzhen City, Guangdong Province, 518057

Applicant before: Shenzhen LIAN intellectual property service center

Country or region before: China

Effective date of registration: 20240129

Address after: Room 202, Block B, Aerospace Micromotor Building, No. 7 Langshan 2nd Road, Xili Street, Nanshan District, Shenzhen City, Guangdong Province, 518057

Applicant after: Shenzhen LIAN intellectual property service center

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant before: PING AN PUHUI ENTERPRISE MANAGEMENT Co.,Ltd.

Country or region before: China

GR01 Patent grant
GR01 Patent grant