预防跨站请求伪造—Web安全深度剖析(3)

发表于:2015-5-11 11:13

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:张炳帅    来源:51Testing软件测试网原创

  (51Testing软件测试网获电子工业出版社和作者授权连载本书部分章节。任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。)
  10.2  逻辑错误漏洞
  逻辑错误漏洞是指由于程序逻辑不严谨或逻辑太复杂,导致一些逻辑分支不能够正常处理或处理错误。通俗地讲:一个系统的功能太多后,程序开发人员就难以思考全面,对某些地方可能有遗漏,或者未能正确处理,从而导致逻辑漏洞。逻辑漏洞也可以说是程序开发人员的思路错误、程序开发人员的逻辑存在漏洞。
  逻辑错误漏洞是非常隐蔽的,它不像SQL注射、XSS跨站脚本、命令执行漏洞有鲜明的标识,自动化扫描器可以定义一系列的规则识别出这些漏洞,而逻辑漏洞一般出现在功能(业务流程)上,这是漏洞扫描工具无法识别的。
  逻辑漏洞的危害也是巨大的,根据不同的场景所产生的效果也不同,比如,任意密码修改、越权访问、密码找回、交易支付金额修改等。
  10.2.1  挖掘逻辑漏洞
  逻辑漏洞只出现于业务流程中(模块功能),也就是说,网站的任何部分都有可能存在着逻辑漏洞。比如,修改个人资料就完全可能出现逻辑漏洞。
  黑客在挖掘逻辑漏洞时的操作步骤如下。
  ① 发现网站所提供的功能模块。比如:修改密码、找回密码、修改个人资料等功能。
  ② 针对具体的功能确定业务流程,详细划分具体步骤,以购物为例介绍,购物流程如下。
  - 挑选商品,商品可多选;
  - 立刻购买,在"立刻购买"按钮旁边可以选择购买数量、购买样式等;
  - 显示购买信息,在此步骤可以给卖家留言,填写购买数量、使用优惠券、匿名购买、找人代付等;
  - 提交订单;
  - 付款。
  ③ 拦截HTTP/HTTPS请求,分析其参数项的含义;
  ④ 修改参数值,尝试触发逻辑漏洞;
  ⑤ 返回第②步骤,对其他功能继续测试;
  简单地说,黑客挖掘逻辑漏洞有两个重点,就是业务流程和HTTP/HTTPS请求篡改。下面将详细介绍常见的逻辑漏洞。
本文选自《Web安全深度剖析》第十章,本站经电子工业出版社和作者的授权。
版权声明:51Testing软件测试网获电子工业出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
相关文章:
浏览器Cookie机制—Web安全深度剖析(2)
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号