Subhan-Haider/site-scan

GitHub: Subhan-Haider/site-scan

SiteScan 是一个开源的全能型网站情报与安全扫描平台,通过对指定 URL 并发执行二十余项检查来快速呈现目标站点的基础设施与安全态势。

Stars: 0 | Forks: 0

SiteScan Logo

SiteScan

A powerful all-in-one tool for discovering information about a website and host.

[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) [![Made with Astro](https://img.shields.io/badge/Made_with-Astro-ff5d01.svg?logo=astro)](https://astro.build) [![Node.js](https://img.shields.io/badge/Node.js-Backend-43853d.svg?logo=node.js)](https://nodejs.org/)

## 🚀 概述 SiteScan 是一个全面的开源 Web 应用,旨在帮助开发者、安全研究员和系统管理员快速收集、分析并展示关于任何指定 URL 的公开数据。 只需向 SiteScan 输入一个 URL,它就会立即运行超过 20 项并发检查,以分析目标的配置、安全态势和基础设施。 ## 🕵️‍♂️ 可用的检查项 SiteScan 执行大量非侵入式的 OSINT 和配置检查,包括: - **服务器信息**:IP 地址、托管提供商、ASN 和地理位置。 - **DNS 记录**:A、AAAA、MX、TXT、NS、CNAME、SOA 和 PTR 记录。 - **DNSSEC**:验证域名是否受到 DNS 安全扩展保护。 - **SSL/TLS 证书**:颁发者详情、过期日期和密码套件。 - **HTTP 安全标头**:分析 HSTS、CSP、X-Frame-Options 等。 - **邮件安全**:验证 SPF、DKIM 和 DMARC 记录以防止欺骗。 - **开放端口**:快速扫描常见的 Web 和基础设施端口(80、443、21、22 等)。 - **防火墙/WAF 检测**:检测站点是否位于 Cloudflare、AWS WAF、Sucuri 等之后。 - **威胁情报**:将域名和 IP 与公开的阻止列表和威胁情报源进行交叉比对。 - **Robots.txt 和 Sitemap**:提取抓取规则和 Sitemap 位置。 - **Security.txt**:检查是否存在负责任的披露政策。 - **Cookies**:分析 cookie 标志(Secure、HttpOnly、SameSite)以发现漏洞。 - **重定向**:跟踪并梳理完整的 HTTP 重定向链。 ## ✨ 功能特性 - **极速**:由 Astro 前端和 Node.js API 后端驱动。 - **高级浅色主题**:美观、响应式且动态的用户界面。 - **非技术性摘要**:自动将高度专业的输出结果简化和总结为易于操作的见解。 - **微交互动画**:开箱即用的动态且引人入胜的设计。 - **无需数据库**:完全无状态且易于部署。 ## 🛠️ 技术栈 - **前端**:[Astro](https://astro.build/)、[React](https://react.dev/)、[Svelte](https://svelte.dev/) - **样式**:SCSS、Emotion、自定义 CSS 变量 - **后端**:[Node.js](https://nodejs.org/)、Express - **构建**:Vite、ESBuild ## 🏗️ 架构 ``` graph TD Client[👨‍💻 User] -->|Enters URL| Frontend[🖥️ Astro / React Frontend] Frontend -->|Initiates Scan| Backend{⚙️ Node.js Express API} Backend -->|DNS Queries| DNS[(🌐 DNS Servers)] Backend -->|TCP/TLS Probes| WebServer[(🌍 Target Web Server)] Backend -->|Whois/Geo IP| OSINT[(🔍 OSINT Data Sources)] Backend -->|Threat Analysis| APIs[🛡️ 3rd-Party APIs
Shodan, VirusTotal, etc.] DNS -.->|Records & DNSSEC| Backend WebServer -.->|Headers & SSL Certs| Backend OSINT -.->|Server Info| Backend APIs -.->|Threat Intelligence| Backend Backend -.->|Consolidated JSON Report| Frontend ``` ## 🚀 快速开始 ### 前置条件 请确保您已安装 Node.js (v18+) 和 npm/yarn。 ### 安装说明 1. **克隆代码仓库** git clone https://github.com/Subhan-Haider/site-scan.git cd site-scan 2. **安装依赖项** npm install 3. **运行开发服务器** npm run dev 这将同时启动后端 API (端口 3001) 和 Astro 前端 (端口 4321)。 4. **访问应用** 在浏览器中打开 `http://localhost:4321`。 ## ⚙️ 配置 SiteScan 完全可以开箱即用。不过,您可以配置用于第三方服务的自定义 API 密钥以增强检查功能。 将 `.env.sample` 重命名为 `.env` 并添加您的密钥! ## 🐳 部署 您可以通过 Docker 轻松部署 SiteScan! ``` docker build -t sitescan . docker run -p 4321:4321 -p 3001:3001 sitescan ``` *注意:请确保将您的 `.env` 变量传入 Docker 容器中,以使 API 密钥生效。* ## 🤝 贡献 贡献使得开源社区成为一个令人惊叹的学习、启发和创造之地。我们**非常感谢**您所作的任何贡献。 1. Fork 该项目 2. 创建您的功能分支 (`git checkout -b feature/AmazingFeature`) 3. 提交您的更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到该分支 (`git push origin feature/AmazingFeature`) 5. 发起一个 Pull Request ## 📜 许可证 本项目是开源的,基于 [GNU General Public License v3.0 (GPLv3)](https://github.com/Subhan-Haider/site-scan/blob/main/LICENSE) 授权。
标签:Astro, ESC4, GitHub, GNU通用公共许可证, GraphQL安全矩阵, MITM代理, Node.js, OSINT, Web安全, 安全扫描器, 安全研发, 实时处理, 网络情报, 自动化攻击, 蓝队分析, 请求拦截