从零部署一个易经应用:反扫描与防篡改实战
上线第一天的”惊喜”
部署到公网第一天,日志里全是漏洞扫描器的探测:/hachk.php、/geoserver、致远/OA 批量探测、空 UA 扫描群……目标很明确:找漏洞、换二维码。
三层反扫描中间件
# anti_scan.py
# ① 路径黑名单:403 直接拦(先 grep main.py 确认无真实路由才加)
# ② UA 黑名单:infrawatch / httpx / proxy-prefilter 等扫描器特征
# ③ 限频:120 次/60s → 429
关键洞察:运营商 NAT 共享段上,真人和扫描器可能同 IP——只能按 UA/路径规则,绝不能 IP 拉黑整个段(会误伤真实用户)。
防篡改体系
- 收款码图片 + index.html 的 md5 基线(
integrity_baseline.json) - 每日 09:10 定时校验,
ok=false醒目告警 - rebaseline 接口三重防护:仅私网可调 + 失败 5 次锁 10 分钟 + 审计日志
血泪教训
改完 index.html 必须重新 rebaseline,否则第二天自检误报——真实发生过的虚惊。
数据说话
两周窗口:304 次访问,约 1/3 是扫描器。真人用户都是回头客——周六日的华为、荣耀手机用户,天天来。