Octopii 项目介绍
Octopii 是由 RedHunt Labs 开发的一款用于检测个人可识别信息(PII)的工具。它采用光学字符识别(OCR)、正则表达式和自然语言处理(NLP)技术,专注于从暴露在公共环境中的图像、PDF 和文档中提取政府 ID、地址、电子邮件等信息。
项目背景
在网络安全领域,PII 泄露往往被忽视。然而,RedHunt Labs 在探索不同创新的网络安全解决方案时,发现很多组织的服务器配置不当,导致员工和客户的 PII 经常泄露。这种泄露为恶意方提供了敏感的个人信息,比如来源地、身份证号码、联系方式及其位置等。因此,Octopii 的诞生旨在演示和检测在互联网上自动发现和提取泄露的 PII 及敏感文档的便捷性。
使用指导
Octopii 的安装和运行非常简单。首先,用户需要通过 pip install -r requirements.txt
命令来安装所有依赖项。然后,需要在系统上安装 Tesseract OCR 工具和 Spacy 语言包。
Octopii 可以通过运行以下命令启动:
python3 octopii.py <location to scan>
其中 <location to scan>
是需要扫描的文件或目录。Octopii 支持通过文件路径、本地目录、S3 URL 和 Apache 开放目录来扫描。
示例输出
工具会创建一个名为 output.txt
的文件,将扫描结果记录其中。输出包括:
file_path
: 文件路径pii_class
: PII 的类别country_of_origin
: 源自国家identifiers
: 唯一标识符emails
和phone_numbers
: 联系方式addresses
: 地理位置数据
工作原理
Octopii 的工作流程包括以下几个步骤:
- 输入导入:扫描并识别图像和文档,包括支持 S3 服务、开放目录和本地系统的文件。
- 人脸识别:使用 Haar 级联模型检测图像中的人脸。
- 图像清理和文本提取:经过多个图像处理步骤后,利用 Tesseract OCR 提取文本。
- 关键字匹配与正则表达式检查:通过关键字列表和正则表达式检测敏感 PII 子字符串。
贡献和致谢
项目鼓励广泛的社区贡献,开发者可以参考项目内的贡献指南以便参与其中。Octopii 使用了多个开源工具和库如 BeautifulSoup、Tesseract、SciKit、OpenCV 等。
免责声明和许可
Octopii 仅用于研究和教育目的。RedHunt Labs 和其他贡献者不对工具的恶意使用承担责任。项目遵循 MIT 许可证。
通过这款工具,Octopii 希望为网络安全领域提供更有效的解决方案,帮助识别并保护关键的个人信息不被滥用。