IAZARA/OSINTArgy_v01
GitHub: IAZARA/OSINTArgy_v01
OSINTArgy 是一个专注于阿根廷和拉丁美洲的开源 OSINT 调查平台,将工具目录、Dork 生成、用户名和邮箱调查、文件分析及基础设施侦察整合于统一的可视化 Web 界面中。
Stars: 9 | Forks: 1
报告 issue
·
贡献
标签:
osint
argentina
latam
open-source-intelligence
react
nodejs
# OSINTArgy
OSINTArgy 是一个用于道德 OSINT 调查的开源平台,专注于阿根廷和拉丁美洲。它将各种工具、dorks、分类资源和自动化模块整合到一个专为分析师、记者、研究人员、安全团队以及需要有条理地处理公开信息的人员设计的可视化界面中。
项目的简要描述是:**用于阿根廷和拉丁美洲道德调查的开源 OSINT 平台。**
## 特性
- 精心策划的 OSINT 工具目录,包含分类、标签、难度、地区和使用指标。
- 类似星系的视觉界面,提供替代视图和按类别导航。
- 针对 Google、Yandex、Bing 和 DuckDuckGo 的 dork 生成器。
- 在多个平台中搜索 username。
- 用于 email 的 OSINT、文件分析和基础设施探测的模块。
- 基于 Express、MongoDB、JWT 身份验证、rate limiting、CORS 和结构化日志记录的 REST API。
- 前端采用 React + Vite,包含 SPA 路由、API 服务和模块化组件。
## 负责任的使用
OSINTArgy 旨在用于公开来源的调查、防御性审计、学习和文档记录。请在获得授权、遵守适用法律、服务条款及第三方隐私的前提下使用。本项目不提倡入侵、滥用、骚扰、人肉搜索或未经授权的访问。
## 技术栈
| 层级 | 技术 |
| --- | --- |
| 前端 | React 18, Vite, React Router, D3, Framer Motion, Lucide React |
| 后端 | Node.js, Express, Mongoose, JWT, Helmet, Winston |
| 数据库 | MongoDB |
| DevOps | Docker Compose, Nginx, npm scripts |
## 系统要求
- Node.js 20 或更高版本。
- npm 10 或更高版本。
- 用于本地开发的 MongoDB 5 或更高版本。
- 如果您倾向于使用容器化环境,则需要 Docker 和 Docker Compose。
## 本地安装
```
git clone https://github.com/IAZARA/OSINTArgy_v01.git
cd OSINTArgy_v01
npm run install:all
```
从示例配置环境变量:
```
cp backend/.env.example backend/.env
cp frontend/.env.example frontend/.env
```
使用本地脚本启动前端和后端:
```
npm start
```
默认 URL:
| 服务 | URL |
| --- | --- |
| 前端 | http://localhost:5173 |
| 后端 API | http://localhost:3001/api |
| 健康检查 (Health check) | http://localhost:3001/api/health |
您也可以分别运行每个服务:
```
cd backend
npm run dev
```
```
cd frontend
npm run dev
```
## Docker
开发环境:
```
docker compose up --build
```
生产环境:
```
cp .env.production.example .env.production
docker compose --env-file .env.production -f docker-compose.prod.yml up -d --build
```
在生产环境中,启动服务前请将 `MONGO_PASSWORD` 和 `JWT_SECRET` 替换为强密码。
同时,请将 `FRONTEND_URL` 配置为 CORS 授权的实际来源。
## 脚本
| 命令 | 描述 |
| --- | --- |
| `npm start` | 启动前端和后端,并进行本地端口管理。 |
| `npm run dev` | 并行启动前端和后端。 |
| `npm run build` | 生成前端构建版本。 |
| `npm run install:all` | 安装根目录、前端和后端的依赖。 |
| `npm run sync:data` | 从按分类的 JSON 重新生成 `frontend/src/data/tools.json`。 |
| `npm run validate:data` | 验证目录的结构、ID、类别和 fallback。 |
| `npm run check:links` | 检查目录中的外部 URL,并可生成 JSON/Markdown 报告。 |
| `npm run test` | 运行脚本、前端和后端的冒烟测试 (smoke tests)。 |
| `cd frontend && npm run lint` | 在前端上运行 ESLint。 |
| `npm run clean` | 停止与项目关联的 Vite、Nodemon 和 Node 本地进程。 |
## 结构
```
OSINTArgy/
├── backend/ # API Express, modelos, rutas, controladores y scripts de datos
├── frontend/ # Aplicación React + Vite
├── .github/ # CI, CodeQL, Dependabot y plantillas
├── docs/ # Documentación técnica y catálogo
├── docs/assets/ # Branding y recursos visuales del repositorio
├── scripts/ # Scripts auxiliares versionados
├── docker-compose.yml # Entorno Docker de desarrollo
├── docker-compose.prod.yml # Entorno Docker de producción
└── README.md
```
不对构建版本、日志、本地数据库、`.env`、MCP 文件夹或个人配置进行版本控制。这些产物已被 `.gitignore` 忽略,以保持历史记录的整洁和可重现性。
## 主要模块
| 模块 | 描述 |
| --- | --- |
| Galaxy View | 可视化探索 OSINT 类别和工具。 |
| Dork Generator | 模板和高级搜索生成。 |
| Email OSINT | 邮件的验证和初始丰富化。 |
| Username OSINT | 在公开平台中搜索用户的存在情况。 |
| File Analysis | 提取元数据和分析文件。 |
| Infrastructure Scanner | 对域名、IP 和服务进行防御性侦察。 |
| OSINT Academy | 教育材料、课程、音频和模拟器。 |
## API
主要端点 (endpoints):
```
GET /api/health
GET /api/tools
GET /api/tools/:id
GET /api/tools/search
POST /api/tools/:id/use
POST /api/auth/register
POST /api/auth/login
GET /api/users/favorites
POST /api/users/favorites/:toolId
DELETE /api/users/favorites/:toolId
GET /api/search/tools
GET /api/search/suggestions
POST /api/dorks/generate
```
## 数据和工具
工具以 JSON 格式维护在 `frontend/src/data/tools/` 中,后端数据维护在 `backend/src/data/` 中。要添加工具,请使用一致的结构:
```
{
"id": "herramienta-unica",
"name": "Nombre de la herramienta",
"description": "Descripción breve",
"url": "https://ejemplo.com",
"category": "categoria-id",
"tags": ["osint", "argentina"],
"type": "web",
"region": "argentina",
"language": "es",
"difficulty_level": "beginner",
"is_free": true,
"requires_registration": false
}
```
## 仓库质量
- 将机密信息和本地配置排除在 Git 之外。
- 不要提交 `frontend/dist/`、`logs/`、`data/*.db`、`node_modules/`、`.claude/` 或 `mcp-*`。
- 在发布更改之前,使用 `npm run validate:data` 验证目录。
- 当目录发生更改时,使用 `npm run sync:data` 同步 fallback。
- 使用 `npm run check:links -- --report-only --markdown link-check-report.md` 检查外部链接。
- 在 README 或 `docs/` 目录下的文件中记录功能性更改。
- 当更改涉及 API、身份验证、解析、数据加载或用户流程时,添加相应的测试。
- 修改前端时,在提交 PR 前使用 `npm run build` 进行验证。
- 架构文档位于 [docs/arquitectura.md](docs/arquitectura.md)。
## 安全性
- 在生产环境中,`JWT_SECRET`、`MONGODB_URI` 和 `FRONTEND_URL` 是必填项。
- CORS 仅允许环境配置的来源;localhost 仅保留用于开发。
- 文件上传会验证 MIME、二进制签名和最大大小。
- 基础设施扫描器会验证域名,阻止本地/IP 输入并限制重定向。
- 前端的 HTML 内容在渲染前会进行清理。
- 发布更改之前,在根目录、`backend/` 和 `frontend/` 中运行 `npm audit --omit=dev`。
- 有关责任报告和范围,请参阅 [SECURITY.md](SECURITY.md)。
## 目录
目录的编辑格式记录在 [docs/catalogo.md](docs/catalogo.md) 中。使用 `npm run sync:data` 更新前端 fallback,并使用 `npm run validate:data` 验证结构、唯一 ID、类别、子类别、类型、指标、必填字段和同步状态。
## 自动化
- CI 会在每次推送到 `main` 或针对 `main` 的 PR 时验证目录、fallback、测试、构建和审计。
- CodeQL 自动分析 JavaScript/TypeScript。
- Dependabot 每周检查 npm、GitHub Actions 和 Docker。
- Link Check 每周或在报告模式下手动运行,以检测失效的 URL,且不会因外部临时故障而阻止更改。
## 路线图
- 提高 API 和关键组件的测试覆盖率。
- 规范化工具和类别数据。
- 添加端点的技术文档。
- 引入贡献指南和 issue 模板。
- 扩展针对阿根廷和拉丁美洲的特定 OSINT 资源。
## 许可证
本项目基于 MIT 许可证分发。请参阅 [LICENSE](LICENSE)。
## 作者
**Ivan Agustin Zarate**
- GitHub: [IAZARA](https://github.com/IAZARA)
- LinkedIn: [ivan-agustin-zarate](https://www.linkedin.com/in/ivan-agustin-zarate/)
- Email: [osintargy@gmail.com](mailto:osintargy@gmail.com)
OSINTArgy 致力于为讲西班牙语的 OSINT 社区提供开放、可追溯且实用的工具。
标签:ESC4, GNU通用公共许可证, MITM代理, MongoDB, Node.js, OSINT, React, Syscalls, 实时处理, 情报收集, 漏洞研究, 网络测绘, 自定义脚本, 请求拦截