17vivekupadhyay/PinPointer

GitHub: 17vivekupadhyay/PinPointer

一个网络取证与威胁情报平台,通过捕获实时流量、对可疑连接进行指纹识别与威胁评分,并在世界地图上动态可视化攻击流。

Stars: 0 | Forks: 0

# PinPointer 网络取证与威胁情报平台。捕获实时流量,对可疑连接进行指纹识别,对每个远程端点进行地理定位,并将实时攻击流以动态弧线的形式渲染在实时世界地图上。 ![仪表盘](https://static.pigsec.cn/wp-content/uploads/repos/cas/0e/0ea82ae36d444f492d05c389ee9e1d253472718a4aea2eff3cd0b1d497122641.png) ## 功能简介 - **实时数据包捕获** — 通过 tshark 实现,可在任何接口上运行或重播 `.pcap` 文件 - **威胁指纹识别** — 实时检测端口扫描、SSH/RDP 暴力破解、C2 信标和数据外泄模式 - **IP 地理定位** — 用国家、城市、ISP 和 ASN 数据丰富每个源 IP 的信息 - **实时世界地图** — 动态弧线追踪从源地址到您服务器的实时攻击流 - **威胁评分** — 根据五个行为信号对每个连接进行 0-100 的评分 - **AWS 蜜罐** — 将开放 22 端口的 EC2 实例作为诱饵;部署后数小时内便会收到来自全球各地 IP 段的暴力破解尝试 ## 架构 ``` Internet │ ▼ EC2 Honeypot (port 22 open) │ ├── tshark (packet capture) │ │ │ ▼ │ capture.py ──► analyze.py ──► geolocate.py │ │ │ ▼ │ server.py (Flask + WebSocket) │ │ └──────────────────────────────────────▼ Browser Dashboard (Leaflet map + live feed) AWS: EC2 · VPC · CloudWatch Logs · VPC Flow Logs · S3 · IAM ``` ## 威胁检测 | 信号 | 阈值 | 分数 | |---|---|---| | 端口扫描 | 30 秒内出现 15 个以上的不同端口 | +40 | | SSH/RDP 暴力破解 | 对同一端口进行 10 次以上的命中 | +50 | | 可疑端口 (C2/Tor) | 4444, 1337, 9050... | +30 | | 高风险国家/地区源 | --------- | +20 | | 数据外泄 | 向单个 IP 发送 5MB 以上的出站流量 | +60 | 严重程度级别:**严重** (60+) · **高** (40+) · **中** (20+) · **低** ## 快速开始 **环境要求** - Python 3.11+ - tshark(在 Mac 上使用 `brew install wireshark`,在 Linux 上使用 `apt install tshark`) ``` git clone https://github.com/17vivekupadhyay/PinPointer cd PinPointer pip install -r requirements.txt ``` **演示模式**(无需 tshark — 流式传输模拟的攻击流量) ``` python run.py ``` **实时捕获** ``` sudo python run.py --live --iface en0 ``` **重播 pcap 文件** ``` python run.py --pcap capture.pcap ``` 打开 `http://127.0.0.1:8765` ## AWS 蜜罐设置 **1. 启动 EC2** - Ubuntu 22.04,t2.micro(免费套餐) - 安全组:允许来自 `0.0.0.0/0` 的 22 端口入站流量 **2. 安装依赖项** ``` ssh -i your-key.pem ubuntu@ sudo apt update && sudo apt install -y tshark python3-pip pip install -r requirements.txt ``` **3. 在该实例上运行 PinPointer** ``` sudo python run.py --live --iface eth0 --host 0.0.0.0 ``` **4. 通过 SSH 隧道远程查看仪表盘** ``` ssh -i your-key.pem -L 8765:localhost:8765 ubuntu@ -N ``` 然后在您的本地机器上打开 `http://127.0.0.1:8765`。 ## CLI 参考 ``` python run.py [OPTIONS] Options: --live Live capture (requires tshark + root) --iface TEXT Network interface (e.g. en0, eth0) --pcap TEXT Path to .pcap file --host TEXT Bind host (default: 127.0.0.1) --port INT Port (default: 8765) ``` ## 技术栈 **后端** — Python, Flask, Flask-SocketIO, tshark, ip-api.com **前端** — Vanilla JS, Leaflet.js, Socket.IO, Space Mono **基础设施** — AWS EC2, VPC, CloudWatch Logs, VPC Flow Logs, S3, IAM ## 许可证 MIT
标签:IP 地址批量处理, 威胁情报, 威胁评分, 开发者工具, 插件系统, 漏洞探索, 蜜罐, 证书利用, 逆向工具