渗透测试在网站,APP刚上线之前是一定要做的一项安全服务,提前检测网站,APP存在的漏洞以及安全隐患,避免在后期出现漏洞,给网站APP运营者带来重大经济损失,很多客户找到我们SINE安全公司做渗透测试服务的同时,我们积累了十多年的漏洞检测经验,对客户的网站各项功能以及APP进行全面的安全检测,下面我们就对渗透测试中的一些知识点跟大家科普一下:
越权漏洞是什么?
详细的跟大家讲解一下什么是越权漏洞,在整个渗透测试过程中,越权漏洞是发生在网站,APP功能里的,比如用户登录,操作,提现,修改个人资料,发送私信,上传图片,撤单,下单,充值,找回密码等等,那么可以简单的理解为,绕过授权对一些需要验证当前身份,权限的功能进行访问并操作,举例来讲:在网站APP里的找回密码功能,正常是按照手机号来进行找回密码,那么如果存在越权漏洞,就可以修改数据包,利用其它手机号获取短信,来重置任意手机号的账户密码。发生漏洞的根本原因是对需要认证的页面存在漏洞,没有做安全效验,导致可以进行绕过,大部分的存在于网站端,以及APP端里,像PHP开发的,以及JAVA开发,VUE.JS开发的服务端口都存在着该漏洞,小权限的用户可以使用高权限的管理操作,这就是越权漏洞。
越权漏洞又分为水平越权,垂直越权,简单来理解的话,就是普通用户操作的权限,可以经过漏洞而变成管理员的权限,或者是可以操作其它人账号的权限,也叫未授权漏洞,正常如果访问管理员的一些操作,是需要有安全验证的,而越权导致的就是绕过验证,可以访问管理员的一些敏感信息,一些管理员的操作,导致数据机密的信息泄露。垂直越权漏洞可以使用低权限的账号来执行高权限账号的操作,比如可以操作管理员的账号功能,水平越权漏洞是可以操作同一个层次的账号权限之间进行操作,以及访问到一些账号敏感信息,比如可以修改任意账号的资料,包括查看会员的手机号,姓名,充值记录,撤单记录,提现记录,注单记录等等,也可以造成使用水平越权来执行其他用户的功能,比如删除银行卡,修改手机号,密保答案等等。
关于越权漏洞的测试方法我们举例来讲解一下:
很多网站,APP设计过程中对ID号是以userid=001等来命名的,我们在登录网站后,输入会员的账号密码,查看用户的信息,比如我的查看链接是www.xxx.com/u/user.php?user_id=008,打开这里链接就可以看到我的详细信息,包括姓名,注册的手机号,地址,上传的图片,余额等等,那么如果网站存在越权漏洞我们就可以来测试一下,将user_id=008改为user_id=009,打开网站就可以看到其他用户的详细信息,以此类推就可以查看任意的账户信息,导致信息泄露发生,危害较大。
渗透测试中发现的越权漏洞修复方案
对存在权限验证的页面进行安全效验,效验网站APP前端获取到的参数,ID,账户密码,返回也需要效验。对于修改,添加等功能进行当前权限判断,验证所属用户,使用seesion来安全效验用户的操作权限,get,post数据只允许输入指定的信息,不能修改数据包,查询的越权漏洞要检测每一次的请求是否是当前所属用户的身份,加强效验即可,如果对程序代码不是太懂的话也可以找专业的网站安全公司处理,渗透测试服务中检测的漏洞较多,下一篇文章,我们SINE安全继续跟大家讲解,科普渗透测试,让您的网站APP更安全。