RewaS10/BlindSight

GitHub: RewaS10/BlindSight

一款无障碍优先的移动端网络安全助手,利用 OCR 和威胁情报从截图中分析网络钓鱼与诈骗内容,帮助普通用户快速识别安全威胁。

Stars: 0 | Forks: 0

# BlindSight ### 优先考虑无障碍体验的网络安全助手,用于检测截图中的网络钓鱼、诈骗和恶意链接。 BlindSight 结合了 OCR、威胁情报、网络钓鱼启发式算法和无障碍设计,帮助用户直接从截图中以快速、易懂且适合移动端的方式识别网络威胁。
![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg) ![Python](https://img.shields.io/badge/Python-3.8%2B-blue?logo=python&logoColor=white) ![React Native](https://img.shields.io/badge/React%20Native-Expo-61DAFB?logo=react&logoColor=white) ![FastAPI](https://img.shields.io/badge/FastAPI-Backend-009688?logo=fastapi&logoColor=white)
[功能特性](#-features) • [截图展示](#-screenshots) • [系统架构](#-architecture) • [快速开始](#-getting-started) • [路线图](#-roadmap)
# 概述 BlindSight 是一款移动端网络安全助手,旨在帮助用户直接从截图中识别网络钓鱼攻击、诈骗信息、虚假登录页面、冒充企图和可疑链接。 BlindSight 并不仅仅依赖技术用户或企业安全工具,而是致力于让日常用户也能简单、直观、无障碍且易于理解地进行网络安全分析。 该应用程序执行以下操作: - 基于 OCR 的文本提取 - 威胁与网络钓鱼分析 - URL 信誉检查 - 社会工程学检测 - 以无障碍为中心的语音引导 - 风险评分与安全操作建议 # 问题描述 现代网络钓鱼攻击越来越依赖于心理操纵,而非技术漏洞。许多诈骗信息在视觉上看似逼真,用户很难快速识别。 BlindSight 利用 OCR、启发式威胁检测和 URL 情报分析,将截图转化为易于理解的网络安全洞察,从而解决了这一难题。 该项目特别专注于无障碍优先的网络安全体验和简化的威胁感知。 # 功能特性 ## 威胁分析引擎 - 网络钓鱼检测 - 诈骗模式识别 - 品牌冒充检测 - 凭证窃取检测 - 紧迫感和恐吓策略分析 - 社会工程学检测 ## 🔗 URL 信誉情报 - 可疑域名检测 - URL 信誉评分 - 短链接检测 - 可疑 TLD 分析 - 基于 IP 的 URL 检测 - 基于威胁情报的 URL 检查 ## 无障碍 UX 设计 - 语音引导反馈 - 高对比度可读界面 - 移动端优先体验 - 平静直观的 UI - 清晰的风险可视化 ## 现代移动端体验 - 动画圆形风险仪表盘 - 基于严重程度的颜色系统 - 流畅的网络安全主题界面 - 高级深色模式设计 - 简洁的威胁分析卡片 # 📸 截图展示
| 高风险检测 | 低风险检测 | 检测到的链接分析 | |---|---|---| | | | |
--- # 演示 BlindSight 实时分析可疑信息、网络钓鱼邮件、虚假登录页面和恶意链接的截图,帮助用户快速识别网络威胁并避免上当受骗。 # 技术栈 | 层级 | 技术 | |---|---| | Frontend | React Native, Expo, TypeScript | | UI 组件 | React Native SVG, Expo Speech | | Backend | FastAPI, Python | | OCR | Tesseract OCR (`pytesseract`) | | 威胁分析 | 启发式钓鱼引擎 | | 威胁情报 | URL 信誉分析 | # 架构 ``` User Screenshot ↓ React Native Frontend ↓ FastAPI Backend API ↓ OCR Text Extraction ↓ Threat Analysis Engine ↓ URL Reputation Analysis ↓ Risk Scoring + Safe Actions ↓ Frontend Visualization + Voice Feedback ``` # ⚙️ 工作原理 ## 1. 上传截图 用户上传以下内容的截图: - 可疑信息 - 诈骗邮件 - 虚假登录页面 - 钓鱼攻击企图 - 恶意链接 ## 2. OCR 提取 BlindSight 使用 OCR 从截图中提取可读文本。 ## 3. 威胁分析 后端分析以下内容: - 钓鱼指标 - 社会工程学模式 - 紧迫感策略 - 冒充企图 - 凭证请求 - 可疑链接 ## 4. URL 情报 检测到的 URL 将接受以下检查: - 恶意信誉 - 可疑域名 - 钓鱼指标 - 危险 TLD ## 5. 风险评分 加权启发式评分系统生成以下内容: - 严重级别 - 风险评分 - 威胁说明 - 安全操作建议 ## 6. 无障碍反馈 结果以可视化方式呈现,也可以通过语音引导反馈进行解释。 # 快速开始 # 前置条件 在安装之前请确保已安装以下软件: - Node.js - Python 3.8+ - Expo CLI - Tesseract OCR # 1. 克隆仓库 ``` git clone https://github.com/yourusername/BlindSight.git cd BlindSight ``` # 2. Frontend 设置 ``` cd frontend npm install npx expo start ``` # 3. Backend 设置 ``` cd backend pip install -r requirements.txt uvicorn main:app --host 0.0.0.0 --port 8000 --reload ``` # 4. 环境变量 在以下位置创建一个 `.env` 文件: ``` backend/ ``` 添加: ``` API_KEY=your_api_key_here ``` # 5. Tesseract OCR 设置 Tesseract OCR 必须单独安装。 ## Windows 下载: https://github.com/UB-Mannheim/tesseract/wiki 然后更新以下文件中的路径: ``` backend/services/ocr_service.py ``` 示例: ``` pytesseract.pytesseract.tesseract_cmd = ( r"C:\Program Files\Tesseract-OCR\tesseract.exe" ) ``` ## macOS ``` brew install tesseract ``` ## Linux ``` sudo apt install tesseract-ocr ``` # 安全说明 - API 密钥使用 `.env` 进行安全存储 - 敏感信息通过 `.gitignore` 排除 - 不会永久存储任何敏感截图 - 威胁分析在后端本地执行 # 路线图 - [ ] 基于 LLM 的钓鱼分类 - [ ] 二维码钓鱼检测 - [ ] 浏览器扩展集成 - [ ] 多语言 OCR 支持 - [ ] 实时威胁信息源集成 - [ ] 离线威胁分析模式 - [ ] 高级域名情报 # 许可证 本项目采用 MIT 许可证授权。 # 作者 由 **Rewa Shukla** 开发
标签:AV绕过, Expo, FastAPI, heuristic 分析, Python, React Native, URL信誉检测, 人工智能安全, 假登录页面检测, 光学字符识别(OCR), 冒充攻击检测, 反钓鱼, 合规性, 威胁情报, 开发者工具, 无后门, 无障碍设计, 机器视觉, 社会工程学防御, 移动应用安全, 移动端开发, 网络安全, 自动化攻击, 视觉障碍辅助, 诈骗检测, 辅助技术, 逆向工具, 隐私保护, 风险评分