出品|MS08067实验室(www.ms08067.com)
本文作者:见龙御驾(Ms08067核心成员)
这篇文章,将要展示赏金猎人接近目标的独特方式。
在传统的渗透测试手法中,我们的侦查方式是很固定的。比如子域名侦查,目录扫描,端口扫描,cms版本探测,WAF探测等等。这些技术在很多书中都有非常详尽的讲解,网络上也有很多的教程。
但要注意到的一个事实是,现在的公共赏金项目运行了很多年,常规的漏洞显然基本绝迹。
猎人的机会在哪里?
赏金猎人需要关注的是什么?
需要对目标功能点的全局观察和判断。然后推断那些功能点容易出现问题,重点测试。其中要注意到一个基本事实:一个新推出来的产品(或者功能),出现缺陷的机会一定更多。
某个著名的赏金猎人是这样回答如何观察目标的:
“查看它们的首页,检查有什么服务产品更新,去查看它们的工程博客,关注官方的Twitter,facebook,等社交媒体发布的内容。尽量不忽略掉它们任何推出的服务功能更新。(划重点)子域名暴力猜解、Nmap扫描和Google Dork查询,这些不是必须流程,我只在必要时才会做。”
某个facebook黑客的方法是现场去facebook的产品发布会,一个道理。一个新出来的产品,显然不够完美,缺陷多多。这种切入点无疑很高明。
工程博客是开发部门发布的程序功能更新的,是关注的重点。所以一但发布了更新。就应该开足火力,去探索漏洞。
一个网站的各种功能点成百上千,有的已经被测试了无数次,显然足够安全,在这些地方只会浪费太多的精力而无所作为。
所以,立即修改你的侦查方式!
针对子域名的侦查,赏金猎人更关注新推出来的域名,最新的子域名意味着最新的功能点。尤其是一些大型网络巨头,由于业务的拓展需求,更新发布的子域名频率还是非常高的。
如果你是第一个探索者,你的机会就会更多。
具体的技术细节,以后的章节单独披露。
接下来,当决定要进入网站后,赏金猎人做的事情是:观察功能点,记笔记。
有很多的网络笔记程序,可以记录屏幕截图,效果都非常好。
记录网站的各种功能点,每个功能点一个子目录,比如:
注册;
忘记密码;
重置密码;
设置密码;
个人信息管理;
邀请;
上传;
下载;
等等...
一些大型网站可能存在成百个功能点,在这些功能点,哪些功能点是属于常规的功能点,哪些功能点是不常见的。
不常见的功能点显然是测试的首选。越复杂的功能点越有可能出错,也是重点测试的切入点。有些功能点藏的很隐蔽,很多测试人员甚至没有观察到。有些功能点需要手动激活,有些功能点需要与用户交互。把常规的功能点测试放到后面,优先测试上面所说的功能点。
总之,先要熟悉目标的各种功能特性,每个功能都要以用户的角度尝试一下。有些赏金猎人数年只专注一个目标,有些赏金猎人同时面向几十个目标,有的赏金猎人会开发自己的独特自动化测试面向全部目标。各种风格都有。
功能点的记录如下图:(这个列表会随着探索的深入越来越长)
随着对功能点的深入了解,每个功能点会附加更多的信息。然后运用发散思维,去思考,猜想。每一个功能点,先要去了解运行的方式,保存burp的抓包截图,需要用到那些参数,每个参数有什么作用。哪些参数可以控制,哪些参数可有可无等等。这是一个很花时间的过程。
能不能找到缺陷,就看你的想法是什么?一个输入输出的地方,能想到什么?
Xss?
模板注入?
html注入?
Web DOS 或者更多奇特想法?
看这个图,一个国外猎人观察到的功能点和写下能想到的思路
先写出这些想法,不要着急去测试,看看能想到多少种思路。如果思路不够,可以再去逆向学习,看看其他赏金猎人的思路文章。思路确定后,就可以开展测试,并且要做到极致。
说到底,赏金猎人比拼的是各种奇特思路,常规测试思路都公布在网络上,平时多收集和总结。
这个大家都做得到,只要你足够努力。要想别人想不到的,得有奇思妙想的特质。
测试总会遇到各种想不到的阻碍,这就需要一个好的心态。会遇到各种WAF的阻碍,各种安全机制的阻碍,会遇到各种看不懂的主机头,这是必须的,不可能像CTF的教程那样容易。
遇到阻碍了,就只有停下来,作好笔记。去twitter,youtube,blog上搜索过关的技巧。或者等待灵感的爆发,或者几个人进行头脑风暴,或者去找大牛寻求突破。
这个时间可能是几周或者更长时间。
本文分享自 Ms08067安全实验室 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!