黑客利用多年挖洞经验,轻松获得4万美金漏洞

发表于:2020-2-21 09:18

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

 作者:佚名    来源:安界

  作为前言,当我在7月底发现本文中的漏洞时,我还不知道有“空字节溢出”这种类型的安全问题。我仅只是对一个标准Web应用的用户输入点进行了Fuzzing测试,就发现了这么一个有意思的漏洞,并获得了厂商高达$40,000美金的奖励。
  直到近期,HackerOne上一个名为 “maxarr” 的用户上报了一个关于Mail.ru存在内存内容泄露的漏洞,我感觉他的这个漏洞和我的非常相似,Mail.ru安全总监Sergey Belov也对该漏洞有了以下的说明:(Lua绑定到不安全的C语言函数时导致的内存信息泄露)
  
  “maxarr” 未在漏洞报告中给出具体细节,但Sergey Belov推特内容中透露出来的东西,让我对此前7月份发现的那个“空字节溢出”漏洞有了更准确的认识。在此我来做个分享。
  漏洞发现背景
  漏洞发现于DEF CON会议的前几天,当时我在旧金山闲了几天,并准备和一众朋友们开车到拉斯维加斯参加DEF CON大会,凑巧就是在这放松的几天当中,我发现了该漏洞。
  朋友们准备驾车前往拉斯维加斯,其实本来我是不想去参加DEF CON大会的,但在最后时刻我甚至连行李和衣服都没准备,就决定加入了他们的公路之旅。我随便买了一些换洗的衣服,并与大家相约第二天早上在附近的星巴克做一波测试,之后就上路前往DEF CON。
  意外地发现
  当我一开始测试目标Web应用时,我就想到了用一些字符串技巧去注册测试账户,比如用“victim”加上一些空字节、CRLF控制符、空格或其它Unicode等特殊字符当做注册的用户名,这样做的想法在于,有些后端Web应用在处理这些特殊字符时,会把这些特殊字符简单的删除,由此做为攻击者来说,就能获得与目标账户“victim”同等的账户权限了。
  我想如果这种思路最终可行,那么整个测试逻辑应该是这样的:攻击者用victim%00作为注册用户,有些独特的victim%00到达前端注册程序后,经处理操作,并被转向后端服务进行处理。关键点就在于,当victim%00经过前端和后端的两次处理后,其中的空字节%00在到达后端服务时就被删除了,所以最终变成了victim。

      上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号