网站搜索

使用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.txt

WhatWeb 攻击级别

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 cmseek

CMSeeK 提供了两种使用方法 - 一种是引导式使用,另一种是通过参数使用。一旦你成功安装了 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_AGENT

CMSeeK不提供日志记录选项。不过不用担心,我们可以通过重定向操作符(‘>>’)来实现这一点。

cmseek [OPTIONS] [TARGET] >> output.txt

CMSeeK 运作中

让我们运行 CMSeeK 并查看结果。在这里,我们使用以下命令在 Kali Linux 终端中扫描 https://bssn.go.id 的 CMS:

cmseek -vr -u https://bssn.go.id >> ~/Desktop/bssn.txt

图9. CMSeek扫描bssn.go.id

从之前的命令中,我们可以识别出使用的参数:

-v
开启详细模式。
-r
使用一个随机的用户代理。
>> [OUTPUT]
将输出重定向到文件。

请注意,使用重定向操作符时,您将不会在终端上看到任何输出。相反,输出会被重定向到您指定的文件中。让我们使用 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