针对任何 IP、域名或 ASN 的 OSINT 情报
如果这个项目对你的工作有帮助,请支持持续的维护和新功能。
ETH 捐赠钱包
0x11282eE5726B3370c8B480e321b3B2aA13686582
扫描二维码或复制上面的钱包地址。
统一的主机情报,涵盖 15 个来源 — 查询任何 IP、域名或 ASN,获取即时安全态势、基础设施详情和威胁关联信息。完全在 Cloudflare 免费套餐上运行。
在线访问: swiy.co/seekyou``` $ curl "https://seekyou.seekyou.workers.dev/api/lookup?q=1.1.1.1"
{ "query": { "raw": "1.1.1.1", "type": "ip", "normalised": "1.1.1.1" }, "core": { "internetdb": { "status": "ok", "data": { "ports": [80,443], "vulns": [] } }, "geo": { "status": "cached", "data": { "country": "US", "org": "AS13335 Cloudflare" } }, "bgp": { "status": "ok", "data": { "name": "CLOUDFLARENET", "rir": "ARIN" } }, ... }, "meta": { "durationMs": 312, "cacheHits": 4, "sourcesQueried": 15, "sourcesFailed": 0 } }
## 截图
<div align="center">
### 首页
<img src="https://assets.kitploit.com/production/public/readmes/7467/e00ec4ba8b3e5460ae1e03360cf6540e58d92acc5522c8693445512b591fed29.png" alt="SeekYou 结果页" width="800" />
### 结果页
<img src="https://assets.kitploit.com/production/public/readmes/7467/09b165feca9927ad4cd50c3ebd28c72e09a0355d72b9ca14d795bf1d04448c92.png" alt="SeekYou 首页" width="800" />
### 演示
<a href="https://www.youtube.com/watch?v=b86tAUUqd34">
<img src="https://assets.kitploit.com/production/public/readmes/7467/8762e8b464816b9a69d929514441f8c7ee9f9ee9719f95b9c5e33ac1672575f8.jpg" alt="SeekYou 演示" width="800" />
</a>
</div>
---
## 目录
- [SeekYou](#seekyou)
- [截图](#screenshots)
- [首页](#landing-page)
- [结果页](#results-page)
- [演示](#demo)
- [目录](#table-of-contents)
- [SeekYou 的功能](#what-seekyou-does)
- [使用场景](#use-cases)
- [合法使用政策](#lawful-use-policy)
- [相关工具](#related-tools)
- [架构概览](#architecture-overview)
- [执行模型](#execution-model)
- [数据源](#data-sources)
- [项目结构](#project-structure)
- [关键设计决策](#key-design-decisions)
- [优先边缘计算,无需 Node.js](#edge-first-no-nodejs)
- [分层并行执行](#layered-parallel-execution)
- [优雅降级](#graceful-degradation)
- [分离 D1 与 KV 存储](#split-d1--kv-storage)
- [免费层优化](#free-tier-optimization)
- [即发即弃的 D1 写入](#fire-and-forget-d1-writes)
- [缓存策略](#caching-strategy)
- [速率限制](#rate-limiting)
- [断路器](#circuit-breakers)
- [密钥轮换 — GrayHatWarfare](#key-rotation--grayhatwarfare)
- [D1 持久化](#d1-persistence)
- [模式 (`schema.sql`)](#schema-schemasql)
- [应用模式](#apply-schema)
- [辅助函数](#helper-functions)
- [Cron 工作器](#cron-worker)
- [类型化差异 (`lib/diff.ts`)](#typed-diff-libdiffts)
- [Webhook 负载](#webhook-payload)
- [开发环境配置](#development-setup)
- [前提条件](#prerequisites)
- [本地开发](#local-development)
- [创建 Cloudflare 资源(首次)](#create-cloudflare-resources-first-time)
- [部署](#deployment)
- [构建并部署](#build-and-deploy)
- [Wrangler 配置 (`wrangler.toml`)](#wrangler-configuration-wranglertoml)
- [密钥与环境变量](#secrets-and-environment-variables)
- [必需密钥](#required-secrets)
- [`.env.example`(仅本地开发)](#envexample-local-dev-only)
- [许可证](#license)
- [作者](#author)
- [致谢](#acknowledgments)
---
## SeekYou 的功能
SeekYou 是一个**主机情报工具**——输入 IP 地址、域名或 ASN,即可获得涵盖以下内容的统一报告:
| 类别 | 涵盖内容 |
|---|---|
| 网络 | 开放端口、CPE、BGP 前缀、上游、对等体、RIR |
| 身份 | RDAP 注册、联系人、注册商、域名服务器 |
| 地理位置 | 国家、城市、ISP、代理/托管/移动标识 |
| 证书 | crt.sh 历史、SAN、颁发者链 |
| DNS | 被动 DNS 记录、Robtex 反向/正向 DNS |
| 威胁 | URLhaus、ThreatFox、MalwareBazaar、Feodo、SSLBL |
| CVE | 针对 InternetDB 报告的每个 CVE ID 进行 NVD + CIRCL 丰富 |
| 侦察 | GrayHatWarfare 暴露的存储桶、Wayback CDX 快照 |
每个来源并行查询。故障来源会降级为“不可用”徽章——绝不会破坏页面。
---
## 使用场景
**安全运维** — 从日志中快速分析可疑 IP,关联 IOC,识别暴露的服务和 CVE,追踪恶意域名。
**网络运维** — 检查 BGP 路由、RDAP/WHOIS 分配数据、历史 DNS 记录、SSL 证书变更。
**渗透测试** — 枚举端口/服务/CPE,发现暴露的存储桶、归档页面、子域名和 ASN 关系。
**威胁情报** — 一次查询即可检查 C2 基础设施与五个威胁情报源。
**合规与风险** — 分析供应商基础设施,检测暴露的云存储,识别影子 IT。
---
## 合法使用政策
SeekYou 旨在用于**合法的安全研究、网络运维和威胁情报**。使用本工具即表示您同意:
**允许的用途:**
- 对您拥有或授权监控的网络进行安全运维和事件响应
- 威胁情报研究与 IOC 关联
- 组织内部的网络故障排除与基础设施审计
- 经目标组织明确书面授权的渗透测试
- 网络安全学术研究与教育
- 经适当授权的合规审计与供应商风险评估
**禁止的用途:**
- 未经授权访问、侦察或攻击您不拥有或明确允许测试的系统
- 骚扰、跟踪或侵犯个人或组织的隐私
- 促进非法活动,包括欺诈、身份盗窃或网络犯罪
- 未经授权绕过安全控制或访问限制
- 违反适用法律,包括美国 CFAA、英国计算机滥用法、欧盟 GDPR 或您所在司法管辖区的同等法律
**您的责任:**
- 确保在查询不属于自己的基础设施前获得适当授权
- 尊重速率限制,不滥用服务或上游数据源
- 遵守您所在司法管辖区的所有适用法律
- 负责任地使用数据,未经协调披露不得将发现武器化
- 理解查询主机并不授予访问或利用它的权限
**免责声明:**
作者和贡献者不对本工具的滥用承担任何责任。用户自行负责确保其活动符合适用法律。从公开来源聚合的数据可能不完整、过时或不准确——在采取行动前请务必通过权威渠道验证。
如果您通过 SeekYou 发现漏洞,请遵循负责任的披露实践,在公开披露前通知受影响方。
---
## 相关工具
SeekYou 是注重隐私的安全工具包的一部分。探索完整套件:
| 工具 | 描述 | 在线链接 |
|---|---|---|
| **TimeSeal** | 加密时间戳服务——在不泄露内容的情况下证明文档在特定时间存在 | [timeseal.online](https://timeseal.online) |
| **SanctumVault** | 零知识加密保管库——针对敏感数据存储的客户端加密 | [sanctumvault.online](https://sanctumvault.online) |
| **GhostChat** | 短暂加密消息——自毁对话,无服务器日志 | [ghost-chat.pages.dev](https://ghost-chat.pages.dev) |
| **XMRProof** | 门罗币支付验证——生成 XMR 交易的加密证明 | [xmrproof.pages.dev](https://xmrproof.pages.dev) |
| **GhostReceipt** | 匿名收据生成——在不暴露身份的情况下创建可验证的交易记录 | [ghostreceipt.pages.dev](https://ghostreceipt.pages.dev) |
| **SeekYou** | 主机情报聚合器——对 IP、域名和 ASN 的 15 个来源进行统一 OSINT | [seekyou.seekyou.workers.dev](https://seekyou.seekyou.workers.dev) |
| **HoneypotScan** | 蜜罐检测服务——识别诱饵系统,避免安全研究中的误报 | [honeypotscan.pages.dev](https://honeypotscan.pages.dev) |
所有工具均运行在 Cloudflare 边缘网络上,遵循隐私优先的设计原则。
---
## 架构概览```
Browser / curl
│
▼
┌─────────────────────────────────────┐
│ Cloudflare Pages │
│ Next.js App Router (SSR) │
│ │
│ app/page.tsx search form │
│ app/host/[query]/page.tsx │
│ └─ streams /api/stream?q=… │
│ app/api/recent/route.ts │
│ └─ recent searches for homepage │
│ app/targets/page.tsx │
│ └─ monitoring dashboard │
│ app/api/targets/route.ts │
│ └─ saved targets CRUD │
│ returns riskScore + lastDiff │
└──────────────┬──────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ app/api/lookup/route.ts │
│ (Workers runtime via opennextjs) │
│ • input validation │
│ • per-IP rate limiting (KV) │
│ • ctx.waitUntil(recordSearch()) │
└──────────────┬──────────────────────┘
│ runLookup()
▼
┌─────────────────────────────────────┐
│ worker/lookup.ts — orchestrator │
│ 4-layer Promise.allSettled │
└──┬──────────────────────────────────┘
│
├─► Layer 1+2 (parallel, 12 sources):
│ InternetDB · IPinfo · RIPE stat · RDAP · crt.sh · HackerTarget · Robtex
│ URLhaus · ThreatFox · MalwareBazaar · Feodo · SSLBL
├─► Layer 3 (after L1): NVD CVE enrichment (only if vulns found, batched 10-at-a-time)
└─► Layer 4 (parallel): GrayHatWarfare · Wayback (domain queries only)
│
▼
┌──────────────────────┐ ┌──────────────────────┐
│ D1 │ │ KV │
│ source response cache│ │ rate limiting │
│ (TTL per source) │ │ circuit breakers │
│ searches │ │ concurrency counters │
│ saved_targets │ │ │
└──────────────────────┘ └──────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ seekyou-cron (Worker) │
│ wrangler.cron.toml │
│ • hourly blocklist refresh │
│ • hourly saved-target re-query │
│ + typed diff (lib/diff.ts) │
│ + webhook on hasChanges │
└─────────────────────────────────────┘
第1层和第2层同时触发(一个Promise.allSettled中包含12个数据源)。第3层在第1层完成后启动——来自InternetDB的CVE ID驱动NVD丰富化处理,每次批量处理10个以避免对API造成冲击。第4层与第3层并行触发,但仅用于域名查询;IP/ASN完全跳过。总墙上时钟时间 ≈ max(第1+2层) + max(第3+4层)。