1.5指纹识别
指纹由于其终身不变性、唯一性和方便性,几乎已成为生物特征识别的代名词。通常我们说的指纹就是人的手指末端正面皮肤上凹凸不平的纹线,纹线规律地排列形成不同的型。而本文所讲的指纹是指网站CMS指纹识别,计算机操作系统及Web容器的指纹识别等。
应用程序一般在html、js、CSS等文件中多多少少会包含一些特征码,比如WordPress在robots.txt中会包含wp-admin、首页index.php中会包含generator=word press 3.xx,这个特征就是这个CMS的指纹,那么,当碰到其他网站也存在此特征时,就可以快速识别出该CMS,所以叫做指纹识别。
在渗透测试中,对目标服务器进行指纹识别是相当有必要的,因为只有识别出相应的Web容器或者CMS,才能查找与其相关的漏洞,然后才能进行相应的渗透操作。
CMS(Content Management System)又称整站系统或文章系统。在2004年以前,如果想进行网站内容管理,基本上都靠手工维护,但在信息爆炸的时代,完全靠手工完成会相当痛苦。所以就出现了CMS,开发者只要给客户一个软件包,客户自己安装配置好,就可以定期更新数据来维护网站,节省了大量的人力和物力。常见的CMS有Dedecms(织梦)、Discuz、PHPWEB、PHPWind 、PHPCMS、ECShop、Dvbbs、SiteWeaver、ASPCMS、帝国、Z-Blog、Wordpress等。
代表工具有御剑Web指纹识别、WhatWeb、WebRobo、椰树轻量WEB指纹识别等,可以快速识别一些主流CMS.
除了这些工具,读者还可以利用一些在线网站查询CMS指纹识别,如下图所示。
BugScaner:http://WhatWeb.bugscaher.com/look.
云溪指纹:http://www.yun see.cn/finger.html.
和WhatWeb:http://WhatWeb.net/。
1.6查找真实IP
1.目标服务器存在CSN
2.判断目标是否使用了CDN
3.绕过CDN寻找真实IP
4.验证获取的IP
1.7收集敏感目录文件
在渗透测试中,探测Web目录结构和隐藏的敏感文件是一个必不可少的环节,从中可以获取网站的后台管理页面,文件上传界面,甚至可能扫描出网站的源代码。
针对网站目录的扫描主要有DirBuster,御剑后台扫描珍藏版,wwwsxan,Spender.py(轻量级快速单文件目录后台扫描)、sensitive scan(轻量级快速到单文件目录后台扫描)、Weakfilescan(轻量级快速单文件目录后台扫描)等工具。本届简单地讲解一下DirBuster。
DirBuster是OWASP开发的一款基于Java编写的、专门用于探测Web服务器的目录和隐藏文件。因为是用Java编写的,所以需要在Java运行环境下(JRE)下安装。该工具的界面是纯图形化的,用法相对简单,使用的基本步骤如下。
在Target URL输入框中输入要扫描的网址,扫描时将请求方法设置为“Auto Switch(HEAD and GET)”选项。
设置线程的数值,推荐在20~30之间。太大了容易隐私系统死机。
选专业扫描类型,如果使用你个人字典扫描,则选择“List based brute force”选项。
单击“Browse”选择字典,可以选择工具自带的字典,也可以选择自己的字典。
在Select starting options中选择“URL Fuzz”方式进行扫描。设置fuzzing时需要注意,在URL to fuzz里输入“/{dir}”。这里的{dir}是一个变量,用来代表字典中的每一行,如图1-13所示。
如果你扫描的目标是http://www.xxx.com/admin/,那么就要在URL to fuzz 里填写“/admin/{dir}”,意思是在“{dir}”的前后可以随意拼接你想要的目录或者后缀,例如输入“:/admin/{dir}.php”就表示扫描admin目录下的所有php文件。
除此之外,读者还可以利用很多在线工具站,效果也相当不错,这里推荐一个:WebScan(http://www.WebScan.cc/)。
1.8社会工程学
社会工程学在渗透测试中起着不小的作用,利用社会工程学,攻击者可以从一名员工的口中挖掘出本应该是秘密的信息。