CN106713347A - 一种电力移动应用越权访问漏洞检测方法 - Google Patents

一种电力移动应用越权访问漏洞检测方法 Download PDF

Info

Publication number
CN106713347A
CN106713347A CN201710033289.0A CN201710033289A CN106713347A CN 106713347 A CN106713347 A CN 106713347A CN 201710033289 A CN201710033289 A CN 201710033289A CN 106713347 A CN106713347 A CN 106713347A
Authority
CN
China
Prior art keywords
user
unauthorized access
request
http request
type
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
CN201710033289.0A
Other languages
English (en)
Other versions
CN106713347B (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.)
State Grid Corp of China SGCC
Electric Power Research Institute of State Grid Jiangsu Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Electric Power Research Institute of State Grid Jiangsu Electric Power 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 State Grid Corp of China SGCC, Electric Power Research Institute of State Grid Jiangsu Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201710033289.0A priority Critical patent/CN106713347B/zh
Publication of CN106713347A publication Critical patent/CN106713347A/zh
Application granted granted Critical
Publication of CN106713347B publication Critical patent/CN106713347B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种电力移动应用越权访问漏洞检测方法,包括:获取并存储移动应用存在的所有用户类型和与每种用户类型对应的用户数量;构造属于同一用户类型的不同用户针对同一操作的http请求,修改其中一个用户的http请求,并将修改后的请求发送给服务端,分析执行结果以检测平行越权访问漏洞;构造属于不同用户类型的不同用户的http请求,并修改属于某些用户类型的用户可执行但其他类型用户无法执行操作的http请求,将修改后的请求发送给服务端,分析执行结果以检测未授权访问漏洞;综合检测发现的漏洞,完成越权访问漏洞检测。本发明用于在集成测试阶段对移动应用进行安全测评,为降低移动应用存在的安全风险,提高移动应用的安全性提供支持。

Description

