最近忙于工作没有抽出时间来分享渗透测试文章,索性今天由我们Sinesafe的高级渗透大牛给大家详细讲下主要在业务中发现逻辑和越权的漏洞检测方法,希望大家能对自己的网站安全进行提前预防和了解,再次提醒做安全测试前必须要有正规的授权才能进行测试,提供网站的安全性保障权益。
3.11.1. Xpath定义XPath注入攻击是指利用XPath解析器的松散输入和容错特性,能够在 URL、表单或其它信息上附带恶意的XPath 查询代码,以获得权限信息的访问权并更改这些信息。XPath注入攻击是针对Web服务应用新的攻击方法,它允许攻击者在事先不知道XPath查询相关知识的情况下,通过XPath查询得到一个XML文档的完整内容。3.11.2. Xpath注入攻击原理XPath注入攻击主要是通过构建特殊的输入,这些输入往往是XPath语法中的一些组合,这些输入将作为参数传入Web 应用程序,通过执行XPath查询而执行入侵者想要的操作,下面以登录验证中的模块为例,说明 XPath注入攻击的实现原理。在Web 应用程序的登录验证程序中,一般有用户名(username)和密码(password) 两个参数,程序会通过用户所提交输入的用户名和密码来执行授权操作。若验证数据存放在XML文件中,其原理是通过查找user表中的用户名 (username)和密码(password)的结果来进行授权访问,例存在user.xml文件如下:BenElmoreabctest123ShlomyGantzxyz123test则在XPath中其典型的查询语句如下://users/user[loginID/text()=’xyz’and password/text()=’123test’]但是,可以采用如下的方法实施注入攻击,绕过身份验证。如果用 户传入一个 login 和 password,例如 loginID = ‘xyz’ 和 password = ‘123test’,则该查询语句将返回 true。但如果用户传入类似 ‘ or 1=1 or ”=’ 的值,那么该查询语句也会得到 true 返回值,因为 XPath 查询语句最终会变成如下代码://users/user[loginID/text()=”or 1=1 or ”=” and password/text()=” or 1=1 or ”=”]这个字符串会在逻辑上使查询一直返回 true 并将一直允许攻击者访问系统。攻击者可以利用 XPath 在应用程序中动态地操作 XML 文档。攻击完成登录可以再通过XPath盲入技术获取最高权限帐号和其它重要文档信息。3.12. 逻辑漏洞 / 业务漏洞3.12.1. 简介逻辑漏洞是指由于程序逻辑不严导致一些逻辑分支处理错误造成的漏洞。在实际开发中,因为开发者水平不一没有安全意识,而且业务发展迅速内部测试没有及时到位,所以常常会出现类似的漏洞。3.12.2. 安装逻辑查看能否绕过判定重新安装查看能否利用安装文件获取信息看能否利用更新功能获取信息3.12.3. 交易3.12.3.1. 购买修改支付的价格修改支付的状态修改购买数量为负数修改金额为负数重放成功的请求并发数据库锁处理不当3.12.3.2. 业务风控刷优惠券套现3.12.4. 账户3.12.4.1. 注册覆盖注册’尝试重复用户名注册遍历猜解已有账号3.12.4.2. 登录撞库账号劫持恶意尝试帐号密码锁死账户3.12.4.3. 找回密码重置任意用户密码密码重置后新密码在返回包中Token验证逻辑在前端3.12.4.4. 修改密码越权修改密码修改密码没有旧密码验证3.12.5. 验证码验证码强度不够验证码无时间限制或者失效时间长验证码无猜测次数限制验证码传递特殊的参数或不传递参数绕过验证码可从返回包中直接获取验证码不刷新或无效验证码数量有限验证码在数据包中返回修改Cookie绕过修改返回包绕过图形验证码可OCR或使用机器学习识别验证码用于手机短信/邮箱轰炸3.12.6. SessionSession机制Session猜测Session伪造Session泄漏Session Fixation3.12.7. 越权水平越权攻击者可以访问与他拥有相同权限的用户的资源权限类型不变,ID改变垂直越权低级别攻击者可以访问高级别用户的资源权限ID不变,类型改变交叉越权权限ID改变,类型改变3.12.8. 随机数安全使用不安全的随机数发生器使用时间等易猜解的因素作为随机数种子3.12.9. 其他用户/订单/优惠券等ID生成有规律,可枚举接口无权限、次数限制加密算法实现误用执行顺序敏感信息泄露3.13. 配置安全3.13. 配置安全弱密码位数过低字符集小为常用密码个人信息相关(手机号 生日 姓名 用户名)使用键盘模式做密码敏感文件泄漏.git.svn数据库Mongo/Redis等数据库无密码且没有限制访问加密体系在客户端存储私钥三方库/软件公开漏洞后没有及时更新,如果对此有进一步的想加强网站安全性以及渗透测试服务,可以咨询专业的网站安全公司来处理解决,国内推荐Sine安全,启明星辰,绿盟等等专业的安全公司。免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考;文章版权归原作者所有!本站作为信息内容发布平台,页面展示内容的目的在于传播更多信息;本站不提供任何相关服务,阁下应知本站所提供的内容不能做为操作依据。市场有风险,投资需谨慎!如本文内容影响到您的合法权益(含文章中内容、图片等),请及时联系本站,我们会及时删除处理。