ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Shotlooter批量扫描提速指南:并发下载与OCR性能优化的实用技巧

Shotlooter批量扫描提速指南:并发下载与OCR性能优化的实用技巧 Shotlooter批量扫描提速指南并发下载与OCR性能优化的实用技巧【免费下载链接】shotlootera recon tool that finds sensitive data inside the screenshots uploaded to prnt.sc项目地址: https://gitcode.com/gh_mirrors/sh/shotlooterShotlooter 是一款开源的 prnt.sc 批量扫描工具通过 OCR 识别用户上传到 LightShot 的屏幕截图自动挖掘其中泄露的 API 密钥、数据库口令、云平台凭证等敏感信息。很多新手第一次运行都会抱怨扫得太慢默认串行流程逐张下载、逐张识别效率很低。本文从实战出发总结并发下载与 OCR 性能优化的实用技巧帮你把批量扫描速度提升数倍。Shotlooter是什么工作原理与扫描流程详解Shotlooter 的核心理念很简单prnt.sc 的图片 ID 并非随机生成而是按顺序递增的因此可以像翻字典一样逐张遍历截图。下载图片后它调用 Tesseract OCR 提取文字再对文字做多重体检关键词匹配对照 keywords.txt 中的敏感词如 private_key、smtp_pass、mongodbsrv 等逐一检索高熵字符串检测API Key、私钥这类随机字符串信息熵极高极易被识别信用卡号校验通过 Luhn 算法验证 16 位数字是否构成有效卡号小图模板匹配用 OpenCV 在截图中查找 LastPass、phpMyAdmin 等工具 Logo判断是否使用了密码管理器。命中的结果写入 findings.csv截图保存到 output 目录全部逻辑集中在主程序 shotlooter.py 中。下面这张图就是它扫描到的典型成果——GCP 控制台中的 API 密钥。为什么批量扫描这么慢两大性能瓶颈分析谈提速之前先认清瓶颈。默认情况下 shotlooter.py 是严格串行执行下载一张图 → OCR 识别 → 比对关键字 → 再下载下一张。这里有两个耗时大户网络串行下载每张截图都要先请求 prnt.sc 页面获取真实图片地址再下载图片一来一回两次网络请求串行时延迟被完全放大OCR 逐张识别Tesseract 识别一张图通常耗时零点几秒到数秒分辨率越高越慢截图达到上万张时总耗时十分可观。如果开启了--imagedir模板匹配OpenCV 的多尺度滑动扫描更是重量级操作会进一步拖慢整体速度。Shotlooter并发下载技巧多实例并行扫描教程最立竿见影的提速方法就是化串行为并行。既然图片 ID 按顺序递增完全可以把它拆成多段同时启动多个 Shotlooter 实例每个实例从不同 ID 起点扫描互不冲突。操作很简单python3 shotlooter.py --code sjgmm5 # 终端1 python3 shotlooter.py --code sjgmm100 # 终端2 python3 shotlooter.py --code sjgmm200 # 终端3开 4 个实例扫描速度就接近原来的 4 倍。各实例共用 keywords.txt 与 output 目录findings.csv 会自动合并。注意不要开太多实例以免触发目标网站访问限制35 个并发是比较稳妥的选择。资源充足的读者也可以用 tmux 或 shell 后台任务统一管理并行进程。下图展示了这类扫描能发现的典型数据——URL 中直接泄露的会话信息。OCR性能优化方法让截图识别效率翻倍OCR 是扫描流程中最耗时的环节优化它收益最大这里有三个立竿见影的方向升级 Tesseract 配置适当调整 PSM页面分割模式和 OEMOCR 引擎模式例如对单行文本使用--psm 7可显著缩短识别时间跳过无效图片明显过小或无文字的截图可直接跳过避免无效 OCR 白白消耗时间预处理再识别对高分辨率截图先做缩放、灰度化处理识别速度与准确率都能得到改善。依赖安装也很关键macOS 用brew install tesseractDebian 系 Linux 用sudo apt install libsm6 libxext6 libxrender-dev tesseract-ocr -y再通过pip3 install -r requirements.txt安装 Python 依赖即可运行。若需克隆仓库可执行git clone https://gitcode.com/gh_mirrors/sh/shotlooter。下图是扫描到的典型敏感数据——Excel 表格中成批保存的数据库口令。灵活裁剪检测项跳过多余计算的高效扫描参数Shotlooter 默认同时执行关键词、高熵、信用卡号、模板匹配四类检测但并非每次都需要全开只做基础侦察可加--no-entropy --no-cc跳过高熵与卡号检测不需要查找小 Logo就不加--imagedir参数避开模板匹配的额外开销精简 keywords.txt 词表删除不需要的敏感词逐词比对自然更快。需要提醒的是高熵字符串与信用卡检测的误报率偏高——任何随机字符串都具有高熵会被误判为敏感。如果不希望被大量伪命中干扰--no-entropy和--no-cc也是降低结果噪音的好方法。下图为扫描发现的 AWS 访问密钥凭证截图。运行环境优化保障长时批量扫描稳定高效除了代码与参数层面运行环境同样影响批量扫描的整体效率磁盘与目录结果写入 output 目录建议使用 SSD并定期清理已命中的图片避免目录膨胀拖慢读写网络稳定性下载依赖目标网站响应稳定的网络环境能减少请求超时与重试损耗结果及时备份findings.csv 持续追加命中记录长时间运行建议定时备份防止文件过大。结语与合规提醒回顾全文Shotlooter 批量扫描提速的核心就三条并发下载拆任务、OCR 性能优化减耗时、裁剪检测项降负载。先并行多开实例跑满下载环节再用参数与关键词精简让每个实例更快最后以干净的环境和规范的结果管理保障长时间稳定运行。最后务必强调Shotlooter 是安全研究工具请仅在授权范围内使用尊重目标网站的访问规则。理解其完整实现源码见 shotlooter.py并掌握本文的提速技巧你就能在合法合规的前提下高效完成大规模截图敏感信息扫描。【免费下载链接】shotlootera recon tool that finds sensitive data inside the screenshots uploaded to prnt.sc项目地址: https://gitcode.com/gh_mirrors/sh/shotlooter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表