一种电力移动应用越权访问漏洞检测方法
技术领域
本发明属于领域,具体涉及一种电力移动应用越权访问漏洞检测方法。
背景技术
近年来,在物联网、云计算等互联网信息技术高速发展的背景下,电力移动应用进入全面建设阶段。目前在电力营销、现场作业、数据采集、移动办公等各个领域,都在进行移动应用的建设与推广应用,以降低运营成本,提高工作效率。
移动应用在高速发展的同时,其信息安全问题也得到了越来越高的关注,如果移动应用在需求、设计、开发过程中产生的安全漏洞未在集成测试阶段被发现并整改,黑客利用移动应用的安全漏洞入侵电力系统,将给公司和用户造成损失。目前对电力移动测评工作表明,现有自动化安全测试工具中可以发现信息泄露、SQL注入、跨站脚本等传统的Web安全漏洞,但对于移动应用越权访问这种逻辑漏洞缺乏有效的检测手段。越权访问漏洞包括平行越权访问和未授权访问2种:平行越权访问是指某个用户可以访问其他用户的私有信息,例如每个用户只能查询自身的电量信息,如果可以查询其他用户的电量信息,则应用存在平行越权访问漏洞;未授权访问是指低权限用户可以获取到只有高权限用户才能获取的信息,例如只有管理员能够获取系统配置信息,如果普通用户也获取了该信息,则应用存在未授权访问漏洞。利用该漏洞可实施非法信息获取、数据篡改、违规操作等恶意攻击行为。
发明内容
为了克服现有自动化安全测试工具中的不足,提高移动应用的安全性,本发明提出一种电力移动应用越权访问漏洞检测方法,解决了现有自动化漏洞测试工具无法发现越权访问这种逻辑漏洞的问题,能够用于在移动应用上线前的集成测试阶段开展越权访问漏洞检测工作,为移动应用的安全建设工作提供支持。
实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:
一种电力移动应用越权访问漏洞检测方法,包括以下步骤:
(1)获取并存储移动应用存在的所有用户类型和与每种用户类型对应的用户数量;
(2)构造属于同一用户类型的不同用户针对同一操作的http请求,修改其中一个用户的http请求,并将修改后的请求发送给服务端,分析执行结果以检测平行越权访问漏洞;
(3)构造属于不同用户类型的不同用户的http请求,并修改属于部分用户类型的用户可执行但其他类型用户无法执行操作的http请求,将修改后的请求发送给服务端,分析执行结果以检测未授权访问漏洞;
(4)综合步骤(2)和步骤(3)中检测发现的漏洞,完成电力移动应用越权访问漏洞检测。
进一步地,所述步骤(1)中获取并存储移动应用存在的所有用户类型和与每种用户类型对应的用户数量,具体包括以下步骤:
(1a)建立数据库;
(1b)根据移动应用的实际业务,确定移动应用存在的用户类型,并存储到数据库中;
(1c)根据移动应用的实际业务,确定并存储每种用户类型支持的用户数量,用户数量1个或多个,并存储到数据库中;
(1d)在数据库中增加“未登录的用户”这种用户类型,由于未登录用户的具有相同的权限,因此未登录用户的数量为1个。
进一步地,所述步骤(2)中的检测平行越权访问漏洞,具体包括以下步骤:
(2a)筛选出包括多个用户的用户类型,针对每种用户类型,分别执行步骤(2b)-(2f);
(2b)选择与该用户类型对应的其中2个不同的用户A和用户B,获取与该用户类型对应的用户可以执行的全部操作;
(2c)对于每个操作,分别执行步骤(2d)-(2f);
(2d)分别获取用户A和用户B执行该操作的http请求,如果2个请求的返回的结果不相同,则执行步骤2e;
(2e)修改用户B的http请求,将用户B的http请求中的请求参数设置为用户A的请求参数,形成一个新的http请求;
(2f)将新的http请求以用户B的身份发送给服务端,获取服务端的返回结果,如果返回结果包含了用户A的http请求的结果,则说明用户B获取了用户A的信息,检测出平行越权访问漏洞。
进一步地,所述步骤(2d)还包括:如果2个请求的返回的结果相同,返回步骤2c处理下一个操作。
进一步地,所述步骤(3)中构造属于不同用户类型的不同用户的http请求,并修改属于部分用户类型的用户可执行但其他类型用户无法执行操作的http请求,将修改后的请求发送给服务端,分析执行结果以检测未授权访问漏洞,具体包括以下步骤:
(3a)筛选出不同的用户类型,对于任意两种不同的用户类型,分别执行步骤(3b)-(3f);
(3b)分别选择与两种不同用户类型对应的用户C和用户D,获取用户C可以执行的全部操作和用户D可执行的全部操作;
(3c)对于用户C的每个操作,如果该操作用户D不可以执行,则执行步骤(3d)-(3e);
(3d)获取用户C执行该操作的http请求,修改该http请求,将其中的请求用户信息设置为用户D的请求用户信息,形成新的http请求;
(3e)新的http请求以用户D的身份发送给服务端,获取服务端的返回结果,如果返回结果包含了用户C的http请求的结果,则说明用户D获取了用户C的信息,检测出未授权访问漏洞。
(3f)对于用户D每个操作,如果该操作用户C不可以执行,则执行步骤(3g)-(3h);
(3g)获取用户D执行该操作的http请求,修改该请求,将其中的请求用户信息设置为用户C的请求用户信息,形成新的http请求;
(3h)新的http请求以用户C的身份发送给服务端,获取服务端的返回结果,如果返回结果包含了用户D的http请求的结果,则说明用户C获取了用户D的信息,检测出未授权访问漏洞。
进一步地,所述步骤(3c)还包括:对于用户C的每个操作,如果该操作用户D也可以执行,则不处理该操作。
进一步地,所述步骤(3f)还包括:对于用户D每个操作,如果该操作用户C也可以执行,则不处理该操作。
本发明的有益效果:
本发明提出一种电力移动应用越权访问漏洞检测方法,解决了现有自动化漏洞扫描工具无法发现越权访问这种逻辑漏洞的问题,能够用于在移动应用上线前的安全测试阶段开展越权访问漏洞检测工作,为移动应用的安全建设工作提供支持,避免漏洞被利用后造成的信息泄露和非法操作行为,以及由此给电力企业和用户造成的损失。
附图说明
图1是本发明的一种电力移动应用越权访问漏洞检测方法执行流程示意图;
图2是本发明的平行越权访问漏洞检测流程图;
图3是本发明的未授权访问漏洞检测流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图对本发明的应用原理作详细的描述。
实施例一
(1)确定移动应用存在的不同的用户类型,确保获取用户类型的全面性,并且得到与每种用户类型对应的用户数量;
(2)构造属于同一用户类型的不同用户针对同一操作的http请求,修改其中一个用户的http请求,并将修改后的请求发送给服务端,分析执行结果以检测平行越权访问漏洞;
(3)构造属于不同用户类型的不同用户的http请求,并修改属于部分用户类型的用户可执行但其他类型用户无法执行操作的http请求,将修改后的请求发送给服务端,分析执行结果以检测未授权访问漏洞;
(4)综合步骤(2)和步骤(3)中检测发现的漏洞,完成电力移动应用越权访问漏洞检测。
所述步骤(1)中,确定移动应用存在的不同的用户类型,确保获取用户类型的全面性,并且得到与每种用户类型对应的用户数量,具体包括以下几个步骤:
(1a)根据移动应用的实际业务,确定移动应用存在的用户类型,使用types=<type1,type2……typen>数组保存用户类型;
(1b)根据移动应用的实际业务,确定每种类型用户支持的用户数量,用户数量为1个或多个,例如有些应用规定可以有多个申请用户,但只有1个审核用户。在数组中的每个用户类型后面,增加该用户类型的用户的数量,1表示只有1个,n表示可以有多个,types=<type1:1,type2:n……typen:1>;
(1c)增加未登录的用户这种特殊的用户类型,并且未登录用户的数量为1个,在数组中增加未登录用户,types=<unlogin:1,type1:1,type2:n……typen:1>,其中unlogin表示未登录的用户。
如图2所示,所述步骤(2)中,构造属于同一用户类型的不同用户针对同一操作的http请求,修改其中一个用户的http请求,并将修改后的请求发送给服务端,分析执行结果以检测平行越权访问漏洞,具体包括以下几个步骤:
(2a)从types数组中选择包括多个用户的用户类型得到数组types_s,types_s=<type2:n,type3:n……typem:n>,对于types_s中每种用户类型,分别执行步骤(2b)-(2f);
(2b)选择typei∈types_s类型的2个不同用户userA和userB,获取typei类型用户可以执行的全部操作,使用数组保存这些操作cmds=<cmd1,cmd2……cmdn>;
(2c)对于cmds每个操作cmdi,如果该操作需要访问后台服务端则执行步骤(2d)-(2f);
(2d)分别获取userA和userB用户执行该操作的http请求,http=<url,cookie,paramters,response>,其中url为请求的地址,cookie为请求的身份信息,paramters为请求参数,response为请求的返回结果。由于是同一个操作,因此2个请求的url地址是相同的,如果2个请求的返回的结果相同,则说明不同用户得到的结果是相同的,返回步骤2c处理下一个操作,否则执行步骤2e;
(2e)修改userB的httpB请求,将其中的请求参数设置为用户A的请求参数,得到的请求为http'=<url,cookieB,paramtersA,null>;
(2f)将http'请求发送给服务端,获取服务端的返回结果response',如果返回结果response'包含了userA的responseA的结果,则说明userB仅需要修改请求参数就可以获取userA的信息,检测出平行越权访问漏洞。
如图3所示,所述步骤(3)中,构造属于不同用户类型的不同用户的http请求,并修改属于某些用户类型的用户可执行但其他用户类型的用户无法执行操作的http请求,将修改后的请求发送给服务端,分析执行结果以检测未授权访问漏洞,具体包括以下几个步骤:
(3a)从types数组得到用户类型的数目n,选择任意两种不同的用户类型,分别执行步骤(3b)-(3f),总共有种不同的组合;
(3b)两种类型分别选择一个用户userC和userD,获取userC可以执行的全部操作cmds.userC=<cmdC1,cmdC2……cmdCn>,和userD可执行的全部操作cmds.userD=<cmdD1,cmdD2……cmdDn>;
(3c)对于userC执行每个操作cmdsCi,如果cmdsCi需要访问后台服务端,获取cmdsCi的http请求,httpCi=<urlCi,cookieCi,paramtersCi,responseCi>;对于userC的每个httpCi,如果该操作的urlCi在userD的可执行操作列表的http请求中也存在,则不处理该操作,否则执行步骤(3d)-(3e);
(3d)修改httpCi请求,将其中的cookieCi信息设置为userD的用户信息cookieD,得到的请求为httpCi'=<urlCi,cookieD,paramtersCi,null>;
(3e)将httpCi'请求发送给服务端,获取服务端的返回结果responsei',如果返回结果包含了userC的httpCi请求的结果responseCi,则说明userD可以执行不在其可执行操作列表中的操作,并且获取了userC的信息,检测出未授权访问漏洞。
(3f)对于userD的每个操作cmdsDi,如果cmdsDi需要访问后台服务端,获取cmdsDi的http请求,httpDi=<urlDi,cookieDi,paramtersDi,responseDi>。对于userD的每个httpDi,如果该操作的urlDi在userC的可执行操作列表的http请求中也存在,则不处理该操作,否则执行步骤,否则执行步骤(3g)-(3h);
(3g)修改httpDi请求,将其中的cookieDi信息设置为userC的用户信息cookieC,得到的请求为httpDi'=<urlDi,cookieC,paramtersDi,null>;
(3h)修改后的httpDi'请求发送给服务端,获取服务端的返回结果responsei',如果返回结果包含了userD的httpDi请求的结果responseDi,则说明userC可以执行不在其可执行操作列表中的操作,并且获取了userD的信息,检测出未授权访问漏洞。
实施例二
下面结合附图和“掌上车辆管理(简称:掌上车管)”具体的移动应用对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
参照图1所示,本发明一种电力移动应用越权访问漏洞检测方法,包括确定移动应用的用户类型、平行越权访问漏洞检测、未授权访问漏洞检测、测试结果汇总4个步骤进行。
确定移动应用存在的不同类型的用户,具体包括以下几个步骤:
(1a)根据移动应用的实际业务,确定移动应用存在的用户类型,使用types=<type1,type2……typen>数组保存用户类型,“掌上车管”存在申请者(applicant)、审批者(approver)和驾驶员(driver)3种不同用户。
types=<type1=applicant,type2=apporver,type3=dirver>
申请者在需要使用车辆的时候提交用车申请,并且可以查询自己的历史用车申请记录;审批者对车辆新申请的用车进行批准或驳回,并为批准的用车记录指定车辆和驾驶员,审批者可以查询所有的用车申请记录;驾驶员可以查询分配给自己的用车申请记录,并在提供用车服务完毕后确认用车流程结束。整个系统后台还存在数据备份、台帐管理、统计分析等管理功能,但是这些功能并未在移动端实现,因此不属于本实施例的检测范围。
(1b)根据移动应用的实际业务,确定每种用户类型支持的用户数量,“掌上车管”中存在多个申请者和驾驶员,但只有一个审批者。在数组中的每个类型后面,增加该类型用户的数量,1表示只有1个,n表示可以有多个types=<type1=applicant:n,type2=apporver:1,type3=dirver:n>;
(1c)增加未登录的用户这种特殊的用户类型,并且未登录用户的数量为1个,在数组中增加未登录用户,其中unlogin表示未登录的用户,types=<unlogin:1,type1=applicant:n,type2=apporver:1,type3=dirver:n>。
所述步骤(2)中,所述检测平行越权访问漏洞,具体包括以下几个步骤:
(2a)从types数组中选择包括多个用户的用户类型得到数组types_s,types_s=<type1=applicant:n,type3=dirver:n>,共有申请者和驾驶员2种用户类型包含多个用户,分别执行步骤(2b)-(2f);
(2b)选择typei∈types_s类型的2个不同用户,申请者类型的2个用户为:userA和userB,驾驶员类型的2个用户为:userC和userD。获取typei类型用户可以执行的全部操作,使用数组保存这些操作,申请者存在的操作包括:登录、查询历史用车申请记录、提交新的申请记录、个人设置、注销:
cmds.applicant=<cmd1=login,cmd2=newapply,cmd3=searchapply,cmd4=setting,cmd5=logout>
驾驶员存在的操作包括:登录、查询历史用车申请记录、结束用车申请记录、个人设置、注销:
cmds.driver=<cmd1=login,cmd2=finishapply,cmd3=searchapply,cmd4=setting,cmd5=logout>
(2c)对于每类每个操作,如果该操作需要访问后台服务端则执行步骤(2d)-(2f),cmds.applicant和cmds.driver中的所有操作都需要访问服务端;
(2d)cmds.applicant中的每个操作分别获取userA和userB用户执行该操作的http请求,以查询查询历史用车申请记录请求(searchapply)为例,获取userA和userB的http请求,其余请求参照下述过程执行平行越权访问漏洞检测过程。
userA的原始http请求是:
userB的原始http请求是:
从上述原始请求中提取出请求的4要素,http=<url,cookie,paramters,response>,其中url为请求的地址,cookie为请求的身份信息,paramters为请求参数,response为请求的返回结果。
提取之后userA的http请求是:
提取之后userB的http请求是:
由于是同一个操作,因此2个请求的url地址是相同的,如果2个请求的返回的结果相同,则说明不同用户得到的结果是相同的,返回步骤2c处理下一个操作,此时2个请求的返回结果不相同,则执行步骤2e;
(2e)修改userB的httpB请求,将其中的请求参数设置为用户A的请求参数,得到的请求为:
(2f)将新构造的http'请求发送给服务端,获取服务端的返回结果response'为:
返回结果response'包含了userA.httpA.responseA的结果,则说明userB仅需要修改请求参数就可以获取userA的信息,检测出平行越权访问漏洞。如果返回结果response'不包含userA的responseA的结果,该请求则没有平行越权访问漏洞。
cmds.applicant中的其他请求和cmds.driver中的所有请求,参照上述(3d)-(3f)的过程执行平行越权访问漏洞检测过程。
所述步骤(3)中,所述检测未授权访问漏洞,具体包括以下几个步骤:
(3a)从types数组得到用户类型的数目n,选择任意两种不同的用户类型,分别执行步骤(3b)-(3f),总共有种不同的组合。“掌上车管”中存在未登录用户(unlogin)、申请者(applicant)、驾驶员(driver)、审批者(apporver)4种不同类型的用户,因此总共产生6种不同的组合分别是:<unlogin,applicant>,<unlogin,driver>,<unlogin,apporver>,<applicant,driver>,<applicant,apporver>,<driver,apporver>。以<unlogin,applicant>为例执行步骤(3b)-(3f)的未授权访问漏洞检测过程,其他用户类型组合参照下述过程检测。
(3b)unlogin类型选择一个用户userC,applicant类型选择一个用户userD,获取userC和userD可以执行的全部操作:
userC可以执行登录操作:
cmds.userC=<cmdC1=login>
userD可以执行的操包括:登录、查询历史用车申请记录、提交新的申请记录、个人设置、注销:
cmds.userD=<cmdD1=login,cmdD2=newapply,cmdD3=searchapply,
cmdD4=setting,cmdD5=logout>
(3c)对于userC执行每个操作cmdsCi,如果cmdsCi需要访问后台服务端,获取cmdsCi的http请求,httpCi=<urlCi,cookieCi,paramtersCi,responseCi>;对于userD的每个操作cmdsDi,如果cmdsDi需要访问后台服务端,获取cmdsDi的http请求,httpDi=<urlDi,cookieDi,paramtersDi,responseDi>。此时userC只有登录操作,该操作需要访问后台,但该操作在userD的可执行操作列表中存在,因此不处理该操作,跳过步骤(3d)-(3e)。
(3f)对于userD的每个操作cmdsDi都需要访问后台,其中查询历史用车申请记录、提交新的申请记录、个人设置、注销5个操作的urlDi在userC的可执行操作列表中不存在,因此对这5个操作执行步骤(3g)-(3h)。
以查询查询历史用车申请记录请求(searchapply)为例,获取userD的http请求,其余请求参照下述过程执行未授权访问漏洞检测过程。
userD的原始用车申请记录查询http请求是:
提取之后userD的http请求是:
(3g)修改httpD3请求,将其中的cookieD3信息设置为userC的用户信息cookieC,从userC的登录请求中,获取userC的cookieC信息。
userC的原始登录http请求是:
提取之后userC的http请求是:
替换httpD3请求中的cookieD3信息,得到的请求为:
(3h)修改后的httpD3'请求发送给服务端,获取服务端的返回结果response3'为:response3'={success:'false',reason:'-1'},该结果不包含userD的httpD3请求的结果responseD3,则说明userC无法执行不在其可执行操作列表中的操作,不存在未授权访问漏洞。
如果返回结果包含了userD的httpD3请求的结果responseD3,则说明userC可以执行不在其可执行操作列表中的操作,并且获取了userD的信息,检测出未授权访问漏洞。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (7)

