1
0
Fork 0
1Panel-Appstore/apps/web-check/README.md

28 KiB
Raw Blame History

Web-Check

任何网站的全面、按需开源情报 🌐 web-check.xyz


关于

了解给定网站的内部运作:发现潜在的攻击向量,分析服务器架构,查看安全配置,并了解该网站使用了哪些技术。

目前仪表板将显示IP 信息、SSL 证书链、DNS 记录、Cookies、头部信息、域名信息、搜索爬取规则、页面映射、服务器位置、重定向记录、开放端口、 traceroute、DNS 安全扩展、站点性能、跟踪器、关联主机名、碳足迹。敬请期待,我会很快添加更多功能!

目标是帮助您轻松了解、优化和保护您的网站。

截图

Screenshot

Live Demo

托管版本可访问:web-check.as93.net

镜像

此仓库的源代码镜像到了 CodeBerg地址为codeberg.org/alicia/web-check

动机

当你查看一个网站时通常会先检查一些基本内容。比如Whois 查询、SSL 证书链、DNS 记录、技术栈、安全协议、爬虫规则、站点地图、重定向、基本性能、开放端口、服务器信息等。这些信息大多可以通过一系列基本的 curl 命令或组合使用在线工具来获取。但把这些信息清晰地集中展示在一个地方会方便得多 :)

功能

展开查看所有功能

请注意,此列表需要更新,自那以后已经添加了许多新的任务...

IP 地址

描述

IP 地址任务涉及通过域名系统DNS解析将用户提供的 URL 映射为其对应的 IP 地址。IP 地址是互联网上每个设备的唯一标识符,与域名配对后,可以准确地路由在线请求和响应。

使用案例

识别域名的 IP 地址在开源情报OSINT方面具有巨大价值。这些信息可以帮助构建目标网络架构的详细地图确定服务器的物理位置识别托管服务甚至发现同一 IP 地址上托管的其他域名。在网络安全领域,它还有助于追踪攻击或恶意活动的来源。

相关链接

SSL

描述

SSL 任务涉及检查网站是否具有有效的安全套接字层SSL证书。SSL 是一种在网络计算机之间建立身份验证和加密连接的协议。它通常用于保护互联网上的通信,如网页浏览会话、电子邮件传输等。在这个任务中,我们会联系服务器并发起 SSL 握手。如果成功,我们将收集服务器提供的 SSL 证书的相关信息。

用例

SSL 证书不仅提供了数据传输到和从网站的安全保障还提供了有价值的开源情报OSINT数据。从 SSL 证书中可以获取的信息包括颁发机构、域名、有效期限,有时甚至包括组织详情。这些信息可以用于验证网站的真实性、了解其安全设置,甚至发现关联的子域名或其他服务。

相关链接

DNS 记录

描述

DNS 记录任务涉及查询域名系统DNS以获取与目标域名相关的记录。DNS 是一个将人类可读的域名转换为计算机用于通信的 IP 地址的系统。存在多种类型的 DNS 记录,包括 A地址、MX邮件交换、NS名称服务器、CNAME标准名称和 TXT文本等。

用例

提取 DNS 记录可以在开源情报OSINT调查中提供大量信息。例如A 和 AAAA 记录可以揭示与域名相关的 IP 地址可能揭示服务器的位置。MX 记录可以提供关于域名邮件服务提供商的线索。TXT 记录通常用于各种管理目的,有时可能会无意中泄露内部信息。了解域名的 DNS 设置也有助于理解其在线基础设施的构建和管理方式。

有用链接

Cookies

描述

Cookies 任务涉及检查目标网站设置的 HTTP Cookies。Cookies 是网页浏览器在用户浏览网站时存储在用户计算机上的少量数据。它们包含特定于特定客户端和网站的少量数据,例如站点偏好、用户的会话状态或跟踪信息。

用例

Cookies 在 OSINT 调查中提供了丰富的信息。它们可以揭示网站如何跟踪和与用户互动。例如,会话 Cookie 可以显示用户会话是如何管理的,而跟踪 Cookie 则可能暗示正在使用的跟踪或分析框架的类型。此外,检查 Cookie 的政策和实践可以提供有关网站安全设置和隐私法规合规性的见解。

