1.指纹识别
指纹识别是指通过一些特征或特定文件来识别目标网站或系统的类型、版本、组件等信息,以便寻找相应的漏洞或攻击方法。
-
主动指纹识别
通过向目标系统发送正常和异常的请求以及对文件内容的查找,记录响应方式,然后与指纹库进行对比来识别。
-
被动指纹识别
被动指纹识别不会主动向目标发送探测数据包,因此具有隐蔽性和安全性的优势,但也可能受到网络环境和数据包内容的限制。
1.1 插件识别
Wappalyzer插件:这是一款浏览器插件,可以分析当前网站使用的技术,Wappalyzer支持Chrome,edge,firefox等主流浏览器。
如何安装Wappalyzer插件
直接在浏览器的插件商店搜索,如下图所示(以FireFox为例)
接下来,单击Firefox浏览器右上角的扩展图标,然后单击Wappalyzer,此时会弹出一个界面,用来询问是否同意该插件访问网站,单击I’m ok with that按钮后,便会显示当前网站的指纹,如下图所示:
1.2 WhatWeb
WhatWeb是一款开源的网站指纹识别工具,可以识别网站使用的CMS、博客平台、中间件、Web框架模块、网站服务器等信息。
WhatWeb已经预装在Kali系统中,使用命令如下:
whatweb [IP/域名]
# 以百度为例
whatweb www.baidu.com
http://www.baidu.com [200 OK] Cookies[BAIDUID,BDSVRTM,BD_HOME,BIDUPSID,PSTM], Country[CHINA][CN], Email[index@2.png,pop_tri@1x-f4a02fac82.png,qrcode-hover@2x-f9b106a848.png,qrcode@2x-daf987ad02.png,result@2.png], HTML5, HTTPServer[BWS/1.1], IP[180.101.50.242], JQuery, Meta-Refresh-Redirect[http://www.baidu.com/baidu.html?from=noscript], OpenSearch[/content-search.xml], Script[application/json,text/javascript], Title[百度一下,你就知道], UncommonHeaders[bdpagetype,bdqid,traceid], X-UA-Compatible[IE=Edge,chrome=1,IE=edge], X-XSS-Protection[1;mode=block]
http://www.baidu.com/baidu.html?from=noscript [200 OK] Apache, Cookies[BAIDUID], Country[CHINA][CN], HTML5, HTTPServer[Apache], IP[180.101.50.242], Script, Title[百度一下,你就知道], X-UA-Compatible[IE=Edge]
whatweb可以对请求头进行更改,如下所示:
whatweb [IP/域名] -H:Snowwolf:apt -U:Chrome
# -H:修改Http头,此处修改成Snowwolf:apt
# -U:修改User-Agent的值,此处修改成了Chrome
如何使用whatweb查看更多信息:
whatweb [IP/域名] -v
# 举例:whatweb www.baidu.com -v
1.3 WAF识别
什么是WAF:
WAF的全称是:Web Application Firewall,也就是Web应用防火墙。
WAF工作在应用层,所以更加有利于Web应用的防护,WAF可以对来自Web应用客户端的各类请求进行内容检测和验证,确保其安全性和合法性,对非法的请求及时阻断,从而对站点进行有效的保护。
什么是WAF识别:
WAF识别是指通过一些特征或特定文件来识别目标网站是否使用了WAF,还可以识别WAF的类型和规则等。
现有的WAF识别技术可以通过向目标网站的WAF构造并发送恶意请求,然后分析返回的响应内容,从而来判断目标网站使用的WAF。
使用wafw00f识别waf
wafw00f [IP/域名]
为了防止waf发现探测的IP地址,wafw00f还支持代理,命令如下:
wafw00f [IP/域名] --proxy=[代理地址]
2.目录扫描
目录扫描可以帮助渗透测试人员发现网站中的隐藏或敏感目录,从而获取更多的信息或利用漏洞。
目录扫描的原理是使用字典或暴力破解的方法,对网站的URL进行拼接和访问,根据响应状态码或内容来判断目录是否存在。
2.1 Dirb
Dirb是一个基于命令行界面的目录扫描工具,它可以使用内置的字典或自定义的字典对网站进行扫描,同时支持代理、鉴权、忽略状态码等功能。
使用命令:
dirb [IP/域名]
如果目标站点需要登录,可以让dirb带cookies进行扫描,具体命令如下:
dirb [IP/域名] -c "cookies"
如果需要递归扫描可使用-R参数
dirb [IP/域名] -R
Dirb的默认字典是:/usr/share/wordlists/dirb/common.txt,也可以使用自己的字典,只需要在命令后加上字典的路径即可。
Dirb更改User-Agent扫描:
dirb [IP/域名] -a "User-Agent信息"
2.2 DirBuster
DirBuster是一款基于图形用户界面的目录扫描工具,它的功能与Dirb基本相同,都可以使用内置的字典或自定义的字典对网站进行扫描,同时支持多线程、代理、鉴权、忽略状态码等功能。
-
Target URL:扫描的网站地址。
-
Number of Threads:扫描线程数。
-
File with list of dirs/files:字典文件。
-
File extension:扫描的文件扩展名。
在设置完毕后,单击Start按钮开始扫描,扫描的结果会显示在DirBuster界面中。单击随后弹出的窗口中的Results-Tree View标签,则会以树形结构显示扫描到的信息
如果想扫描需要登录的网站,也可以进行进行设置,点击Advanced Options切换到DirBuster Options界面,单击Authentication Options标签,填写登录凭据并勾选Use HTTP Authentication选项就可以进行扫描了。
2.3 其他目录扫描工具
kali还内置了其他目录扫描工具,使用原理也与前面几个工具类似
比如Gobuster,ffuf,Wfuzz等,都是很好用的目录扫描工具,都有各自的特色,比如Wfuzz可以发现web应用程序的隐藏资源。