1.一种电力移动应用越权访问漏洞检测方法,其特征在于,包括以下步骤:
(1)获取并存储移动应用存在的所有用户类型和与每种用户类型对应的用户数量;
(2)构造属于同一用户类型的不同用户针对同一操作的http请求,修改其中一个用户的http请求,并将修改后的请求发送给服务端,分析执行结果以检测平行越权访问漏洞;
(3)构造属于不同用户类型的不同用户的http请求,并修改属于部分用户类型的用户可执行但其他类型用户无法执行操作的http请求,将修改后的请求发送给服务端,分析执行结果以检测未授权访问漏洞;
(4)综合步骤(2)和步骤(3)中检测发现的漏洞,完成电力移动应用越权访问漏洞检测。
2.根据权利要求1所述的一种电力移动应用越权访问漏洞检测方法,其特征在于:所述步骤(1)中获取并存储移动应用存在的所有用户类型和与每种用户类型对应的用户数量,具体包括以下步骤:
(1a)建立数据库;
(1b)根据移动应用的实际业务,确定移动应用存在的用户类型,并存储到数据库中;
(1c)根据移动应用的实际业务,确定并存储每种用户类型支持的用户数量,用户数量1个或多个,并存储到数据库中;
(1d)在数据库中增加“未登录的用户”这种用户类型,由于未登录用户的具有相同的权限,因此未登录用户的数量为1个。
3.根据权利要求1所述的一种电力移动应用越权访问漏洞检测方法,其特征在于:所述步骤(2)中的检测平行越权访问漏洞,具体包括以下步骤:
(2a)筛选出包括多个用户的用户类型,针对每种用户类型,分别执行步骤(2b)-(2f);
(2b)选择与该用户类型对应的其中2个不同的用户A和用户B,获取与该用户类型对应的用户可以执行的全部操作;
(2c)对于每个操作,分别执行步骤(2d)-(2f);
(2d)分别获取用户A和用户B执行该操作的http请求,如果2个请求的返回的结果不相同,则执行步骤2e;
(2e)修改用户B的http请求,将用户B的http请求中的请求参数设置为用户A的请求参数,形成一个新的http请求;
(2f)将新的http请求以用户B的身份发送给服务端,获取服务端的返回结果,如果返回结果包含了用户A的http请求的结果,则说明用户B获取了用户A的信息,检测出平行越权访问漏洞。
4.根据权利要求3所述的一种电力移动应用越权访问漏洞检测方法,其特征在于:所述步骤(2d)还包括:如果2个请求的返回的结果相同,返回步骤2c处理下一个操作。
5.根据权利要求1所述的一种电力移动应用越权访问漏洞检测方法,其特征在于:所述步骤(3)中构造属于不同用户类型的不同用户的http请求,并修改属于部分用户类型的用户可执行但其他类型用户无法执行操作的http请求,将修改后的请求发送给服务端,分析执行结果以检测未授权访问漏洞,具体包括以下步骤:
(3a)筛选出不同的用户类型,对于任意两种不同的用户类型,分别执行步骤(3b)-(3f);
(3b)分别选择与两种不同用户类型对应的用户C和用户D,获取用户C可以执行的全部操作和用D可执行的全部操作;
(3c)对于用户C的每个操作,如果该操作用户D不可以执行,则执行步骤(3d)-(3e);
(3d)获取用户C执行该操作的http请求,修改该http请求,将其中的请求用户信息设置为用户D的请求用户信息,形成新的http请求;
(3e)新的http请求以用户D的身份发送给服务端,获取服务端的返回结果,如果返回结果包含了用户C的http请求的结果,则说明用户D获取了用户C的信息,检测出未授权访问漏洞。
(3f)对于用户D每个操作,如果该操作用户C不可以执行,则执行步骤(3g)-(3h);
(3g)获取用户D执行该操作的http请求,修改该请求,将其中的请求用户信息设置为用户C的请求用户信息,形成新的http请求;
(3h)新的http请求以用户C的身份发送给服务端,获取服务端的返回结果,如果返回结果包含了用户D的http请求的结果,则说明用户C获取了用户D的信息,检测出未授权访问漏洞。
6.根据权利要求5所述的一种电力移动应用越权访问漏洞检测方法,其特征在于:所述步骤(3c)还包括:对于用户C的每个操作,如果该操作用户D也可以执行,则不处理该操作。
7.根据权利要求5所述的一种电力移动应用越权访问漏洞检测方法,其特征在于:所述步骤(3f)还包括:对于用户D每个操作,如果该操作用户C也可以执行,则不处理该操作。
CN201710033289.0A 2017-01-18 2017-01-18 一种电力移动应用越权访问漏洞检测方法 Active CN106713347B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710033289.0A CN106713347B (zh) 2017-01-18 2017-01-18 一种电力移动应用越权访问漏洞检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710033289.0A CN106713347B (zh) 2017-01-18 2017-01-18 一种电力移动应用越权访问漏洞检测方法