相关链接

爬取规则

描述

爬取规则任务专注于从目标网站获取并解析 'robots.txt' 文件。这个文本文件是机器人排除协议REP的一部分是一组用于规范机器人如何爬取网络、访问和索引内容以及向用户提供这些内容的网络标准。该文件指出了网站所有者不希望被网络爬虫机器人访问的网站部分。

用例

'robots.txt' 文件可以为开源情报OSINT调查提供有价值的信息。它通常会披露站点所有者不希望被索引的目录和页面可能是因为这些页面包含敏感信息。此外它还可能揭示其他隐藏或未链接的目录的存在。另外了解爬虫规则可能有助于了解网站的搜索引擎优化SEO策略。

相关链接

头部信息

描述

Headers 任务涉及提取和解释目标网站在请求-响应周期中发送的 HTTP 头部信息。HTTP 头部是在 HTTP 响应开始时或在实际数据之前发送的关键值对。头部信息包含处理正在传输的数据的重要指令,包括缓存策略、内容类型、编码、服务器信息、安全策略等。

用例

在开源情报OSINT调查中分析 HTTP 头部可以提供重要的见解。头部信息可以揭示特定的服务器配置、选择的技术、缓存指令以及各种安全设置。这些信息有助于确定网站的技术栈、服务器端的安全措施、潜在的漏洞以及一般的运营实践。

相关链接

质量报告

描述

Headers 任务涉及提取并解释目标网站在请求-响应周期中发送的 HTTP 头部信息。HTTP 头部是在 HTTP 响应开始时或在实际数据之前发送的关键值对。头部信息包含处理正在传输的数据的重要指令,包括缓存策略、内容类型、编码、服务器信息、安全策略等。

应用场景

在 OSINT 调查中,分析 HTTP 头部可以提供重要的见解。头部信息可以揭示特定的服务器配置、选择的技术、缓存指令以及各种安全设置。这些信息有助于确定网站的基础技术栈、服务器端的安全措施、潜在的漏洞以及一般的运营实践。

有用链接

服务器位置

描述

服务器位置任务是根据服务器的 IP 地址确定托管网站的物理位置。地理位置数据通常包括服务器所在国家、地区,有时还包括城市。该任务还提供有关服务器位置国家的官方语言、货币和国旗等额外上下文信息。

应用场景

在开源情报OSINT领域服务器位置信息非常有价值。它可以提供服务器上数据可能受法律管辖的线索这对于法律或调查情境中非常重要。服务器位置还可以暗示网站的目标受众并揭示不一致之处这些不一致可能表明使用了托管或代理服务来掩饰实际位置。

相关链接

关联域名和主机名

描述

此任务涉及识别并列出与网站主域名相关的所有域名和子域名(主机名)。这个过程通常涉及 DNS 枚举,以发现任何关联的域名和主机名。

使用案例

在开源情报OSINT调查中了解目标在网络上的完整存在范围至关重要。关联域名可能会揭示相关项目、备份站点、开发/测试站点或与主站点相关的服务。这些有时可以提供额外信息或潜在的安全漏洞。一个全面的关联域名和主机名列表也可以概述组织的结构和在线足迹。

相关链接

重定向链

描述

此任务追踪从原始 URL 到最终目标 URL 之间发生的 HTTP 重定向序列。HTTP 重定向是一种响应,其状态码建议客户端访问另一个 URL。重定向可能出于多种原因发生例如 URL 规范化(将用户导向站点的 www 版本)、强制使用 HTTPS、URL 缩短,或转发用户到新的站点位置。

应用场景

了解重定向链对于多个方面都至关重要。从安全角度来看,长且复杂的重定向链可能是潜在安全风险的迹象,例如链中的未加密重定向。此外,重定向会影响网站性能和 SEO因为每次重定向都会增加额外的往返时间RTT。对于开源情报OSINT了解重定向链有助于识别不同域名之间的关系或揭示使用某些技术和托管提供商的情况。

