secureml-au/phishing-link-detector-app
GitHub: secureml-au/phishing-link-detector-app
基于 NLP 和机器学习的 Android 应用,实时检测 SMS 短信中的钓鱼攻击并给出风险评分。
Stars: 4 | Forks: 0
# PhishGuard 应用
## 概述
**PhishGuard** 是一款先进的 Android 安全应用,旨在实时保护用户免受钓鱼攻击。通过使用先进的自然语言处理(NLP)和机器学习算法分析 SMS 消息,PhishGuard 能够识别恶意内容并在用户上当受骗前发出警报。
### 主要亮点
- 实时 SMS 扫描,即时检测威胁
- 使用 NLP 和 TensorFlow/Keras 模型进行 AI 驱动的分析
- 用于风险评估的置信度评分
- 注重隐私——所有处理均在本地进行
- 原生 Android UI,采用 Material Design
- 用于 ML 模型服务的 Flask REST API 后端
## 功能
### 安全功能
- **智能消息分析**:使用 TF-IDF 向量化和神经网络检测钓鱼模式
- **实时扫描**:自动扫描传入的 SMS 消息
- **风险评估**:为检测到的威胁提供置信度评分
- **钓鱼数据库**:维护带有威胁等级的已扫描消息历史记录
### 用户体验
- **简洁的界面**:直观的 Material Design UI
- **即时警报**:针对可疑消息的即时通知
- **消息历史**:查看扫描历史和威胁分析
- **用户反馈**:提供报告误报/漏报的选项
### ML 能力
- **NLP 处理**:高级文本特征提取
- **模式识别**:识别常见的钓鱼策略
- **持续学习**:通过用户反馈改进模型
- **高准确率**:在广泛的钓鱼数据集上训练
## 演示
```
## 测试
### 运行单元测试
```
./gradlew test
```
### 运行仪器测试
```
./gradlew connectedAndroidTest
```
## 相关仓库
- **后端 API**:[PhishGuard ML API with Database](https://github.com/ares-coding/phishguard-ml-api-with-database)
- **ML 模型训练**:[Phishing Detection Model](https://github.com/ares-coding/phishing-detection-ml)
## 贡献
欢迎贡献。请随时提交 Pull Request。
### 如何贡献
1. **Fork** 本仓库
2. **创建** 一个功能分支 (`git checkout -b feature/AmazingFeature`)
3. **提交** 您的更改 (`git commit -m 'Add some AmazingFeature'`)
4. **Push** 到该分支 (`git push origin feature/AmazingFeature`)
5. **打开** 一个 Pull Request
### 开发指南
- 遵循 Java 编码规范
- 为新功能编写单元测试
- 根据需要更新文档
- 在提交 PR 前确保所有测试通过
## 许可证
本项目基于 Apache License 2.0 许可 - 详情请参见 [LICENSE](LICENSE) 文件。
## 作者
**Au Amores**
- GitHub: https://github.com/cybersec-dev-au
- 作品集: https://au-dev-cs.vercel.app/
## 致谢
- TensorFlow 和 Keras 团队提供的 ML 框架
- Android 开发社区
- 开源钓鱼数据集贡献者
- Flask 框架开发者
## 支持
如果您遇到任何问题或有疑问:
1. 查看 [Issues](https://github.com/ares-coding/PhishGuardApp/issues) 页面
2. 创建一个带有详细描述的新 issue
3. 通过电子邮件联系:[your-email@example.com]

[](https://www.java.com/)
[](https://www.android.com/)
[](LICENSE)
### 触手可及的实时钓鱼检测
*一款智能 Android 应用,利用 NLP 和机器学习技术检测 SMS 消息中的钓鱼企图,保护用户免受网络威胁。*
[功能](#features) • [演示](#demo) • [安装说明](#installation) • [工作原理](#how-it-works) • [技术栈](#tech-stack) • [贡献](#contributing)
## 概述
**PhishGuard** 是一款先进的 Android 安全应用,旨在实时保护用户免受钓鱼攻击。通过使用先进的自然语言处理(NLP)和机器学习算法分析 SMS 消息,PhishGuard 能够识别恶意内容并在用户上当受骗前发出警报。
### 主要亮点
- 实时 SMS 扫描,即时检测威胁
- 使用 NLP 和 TensorFlow/Keras 模型进行 AI 驱动的分析
- 用于风险评估的置信度评分
- 注重隐私——所有处理均在本地进行
- 原生 Android UI,采用 Material Design
- 用于 ML 模型服务的 Flask REST API 后端
## 功能
### 安全功能
- **智能消息分析**:使用 TF-IDF 向量化和神经网络检测钓鱼模式
- **实时扫描**:自动扫描传入的 SMS 消息
- **风险评估**:为检测到的威胁提供置信度评分
- **钓鱼数据库**:维护带有威胁等级的已扫描消息历史记录
### 用户体验
- **简洁的界面**:直观的 Material Design UI
- **即时警报**:针对可疑消息的即时通知
- **消息历史**:查看扫描历史和威胁分析
- **用户反馈**:提供报告误报/漏报的选项
### ML 能力
- **NLP 处理**:高级文本特征提取
- **模式识别**:识别常见的钓鱼策略
- **持续学习**:通过用户反馈改进模型
- **高准确率**:在广泛的钓鱼数据集上训练
## 演示
### 应用截图
| 启动屏幕 | 消息扫描器 | 威胁检测 |
|:---:|:---:|:---:|
|  |  |  |
## 安装说明
### 前置条件
- **Android Studio** Arctic Fox (2020.3.1) 或更高版本
- **JDK** 11 或更高版本
- **Android SDK** API Level 21+
- **Python 3.8+**(用于后端)
- **Flask** 及 ML 依赖项(见后端仓库)
### 克隆仓库
```
git clone https://github.com/ares-coding/PhishGuardApp.git
cd PhishGuardApp
```
### 构建并运行
1. **在 Android Studio 中打开**
# 在 Android Studio 中打开项目文件夹
2. **同步 Gradle 依赖**
File → Sync Project with Gradle Files
3. **配置后端连接**
- 更新 `app/src/main/java/config/ApiConfig.java` 中的 API endpoint
public static final String BASE_URL = "http://your-backend-url:5000";
4. **运行应用**
- 连接您的 Android 设备或启动模拟器
- 点击 **Run** 或按下 `Shift + F10`
## 工作原理
### 架构概述
```
┌─────────────────────────────────────────────────────────┐
│ ANDROID CLIENT │
│ ┌────────────┐ ┌──────────────┐ ┌────────────────┐ │
│ │ SMS │ │ UI Layer │ │ Retrofit │ │
│ │ Receiver │→ │ (Activity) │→ │ API Client │ │
│ └────────────┘ └──────────────┘ └────────────────┘ │
└─────────────────────────────────────────────────────────┘
↓ HTTP Request
┌─────────────────────────────────────────────────────────┐
│ FLASK REST API │
│ ┌────────────┐ ┌──────────────┐ ┌────────────────┐ │
│ │ API │ │ Preprocessor│ │ ML Model │ │
│ │ Endpoint │→ │ (TF-IDF) │→ │ (Keras/TF) │ │
│ └────────────┘ └──────────────┘ └────────────────┘ │
└─────────────────────────────────────────────────────────┘
↓ JSON Response
{
"prediction": "phishing",
"confidence": 0.94,
"risk_level": "high"
}
```
### 检测流程
1. **消息接收**:应用拦截传入的 SMS
2. **特征提取**:使用 TF-IDF 对文本进行预处理和向量化
3. **API 请求**:将处理后的特征发送至 Flask 后端
4. **ML 推理**:神经网络分析模式
5. **风险评估**:计算置信度评分
6. **用户通知**:如果检测到威胁则显示警报
7. **历史记录**:将结果存储在本地数据库中
## 技术栈
### 前端 (Android)
| 技术 | 用途 |
|-----------|---------|
|  | 主要开发语言 |
|  | IDE 和开发环境 |
|  | REST API 客户端 |
|  | UI/UX 组件 |
### 后端 (ML API)
| 技术 | 用途 |
|-----------|---------|
|  | 后端编程 |
|  | REST API 框架 |
|  | 深度学习框架 |
|  | 神经网络 API |
|  | ML 工具与 TF-IDF |
## 项目结构
```
PhishGuardApp/
├── .idea/ # Android Studio configuration
├── app/ # Main application module
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/ # Java source files
│ │ │ │ └── com.phishguard/
│ │ │ │ ├── activities/ # UI Activities
│ │ │ │ ├── adapters/ # RecyclerView Adapters
│ │ │ │ ├── api/ # Retrofit API interfaces
│ │ │ │ ├── models/ # Data models
│ │ │ │ ├── receivers/ # SMS Broadcast Receiver
│ │ │ │ └── utils/ # Helper classes
│ │ │ ├── res/ # Resources
│ │ │ │ ├── drawable/ # Images & icons
│ │ │ │ ├── layout/ # XML layouts
│ │ │ │ ├── values/ # Colors, strings, themes
│ │ │ │ └── ...
│ │ │ └── AndroidManifest.xml
│ │ └── test/ # Unit tests
│ └── build.gradle # App-level Gradle config
├── gradle/ # Gradle wrapper
├── .gitignore
├── build.gradle # Project-level Gradle config
├── gradle.properties
├── gradlew # Gradle wrapper script (Unix)
├── gradlew.bat # Gradle wrapper script (Windows)
├── settings.gradle.kts
└── README.md # This file
```
## 权限
该应用需要以下权限:
```
由 [Ares Coding](https://github.com/ares-coding) 充满热情地制作


标签:AI安全, Android, Apex, Chat Copilot, DSL, Flask, JS文件枚举, Keras, Material Design, NLP, REST API, SMS安全, TensorFlow, TF-IDF, 人工智能, 域名枚举, 威胁情报, 安卓应用, 实时扫描, 开发者工具, 恶意链接分析, 本地处理, 机器学习, 欺诈防护, 用户模式Hook绕过, 目录枚举, 短信拦截, 神经网络, 移动安全, 网络安全, 网络安全, 逆向工具, 钓鱼检测, 隐私保护, 隐私保护