Publications (2)

Publication Number Publication Date
CN106713347A true CN106713347A (zh) 2017-05-24
CN106713347B CN106713347B (zh) 2019-06-11

Family

ID=58907658

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710033289.0A Active CN106713347B (zh) 2017-01-18 2017-01-18 一种电力移动应用越权访问漏洞检测方法

Country Status (1)

Country Link
CN (1) CN106713347B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108833365A (zh) * 2018-05-24 2018-11-16 杭州默安科技有限公司 一种基于流量的业务逻辑漏洞检测方法及其系统
CN108932426A (zh) * 2018-06-27 2018-12-04 平安科技(深圳)有限公司 越权漏洞检测方法和装置
CN109460661A (zh) * 2018-09-17 2019-03-12 平安科技(深圳)有限公司 一种逻辑安全漏洞检测方法、装置及终端设备
CN110225031A (zh) * 2019-06-06 2019-09-10 深圳开源互联网安全技术有限公司 动态权限漏洞检测方法、系统、装置及可读存储介质
CN110598418A (zh) * 2019-09-10 2019-12-20 深圳开源互联网安全技术有限公司 基于iast测试工具动态检测垂直越权的方法及系统
CN110688659A (zh) * 2019-09-10 2020-01-14 深圳开源互联网安全技术有限公司 基于iast测试工具动态检测水平越权的方法及系统
CN111125713A (zh) * 2019-12-18 2020-05-08 支付宝(杭州)信息技术有限公司 一种水平越权漏洞的检测方法、装置及电子设备
CN111209565A (zh) * 2020-01-08 2020-05-29 招商银行股份有限公司 水平越权漏洞检测方法、设备及计算机可读存储介质
CN111651766A (zh) * 2020-05-28 2020-09-11 杭州迪普科技股份有限公司 越权访问的测试方法及装置
CN112491807A (zh) * 2020-11-05 2021-03-12 杭州孝道科技有限公司 基于交互式应用检测技术的水平越权漏洞检测方法
CN112653670A (zh) * 2020-12-08 2021-04-13 北京大米科技有限公司 业务逻辑漏洞检测方法、装置、存储介质以及终端

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103501304A (zh) * 2013-10-12 2014-01-08 深信服网络科技(深圳)有限公司 控制web系统越权访问的方法及装置
CN104301302A (zh) * 2014-09-12 2015-01-21 深信服网络科技(深圳)有限公司 越权攻击检测方法及装置
US20150032903A9 (en) * 2010-04-01 2015-01-29 Lee Hahn Holloway Internet-based proxy service to limit internet visitor connection speed
CN104519070A (zh) * 2014-12-31 2015-04-15 北京奇虎科技有限公司 网站权限漏洞检测方法和系统
WO2015154539A1 (zh) * 2014-04-11 2015-10-15 北京奇虎科技有限公司 网站安全检测方法及装置
CN105357195A (zh) * 2015-10-30 2016-02-24 深圳市深信服电子科技有限公司 web访问的越权漏洞检测方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150032903A9 (en) * 2010-04-01 2015-01-29 Lee Hahn Holloway Internet-based proxy service to limit internet visitor connection speed
CN103501304A (zh) * 2013-10-12 2014-01-08 深信服网络科技(深圳)有限公司 控制web系统越权访问的方法及装置
WO2015154539A1 (zh) * 2014-04-11 2015-10-15 北京奇虎科技有限公司 网站安全检测方法及装置
CN104301302A (zh) * 2014-09-12 2015-01-21 深信服网络科技(深圳)有限公司 越权攻击检测方法及装置
CN104519070A (zh) * 2014-12-31 2015-04-15 北京奇虎科技有限公司 网站权限漏洞检测方法和系统
CN105357195A (zh) * 2015-10-30 2016-02-24 深圳市深信服电子科技有限公司 web访问的越权漏洞检测方法及装置

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108833365B (zh) * 2018-05-24 2021-06-15 杭州默安科技有限公司 一种基于流量的业务逻辑漏洞检测方法及其系统
CN108833365A (zh) * 2018-05-24 2018-11-16 杭州默安科技有限公司 一种基于流量的业务逻辑漏洞检测方法及其系统
CN108932426A (zh) * 2018-06-27 2018-12-04 平安科技(深圳)有限公司 越权漏洞检测方法和装置
CN108932426B (zh) * 2018-06-27 2022-05-03 平安科技(深圳)有限公司 越权漏洞检测方法和装置
CN109460661A (zh) * 2018-09-17 2019-03-12 平安科技(深圳)有限公司 一种逻辑安全漏洞检测方法、装置及终端设备
CN110225031A (zh) * 2019-06-06 2019-09-10 深圳开源互联网安全技术有限公司 动态权限漏洞检测方法、系统、装置及可读存储介质
CN110598418A (zh) * 2019-09-10 2019-12-20 深圳开源互联网安全技术有限公司 基于iast测试工具动态检测垂直越权的方法及系统
CN110598418B (zh) * 2019-09-10 2020-10-16 深圳开源互联网安全技术有限公司 基于iast测试工具动态检测垂直越权的方法及系统
CN110688659A (zh) * 2019-09-10 2020-01-14 深圳开源互联网安全技术有限公司 基于iast测试工具动态检测水平越权的方法及系统
CN111125713A (zh) * 2019-12-18 2020-05-08 支付宝(杭州)信息技术有限公司 一种水平越权漏洞的检测方法、装置及电子设备
CN111125713B (zh) * 2019-12-18 2022-04-08 支付宝(杭州)信息技术有限公司 一种水平越权漏洞的检测方法、装置及电子设备
CN111209565A (zh) * 2020-01-08 2020-05-29 招商银行股份有限公司 水平越权漏洞检测方法、设备及计算机可读存储介质
CN111651766A (zh) * 2020-05-28 2020-09-11 杭州迪普科技股份有限公司 越权访问的测试方法及装置
CN111651766B (zh) * 2020-05-28 2023-08-22 杭州迪普科技股份有限公司 越权访问的测试方法及装置
CN112491807A (zh) * 2020-11-05 2021-03-12 杭州孝道科技有限公司 基于交互式应用检测技术的水平越权漏洞检测方法
CN112653670A (zh) * 2020-12-08 2021-04-13 北京大米科技有限公司 业务逻辑漏洞检测方法、装置、存储介质以及终端
CN112653670B (zh) * 2020-12-08 2023-11-10 北京大米科技有限公司 业务逻辑漏洞检测方法、装置、存储介质以及终端

