Shotlooter完全指南:这款开源截图敏感数据嗅探工具如何一步步暴露你的隐私
Shotlooter完全指南:这款开源截图敏感数据嗅探工具如何一步步暴露你的隐私
【免费下载链接】shotlootera recon tool that finds sensitive data inside the screenshots uploaded to prnt.sc项目地址: https://gitcode.com/gh_mirrors/sh/shotlooter
Shotlooter 是一款开源的截图敏感数据嗅探工具,它的目标非常直接:扫描上传到 prnt.sc(LightShot 截图软件的默认分享平台)的海量截图,借助 OCR 文字识别与图像处理技术,自动找出其中隐藏的 API 密钥、数据库密码、私钥、卡号等敏感信息。它把"看图找隐私"这件事完全自动化了。本文将带你从原理、安装、使用到真实案例,完整认识这款工具——同时它也在提醒你:随手分享的一张截图,可能就是别人眼中的"数据宝藏"。
Shotlooter是什么?一款扫描prnt.sc截图的敏感数据嗅探工具
prnt.sc 是 LightShot 截图工具默认的上传平台,用户每次截图后会自动生成一个 6 位字符的 ID 链接。问题的关键在于:这些 ID 并不是完全随机生成的,而是按顺序递增的。也就是说,只要知道其中一个 ID,就可以顺着 ID 逐个遍历到别人的截图。
Shotlooter 正是抓住了这一漏洞,配合 OCR 与图像匹配技术,实现了对截图内容的全自动"敏感数据嗅探"。它的核心能力包括:
- 🔍关键词匹配:内置
keywords.txt关键词库(如smtp_pass、mongodb+srv、Access key ID、secret_key等),在识别出的文字中逐一检索 - 🔢高熵字符串检测:API Key、私钥这类随机字符串熵值极高,容易被从普通文字中区分出来
- 💳信用卡号校验:基于 Luhn 算法识别 16 位有效卡号
- 🖼️小图模板匹配:在截图中寻找 LastPass、phpMyAdmin 等 Logo,快速定位密码管理器相关页面
Shotlooter嗅探原理:OCR识别 + 高熵检测 + 模板匹配
Shotlooter 的工作流程可以概括为五个步骤:
- 从指定的截图 ID 开始,按顺序遍历并下载 prnt.sc 上的图片
- 调用 Tesseract OCR 引擎识别图片中的文字
- 在文字中匹配预设的敏感关键词
- 计算字符串熵值,捕捉 API 密钥等高随机性内容
- 使用 OpenCV 模板匹配查找小 Logo,将命中敏感数据的图片保存到
output/文件夹,并把结果写入findings.csv
整个核心逻辑都集中在shotlooter.py中,结构清晰、易于阅读。关键词库可自行维护在keywords.txt,想新增识别的 Logo 只需把图片放入img/目录即可,扩展非常方便。
Shotlooter安装步骤:最快3分钟跑起来
前置条件:需要 Python3 与 pip3,以及 tesseract OCR 引擎。
Debian 系 Linux 安装系统依赖:
sudo apt install libsm6 libxext6 libxrender-dev tesseract-ocr -ymacOS 安装系统依赖:
brew install tesseract克隆项目并安装 Python 依赖:
git clone https://gitcode.com/gh_mirrors/sh/shotlooter cd shotlooter pip3 install -r requirements.txt依赖清单都在requirements.txt中,主要包括pytesseract、opencv-python-headless、numpy、beautifulsoup4等,一条命令即可装齐。
使用方法:一条命令开始扫描prnt.sc截图
基础用法:
python3 shotlooter.py --code sjgmm5--code是必填参数,需要提供一个 prnt.sc 的截图 ID。工具会从该 ID 开始逐个递增扫描(sjgmm6、sjgmm7、sjgmma……),一旦命中敏感数据,就会在终端以彩色高亮提示,并将对应图片保存到本地。
常用参数一览:
| 参数 | 作用 |
|---|---|
--imagedir 路径 | 指定小图标目录,开启模板匹配检测 |
--no-cc | 跳过信用卡号检测 |
--no-entropy | 跳过熵值检测 |
--no-keyword | 跳过关键词匹配 |
例如python3 shotlooter.py --code sjgmm5 --no-entropy,就会关闭高熵字符串检查,只做关键词与卡号检测。
实战发现:Shotlooter嗅探到的隐私数据长什么样
作者在为期两周的测试中,识别出300+ 张包含敏感数据的截图。以下是出现频率最高的几类,每一类都值得警惕。
Postman 请求中的 Token 泄露
Postman 调试界面的截图,往往会完整保留access_token、client_secret等凭证。一旦泄露,攻击者可以直接冒用你的身份调用 API。
云平台 API 密钥泄露
云控制台或桌面客户端的截图,常把密钥直接摆在明面上。比如 Google Cloud 的 API 密钥:
AWS 的 Access Key ID 与 Secret Access Key 同样常见,拿到这两样就等于拿到了你云资源的管理权限:
URL 中的会话 ID
把会话 ID 放在 URL 的 GET 请求里本身就不安全,再截图分享出去,等于把登录凭证直接交到了别人手里:
Excel 当成密码本
不少开发者习惯用 Excel 表格记录数据库账号密码,再截图发给同事——db_name、db_login、db_pass一览无余:
比特币私钥(最危险的一类)
钱包导出私钥的截图一旦上传,整个钱包的资产都可能被转走。这类截图虽然数量少,但危害性最高:
误报率与参数调优建议
需要特别说明的是,Shotlooter 对高熵字符串和信用卡号的检测存在一定误报——任何非敏感的随机字符串,熵值都可能很高,从而被误判为 API 密钥;16 位数字也可能碰巧通过 Luhn 校验。作者本人也承认这一点。
如果你只关心明确的敏感信息,建议运行时加上--no-entropy --no-cc排除这两类检查,聚焦关键词命中,能显著减少噪音。
如何防止自己的截图泄露隐私
了解这款工具之后,更重要的其实是保护自己:
- 🚫 关闭 LightShot 等工具的自动上传功能,上传后及时删除链接
- 👀 截图前检查浏览器地址栏、控制台或客户端中是否有 API 密钥、Token
- 📋 不要用 Excel 等明文表格保存密码,改用专业密码管理器
- 🔎 定期在 prnt.sc 上搜索自己的 ID 范围,检查是否有截图泄露
- 💰 导出私钥、助记词等操作,永远不要截图
总结
Shotlooter 是一款思路清奇的截图敏感数据嗅探工具:它用 OCR 识别、关键词匹配、熵值检测和模板匹配的组合拳,把 prnt.sc 上数以百万计的截图变成了"信息收集池"。对安全测试人员来说,它是理解 LightShot 生态风险、开展攻防演练的好工具;对普通用户而言,它则是一记响亮的警钟——你随手分享的每一张截图,都可能在不知不觉中暴露你的隐私。
【免费下载链接】shotlootera recon tool that finds sensitive data inside the screenshots uploaded to prnt.sc项目地址: https://gitcode.com/gh_mirrors/sh/shotlooter
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