相关链接

TXT 记录

描述

TXT 记录是域名服务DNS记录的一种提供文本信息给您域名之外的来源。它们可以用于多种目的例如验证域名所有权、确保电子邮件安全甚至防止未经授权对网站进行更改。

应用场景

在开源情报OSINT的背景下TXT 记录可以是一个有价值的信息来源。它们可能揭示有关域名电子邮件配置的细节,使用特定服务(如 Google Workspace 或 Microsoft 365的情况或已实施的安全措施如 SPF 和 DKIM。了解这些细节可以提供有关组织所使用的技术、电子邮件安全实践以及潜在漏洞的见解。

有用链接

服务器状态 开放端口

描述

服务器上的开放端口是用于与客户端建立连接的通信端点。每个端口对应于特定的服务或协议,例如 HTTP端口 80、HTTPS端口 443、FTP端口 21等。可以使用端口扫描等技术来确定服务器上的开放端口。

用例

在开源情报OSINT的背景下了解服务器上哪些端口是开放的可以提供有关该服务器上运行的服务的重要信息。这些信息可用于理解该系统的潜在漏洞或了解服务器提供的服务的性质。例如一个开放了端口 22SSH的服务器可能用于远程管理而开放了端口 443 的服务器则在提供 HTTPS 流量。

相关链接

跟踪路由

描述

traceroute 是一种网络诊断工具,用于实时追踪信息包从一个系统到另一个系统的路径。它记录沿途的每个跳点,提供关于路由器的 IP 地址以及每个点的延迟详情。

用例

在开源情报OSINT调查中traceroute 可以提供有关支持网站或服务的网络基础设施的路由路径和地理信息的见解。这有助于识别网络瓶颈、潜在的网络流量审查或操控并总体了解网络的结构和效率。此外traceroute 收集的 IP 地址还可以为进一步的 OSINT 调查提供额外的查询点。

相关链接

碳足迹

描述

此任务计算网站的估计碳足迹。这基于传输和处理的数据量以及托管和交付网站的服务器的能耗。网站规模越大,功能越复杂,其碳足迹很可能越高。

应用场景

从开源情报OSINT的角度来看了解网站的碳足迹并不能直接提供对其内部运作或背后组织的见解。然而在考虑环境影响的更广泛分析中它仍然可以提供有价值的数据。例如对于关注数字基础设施可持续性的活动家、研究人员或道德黑客来说了解并关注组织的环境影响是有用的。

有用链接

服务器信息

描述

此任务会检索托管目标网站的服务器的各种信息。这可能包括服务器类型例如Apache、Nginx、托管提供商、自治系统编号ASN等。通常通过 IP 地址查询和分析 HTTP 响应头来获取这些信息。

应用场景

在开源情报OSINT的背景下服务器信息可以提供有关网站背后的组织的重要线索。例如托管提供商的选择可能表明该组织运营的地理区域而服务器类型则可能暗示该组织使用的技术。自治系统ASN也可以用来找到由同一组织托管的其他域名。

相关链接

域名信息

描述

此任务会为目标域名检索 Whois 记录。Whois 记录是一个丰富的信息来源,包括域名注册人的姓名和联系方式、域名的创建和到期日期、域名的名称服务器等。这些信息通常通过向 Whois 数据库服务器发送查询来获取。

使用案例

在开源情报OSINT的情境下Whois 记录可以提供关于网站背后实体的重要线索。它们可以显示该域名首次注册的时间以及到期时间,这可能有助于了解该实体的运营时间线。尽管联系信息通常被删除或匿名化,但有时仍可引导进一步的调查。域名服务器也可以用来将同一实体拥有的多个域名联系起来。

相关链接

DNS 安全扩展

描述

没有 DNSSEC中间人MITM攻击者有可能伪造记录并引导用户访问钓鱼网站。这是因为 DNS 系统中没有内置的方法来验证响应是否被篡改或者整个过程是否被攻击者中断。DNS 安全扩展DNSSEC通过使用公钥对 DNS 记录进行签名,使浏览器能够检测到响应是否被篡改。另一个解决这个问题的方法是 DoHHTTPS over DNS和 DoTTLS over DNS

应用场景

DNSSEC 信息可以提供组织网络安全成熟度和潜在漏洞的洞察,特别是关于 DNS 伪造和缓存中毒。如果没有实施 DNS 安全DNSSEC、DoH、DoT 等),这可能会为攻击者提供一个入口点。