Also Published As

Publication number Publication date
CN106713347B (zh) 2019-06-11

Similar Documents

Publication Publication Date Title
CN106713347A (zh) 一种电力移动应用越权访问漏洞检测方法
Wu et al. A user sensitive subject protection approach for book search service
US10268840B2 (en) Systems and methods of determining compromised identity information
US10599872B2 (en) Systems and methods of determining compromised identity information
US9235629B1 (en) Method and apparatus for automatically correlating related incidents of policy violations
CN103152442B (zh) 一种僵尸网络域名的检测与处理方法及系统
CN102891897B (zh) 网页分享方法和服务器及客户端
US20200004989A1 (en) Systems and methods of determining compromised identity information
CN109359480B (zh) 一种面向数字图书馆的用户隐私保护方法及系统
US20090044279A1 (en) Systems and methods for fraud detection via interactive link analysis
US20080104021A1 (en) Systems and methods for controlling access to online personal information
US20090198746A1 (en) Generating anonymous log entries
DE202013102441U1 (de) System zur Überprüfung digitaler Zertifikate
DE112011103273B4 (de) Verfahren, Computerprogrammprodukt und Vorrichtung zur Weitergabe von Identitäten über Anwendungsebenen unter Verwendung von kontextabhängiger Zuordnung und gesetzten Werten
US20180270266A1 (en) System and Method for Empirical Organizational Cybersecurity Risk Assessment Using Externally-Visible Data
RU2722693C1 (ru) Способ и система выявления инфраструктуры вредоносной программы или киберзлоумышленника
CN109063138A (zh) 用于在区块链即服务平台搜索数据的方法、设备及存储介质
US11308502B2 (en) Method for detecting web tracking services
CN103067387B (zh) 一种反钓鱼监测系统和方法
CN101447064B (zh) 一种审计管理系统和审计管理方法
Scheufele Content analysis, qualitative
CN112000984A (zh) 一种数据泄露检测方法、装置、设备及可读存储介质
CN110837646A (zh) 一种非结构化数据库的风险排查装置
Farah et al. SQLi penetration testing of financial Web applications: Investigation of Bangladesh region
Campfield The problem with (most) network detection and response

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant