anushkaarora0333-glitch/cyber-transaction-correlation
GitHub: anushkaarora0333-glitch/cyber-transaction-correlation
一个将网络安全遥测与银行交易行为进行关联分析的原型平台,通过混合检测模型生成可解释的风险评分与决策建议,用于主动欺诈检测。
Stars: 0 | Forks: 0
# SentinelFusion
一个为黑客松准备的原型项目,能将网络安全遥测数据与银行交易行为进行关联分析。它会生成一个可解释的风险评分、一个决策(`allow`、`review` 或 `block`)以及建议的响应措施。
## 本原型展示了什么
- 交易、身份、设备、网络、恶意软件和数据导出信号的关联
- 混合检测:可解释的规则结合 Isolation Forest 异常模型
- 账户接管和欺诈模式检测
- 与“先收集后解密”活动相关的指标
- REST API、分析师仪表盘、持久化、自动化测试、Docker 和 CI
## 架构
```
Telemetry / Transactions
|
v
FastAPI ingestion
|
v
Feature builder -> Rule engine ----\
| +--> Weighted risk + explanation
v /
Isolation Forest anomaly model ---
|
v
SQLite prototype store -> Streamlit analyst dashboard
```
## 仓库结构
```
cyber-transaction-correlation/
├── app/
│ ├── api/ # HTTP routes and dependencies
│ ├── core/ # Settings and database setup
│ ├── domain/ # API schemas and persistence models
│ ├── ml/ # Feature engineering and anomaly model
│ ├── repositories/ # Database access
│ ├── services/ # Correlation/risk business logic
│ └── main.py # FastAPI entry point
├── dashboard/app.py # Streamlit analyst UI
├── tests/ # Unit tests
├── scripts/ # Data generation utilities
├── data/ # Non-sensitive demo data
├── .github/workflows/ci.yml # GitHub Actions
├── docker-compose.yml
├── Dockerfile.api
├── Dockerfile.dashboard
├── Makefile
└── pyproject.toml
```
## 最快运行方式:Docker
前置条件:Docker Desktop。
```
git clone
cd cyber-transaction-correlation
docker compose up --build
```
打开:
- 仪表盘:`http://localhost:8501`
- API 文档:`http://localhost:8000/docs`
- 健康检查:`http://localhost:8000/api/v1/health`
停止运行:
```
docker compose down
```
## 不使用 Docker 在本地运行
使用 Python 3.11 或更高版本。
```
python -m venv .venv
```
Windows PowerShell:
```
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -e ".[dev]"
copy .env.example .env
uvicorn app.main:app --reload
```
在第二个 PowerShell 窗口中:
```
.\.venv\Scripts\Activate.ps1
streamlit run dashboard/app.py
```
macOS/Linux:
```
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -e ".[dev]"
cp .env.example .env
uvicorn app.main:app --reload
```
然后,在另一个终端中:
```
source .venv/bin/activate
streamlit run dashboard/app.py
```
## 示例 API 请求
```
curl -X POST http://localhost:8000/api/v1/assessments \
-H "Content-Type: application/json" \
-d '{
"event_id": "demo-001",
"user_id": "customer-1001",
"event_type": "transaction",
"amount": 800000,
"user_average_amount": 5000,
"hour_of_day": 2,
"failed_logins_24h": 8,
"new_device": true,
"new_country": true,
"vpn_or_tor": true,
"password_reset_24h": true,
"new_beneficiary": true,
"malicious_ip": true,
"transaction_velocity_10m": 7
}'
```
## 测试与质量检查
```
pytest -q
ruff check .
```
## 给评委的演示故事
1. 提交一笔正常交易,并展示 `ALLOW` 结果。
2. 启用新设备、新国家/地区、VPN、密码重置、登录失败以及大额转账。
3. 展示增加的风险评分及确切的贡献因素。
4. 启用批量数据导出和加密降级,以演示量子风险指标。
5. 打开最近评估表格,展示可审计的结果。
## 生产环境演进
将 SQLite 替换为 PostgreSQL,添加 Kafka 用于事件摄取,Redis 用于在线特征,SSO/RBAC,feature store,model registry,drift monitoring,加密的 secrets,不可变的审计追踪,SIEM/SOAR 集成以及 Kubernetes 部署。不要将原始的 PCI 或客户身份数据发送到开发或演示环境中。
标签:Apex, AV绕过, FastAPI, Kubernetes, Python, 反欺诈检测, 可视化大屏, 威胁情报, 安全规则引擎, 开发者工具, 异常检测, 无后门, 机器学习, 网络安全, 网络测绘, 请求拦截, 逆向工具, 隐私保护