相关链接

访问此处了解更多:web-check.as93.net/about

请注意,并非所有检查都适用于所有站点。有时无法确定某些信息,而演示实例受到 Netlify 对 lambda 函数的一些限制。


使用方法

开发中

  1. 克隆仓库, git clone git@github.com:Lissy93/web-check.git
  2. 进入该目录:cd web-check
  3. 安装依赖:yarn
  4. 启动开发服务器,使用:yarn dev

你需要安装 Node.js(版本 18.16.1 或更高版本)以及 git。一些检查还需要在你的环境中安装 chromiumtraceroutedns。如果这些包不存在,这些任务将会被跳过。

部署 - 方案 #1: Netlify

请点击下方按钮,将项目部署到 Netlify 👇

Deploy to Netlify

部署 - 方案 #2: Docker

运行 docker run -p 8888:3000 lissy93/web-check ,然后打开 http://localhost:3000

您可以从以下地址获取 Docker 镜像:

部署 - 方案 #3: 从源代码部署

请遵循上方“开发”部分中的说明,然后运行 `yarn build` && `yarn start` 来构建并启动应用程序。

配置

默认情况下无需进行任何配置。但您可以设置一些可选的环境变量,以访问一些额外的检查功能

  • GOOGLE_CLOUD_API_KEY - 一个 Google API 密钥( 获取方式请参见此处 )。可以用于返回站点的质量指标
  • TORRENT_IP_API_KEY - 一个 torrent API 密钥( 获取方式请参见此处 )。可以显示由某个 IP 下载的种子文件
  • REACT_APP_SHODAN_API_KEY - 一个 Shodan API 密钥( 获取方式请参见此处 )。可以显示给定域名相关的主机名
  • REACT_APP_WHO_API_KEY - 一个 WhoAPI 密钥( 获取方式请参见此处 )。可以显示比默认任务更全面的 WhoIs 记录
  • SECURITY_TRAILS_API_KEY - 一个 Security Trails API 密钥( 在这里获取 )。这将显示与 IP 相关联的组织信息
  • BUILT_WITH_API_KEY - 一个 BuiltWith API 密钥( 在这里获取 )。这将显示站点的主要功能

上述密钥可以添加到项目根目录下的 .env 文件中,或者通过 Netlify UI或者直接传递给 Docker 容器。


社区

贡献

任何形式的贡献都十分欢迎,并将不胜感激。有关行为准则,请参见 贡献者守则

要开始,请克隆仓库,进行更改,添加、提交并推送代码,然后返回这里提交合并请求。如果你是 GitHub 或开源的新手,可以参考 这份指南git 文档 来入门,但如果你需要任何支持,请随时联系我们。

Submit a PR

报告错误

如果发现有些功能无法正常工作,或者想要建议新功能,可以在 GitHub 上提交问题单。对于 bug请描述重现该问题所需的步骤并附上相关信息如系统信息和日志结果。

Raise an Issue

支持

Sponsor Lissy93 on GitHub


许可证

Lissy93/Web-Check 采用 MIT 许可证 © Alicia Sykes 2023。 如需更多信息,请参见 TLDR Legal > MIT

展开许可证

The MIT License (MIT)
Copyright (c) Alicia Sykes <alicia@omg.com> 

Permission is hereby granted, free of charge, to any person obtaining a copy 
of this software and associated documentation files (the "Software"), to deal 
in the Software without restriction, including without limitation the rights 
to use, copy, modify, merge, publish, distribute, sub-license, and/or sell 
copies of the Software, and to permit persons to whom the Software is furnished 
to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included install 
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANT ABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

© Alicia Sykes 2023 授权协议MIT 感谢访问 :))