一、 前言
Web指纹是Web服务组件在开发时留下的对其类型及版本进行标识的特殊信息,包括Web服务器指纹、Web运用指纹以及前端框架指纹等。在Web安全测试过程中,收集Web指纹信息也是一个比较重要的步骤;在安全运营过程中,通过指纹识别识别资产的Web信息,这样能更加了解整个资产存在哪些方面的威胁,然后对症检测修补。
网络上开源的Web指纹识别程序很多,如Wappalyzer,Whatweb, wpscan, joomscan等等,在线指纹平台有云悉,还有我们本文重点介绍的数字观星指纹平台
(https://fp.shuziguanxing.com/#/)等。接下来会介绍如何编写以及编译指纹并提交到平台上。
二、 初见
实践是认识事物最快的途径,这里先使用常见的指纹识别工具做简单的指纹识别示范。
1. Whatweb
Whatweb是一个基于Ruby语言的开源网站指纹识别软件,正如它的名字一样,Whatweb能够识别各种关于网站的详细信息包括:CMS类型、博客平台、中间件、Web框架模块、网站服务器、脚本类型、JavaScript库、IP、Cookie等。
在kali下sudo apt install whatweb :
对网站进行指纹识别:
2. Wappalyzer
Wappalyzer是基于正则表达式来识别Web应用,它的功能是识别单个url的指纹,其原理就是给指定URI发送HTTP请求,获取响应头与响应体并按指纹规则进行匹配。它也是一款浏览器插件,能识别出网站采用了那种Web技术,能够检测出CMS和电子商务系统、留言板、Javascript框架,主机面板,分析统计工具和其它的一些Web系统。这里主要介绍基于node.js的Wappalyer的安装与使用。
(1)node.js环境的安装,官网下载地址https://nodejs.org/en/
(2)通过Node.js安装Wappalyzer