kryptologyst/Identity-Theft-Detection-System
GitHub: kryptologyst/Identity-Theft-Detection-System
一个用于研究与教学的身份盗窃检测原型,通过行为分析与图模型识别账户接管风险。
Stars: 0 | Forks: 0
# 身份盗窃检测系统
## 免责声明
**这是一个仅用于教育目的的研究演示项目。**
- 本系统仅用于研究和教育用途
- 结果可能不准确,不应用于生产安全操作
- 这不是 SOC(安全运营中心)工具
- 未实现任何进攻性能力或攻击技术
- 所有数据均为演示用途的模拟和去标识化数据
## 概述
本项目实现了一个身份盗窃检测系统,通过分析用户行为模式来识别可疑的账户访问尝试。系统重点检测通过行为分析、设备指纹识别和基于位置的异常检测实现的账户接管模式。
## 功能
- **行为分析**:登录模式、设备使用、位置跟踪
- **基于图形的特征**:实体关系、设备/IP 关联
- **异常检测**:不寻常的访问模式和时间模式
- **风险评分**:身份盗窃尝试的校准概率分数
- **可解释 AI**:基于 SHAP 的特征重要性和基于规则的证据
- **交互式演示**:用于测试的 Streamlit 网页界面
## 快速开始
### 安装
```
# 克隆仓库
git clone https://github.com/kryptologyst/Identity-Theft-Detection-System.git
cd Identity-Theft-Detection-System
# 安装依赖
pip install -e .
# 安装开发依赖(可选)
pip install -e ".[dev]"
```
### 基本用法
```
from src.models.identity_detector import IdentityTheftDetector
from src.data.synthetic_data import generate_synthetic_data
# 生成合成数据
data = generate_synthetic_data(n_samples=10000)
# 初始化检测器
detector = IdentityTheftDetector()
# 训练模型
detector.fit(data['X_train'], data['y_train'])
# 预测新数据
risk_scores = detector.predict_proba(data['X_test'])
```
### 交互式演示
```
# 启动 Streamlit 演示
streamlit run demo/app.py
```
## 数据集架构
系统期望具有以下特征的日志交易:
- **时间特征**:登录小时、星期几、距离上次登录的时间
- **设备特征**:设备指纹、浏览器类型、操作系统版本
- **位置特征**:IP 地理位置、GPS 坐标、位置历史
- **行为特征**:交易模式、会话持续时间、点击模式
- **图形特征**:设备关联、IP 关系、账户关联
所有个人身份信息 (PII) 在模拟数据集中均经过哈希或混淆处理。
## 训练与评估
### 训练
```
# 使用默认配置训练
python scripts/train.py --config configs/default.yaml
# 使用自定义参数训练
python scripts/train.py --config configs/custom.yaml --epochs 100
```
### 评估
```
# 运行评估套件
python scripts/evaluate.py --model-path models/best_model.pkl
# 生成评估报告
python scripts/generate_report.py --output-dir reports/
```
## 指标
系统使用与安全相关的指标评估性能:
- **AUCPR**:精确率-召回率曲线下面积(罕见事件的主要指标)
- **Precision@K**:前 K% 预测的精确率
- **告警工作量**:每 1000 个事件的告警数量
- **假阳性率**:在目标真阳性率下
- **检测延迟**:流式场景下的检测时间
## 模型架构
### 基准模型
- 类别平衡的随机森林
- 具有自定义损失函数的 XGBoost
- 具有分类特征的 LightGBM
### 高级模型
- 用于实体关系的图神经网络
- 用于时间模式的序列模型
- 结合多种方法的集成方法
## 配置
系统使用基于 YAML 的配置文件:
```
# configs/default.yaml
data:
train_size: 0.7
val_size: 0.15
test_size: 0.15
model:
type: "xgboost"
params:
n_estimators: 100
max_depth: 6
evaluation:
metrics: ["aucpr", "precision_at_k", "alert_workload"]
k_values: [1, 5, 10]
```
## 安全与隐私
- **PII 保护**:所有敏感数据均经过哈希或混淆处理
- **数据保留**:仅使用模拟数据,不存储真实用户数据
- **审计日志**:记录所有模型预测和决策
- **访问控制**:演示系统,无生产访问权限
## 限制
- 模拟数据可能无法反映真实世界模式
- 模拟数据上的模型性能可能无法泛化
- 无实时威胁情报集成
- 仅限于演示的攻击模式
## 许可证
本项目根据 MIT 许可证授权 - 详细信息请参阅 LICENSE 文件。
## 联系
关于本研究演示的问题,请联系开发团队。
# Identity-Theft-Detection-System
标签:Apex, IP关联, Kubernetes, Python, SHAP, Streamlit, 位置异常, 凭据扫描, 可解释AI, 合成数据, 图特征, 异常检测, 教育研究, 无后门, 时序异常, 机器学习, 概率模型, 用户行为分析, 登录模式, 设备指纹, 访问控制, 账号接管, 身份盗窃检测, 逆向工具, 防御性研究, 风险评分