使用Kali Linux收集信息的Web应用程序
我们将详细学习以下主题:
- 识别网站背后的技术
- 识别一个网站是否使用某种内容管理系统
- 谷歌黑客或谷歌恶搞
- 查找有关网页应用程序中的漏洞和利用信息
WhatWeb
GitHub: https://github.com/urbanadventurer/WhatWeb
图1. Whatweb 官方横幅
WhatWeb 是一个出色的扫描器,用于指纹识别网页应用技术,包括内容管理系统(CMS)、JavaScript 库、网络服务器、嵌入式设备、版本号、电子邮件地址、账户 ID、网络框架模块等。WhatWeb 是用 Ruby 语言编写的。WhatWeb 目前有 1822 个插件(这个数字还在不断增长)。它是开源的,已经安装在 Kali Linux 中。如果你没有 Kali Linux,可以在 GitHub 上下载 WhatWeb。
WhatWeb是我在Kali Linux中进行Web应用信息收集时的另一个最爱工具。它简单而且展示了大量有价值的信息。
让我们来看看以下Kali Linux终端中的WhatWeb命令:
图2. Kali Linux 终端中的 Whatweb
WhatWeb 目标选择
WhatWeb 支持多种目标选择方法,例如固定单个或多个 URL:
whatweb [URL1] [URL2] [URL…n]一个单独的主机名或IP地址:
whatweb [Hostname/IP]图3. bssn.go.id上的Whatweb报告
CIDR格式范围内的多个IP地址:
whatweb 103.108.255.0/24
Whatweb 175.106.20.1-255对于包含CIDR格式IP地址范围的文件,您需要添加一个-i/-input-file=[FILE]参数:
whatweb -i ~/target.txtWhatWeb 攻击级别
WhatWeb 默认以隐秘模式运行。它是最快的,因为它只需要对一个网站发出一次 HTTP 请求。出于渗透测试的目的,用户可以通过添加 -a 4(-a 表示使用重度攻击模式,-a 1 表示使用默认的隐秘模式)参数,将扫描的攻击级别设置为更激进或更密集的模式。
whatweb -a 4 [URL]WhatWeb 更改用户代理
Whatweb默认情况下将其用户代理定义为“ WhatWeb/0.0.5 ”。
whatweb --user-agent “AppleWebKit/602.1.50”您可以在这个网站上查看更多用户代理列表:
https://developers.whatismybrowser.com/useragents/explore/
WhatWeb 代理
您还可以使用代理隐藏您的身份。互联网上有很多免费代理服务器。要使用开放代理,请添加以下参数:
whatweb --proxy [hostname:port]默认情况下,代理端口是8080。如果您使用需要身份验证的私有代理,可以添加 –proxy-user [用户名:密码] 参数:
whatweb --proxy [hostname:port] --proxy-user [username:password]WhatWeb 插件列表
如果你在想什么是WhatWeb使用的1.824个插件,你可以使用 –list-plugins 或 -l 开关查看。
whatweb --list-plugins图4. Whatweb 插件列表
要查看某些插件的详细信息,请运行以下命令:
whatweb --info-plugins [plugins_name]
图5. Whatweb 插件详细信息
WhatWeb 日志记录
WhatWeb 提供了不同的方法和文件格式来保存输出。它们包括:详细输出、错误日志、XML 格式、JSON 格式、SQL 插入语句、JSON 详细格式和 MongoDB 输出。
图6. Whatweb 日志记录
CMSeeK
GitHub: https://github.com/Tuhinshubhra/CMSeeK
图7. CMSeeK 官方横幅
CMSeeK 是一个用 Python 构建的内容管理系统 (CMS) 检测工具。它具有扫描 170 种不同 CMS(例如 WordPress、Joomla、Drupal 等)的模块。CMSeeK 更有趣的地方在于它可以检测 CMS 版本、用户枚举、插件枚举、主题枚举、用户检测、根据 CMS 版本查找可用的漏洞等等。
在Kali Linux中安装CMSeeK
CMSeeK在Kali Linux中不是默认预安装的。首先,您必须使用apt install命令在Kali Linux中安装它,或者您也可以使用最近提供的链接在GitHub上下载它。
图8. 安装CMSeeK
sudo apt install cmseekCMSeeK 提供了两种使用方法 - 一种是引导式使用,另一种是通过参数使用。一旦你成功安装了 CMSeeK,让我们来看看以下 CMSeek 命令的用法:
CMSeek 目标指定
扫描单个 URL:
cmseek -u [URL]
cmseek --url [URL]扫描存储在文件中的多个URL,该文件包含以逗号分隔的目标URL列表。
cmseek -l [FILEPATH]
cmseek --list [LIST]CMSeek 用户代理
您还可以在CMSeeK中修改用户代理。提供三种不同的选项:随机用户代理、Googlebot用户代理或自定义用户代理。
cmseek --random-agent
cmseek --googlebot
cmseek --user-agent USER_AGENTCMSeeK不提供日志记录选项。不过不用担心,我们可以通过重定向操作符(‘>>’)来实现这一点。
cmseek [OPTIONS] [TARGET] >> output.txtCMSeeK 运作中
让我们运行 CMSeeK 并查看结果。在这里,我们使用以下命令在 Kali Linux 终端中扫描 https://bssn.go.id 的 CMS:
cmseek -vr -u https://bssn.go.id >> ~/Desktop/bssn.txt图9. CMSeek扫描bssn.go.id
从之前的命令中,我们可以识别出使用的参数:
| 开启详细模式。 |
| 使用一个随机的用户代理。 |
| 将输出重定向到文件。 |
请注意,使用重定向操作符时,您将不会在终端上看到任何输出。相反,输出会被重定向到您指定的文件中。让我们使用 cat 命令检查该文件:
cat ~/Desktop/bssn.txt从之前的 CMSeeK 命令,我们得到以下信息如下:
CMS 名称和版本
图10. CMSeeK识别CMS名称和版本
CMS 插件
图11. CMSeeK识别WP插件
CMS 主题
图12. CMSeeK识别WP主题
用户
图13. CMSeeK列举WP用户
结论
CMSeek 是一个非常强大的信息收集工具,尤其用于 CMS。一旦你成功识别了 CMS,就可以使用其他工具进行漏洞扫描和评估。为了扫描特定的 CMS,Kali Linux 有几个 CMS 漏洞扫描工具,如:
- WPScan 适用于 WordPress。请在 GitHub 上下载:https://github.com/wpscanteam/wpscan(Kali Linux 中预装)
- Droopescan for Drupal。请在 GitHub 下载,链接:https://github.com/SamJoan/droopescan
- Drupwn for Drupal。请在 GitHub 下载,网址为 https://github.com/immunIT/drupwn
- Joomscan用于Joomla。请在GitHub上下载,链接:https://github.com/OWASP/joomscan












