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, 合成数据, 图特征, 异常检测, 教育研究, 无后门, 时序异常, 机器学习, 概率模型, 用户行为分析, 登录模式, 设备指纹, 访问控制, 账号接管, 身份盗窃检测, 逆向工具, 防御性研究, 风险评分