内容审核

第二个危机 🚨

解决了恶意 URL 跳转问题后,我松了一口气。

直到那个周二的下午,我接到一通电话:

“您好,我们是网信办工作人员。” “接到举报,您的短链接平台被用于传播违法违规内容。” “请立即整改,否则可能暂停服务。”

我脑子一片空白。

打开后台查看,果然有几个短链接被大量举报:

举报记录
────────────────────────────────────────
链接:k.yz/a8x3k  举报数:127  原因:色情内容
链接:k.yz/m9p2q  举报数:89   原因:赌博网站
链接:k.yz/r4t7w  举报数:64   原因:诈骗信息
────────────────────────────────────────

我点开其中一个,跳转到充斥着违规内容的页面。

恶意 URL 识别只解决了”链接去哪”的问题。但链接指向的内容,可能是违规的。

后果不堪设想:

  • ❌ 监管处罚,甚至关停
  • ❌ 用户流失,声誉受损
  • ❌ 法律诉讼风险

我必须立刻行动。


方案调研

当晚,我开始调研内容审核方案。

方案一:自建审核系统

落地思路

  • 这里省略具体语法,只保留设计层面的职责边界。
  • 读这段时重点看:输入是什么、系统做哪些判断、状态如何变化、失败时如何兜底。

优点:可控、成本低、毫秒级响应

缺点:准确率仅 70%,无法识别图片视频,易被谐音绕过

测试发现误判率高达 20%。自建方案,pass。


方案二:第三方 API

国内主要有阿里云和腾讯云内容安全。

落地思路

  • 这里省略具体语法,只保留设计层面的职责边界。
  • 读这段时重点看:输入是什么、系统做哪些判断、状态如何变化、失败时如何兜底。

优点:准确率 95%+,支持多种违规类型,能识别图片视频

缺点:成本高,延迟 300-500ms,依赖外部服务

测试对比:

方案响应时间准确率成本误判率
自建10ms70%¥020%
阿里云500ms95%¥5000/月5%
腾讯云450ms94%¥4500/月6%

但审核服务挂了怎么办?


方案三:混合方案(最终选择)⭐

本地规则 + 第三方 API + 人工审核

落地思路

  • 这里省略具体语法,只保留设计层面的职责边界。
  • 读这段时重点看:输入是什么、系统做哪些判断、状态如何变化、失败时如何兜底。

优势

  • 70% 请求本地完成,节省 70% 成本
  • 毫秒级响应 + 缓存
  • 服务不可用时降级
  • 误判率<4%

异步审核实现

同步审核体验差,我采用分级异步审核

  • 高风险:同步拦截
  • 中低风险:先允许,异步审核

落地思路

  • 这里省略具体语法,只保留设计层面的职责边界。
  • 读这段时重点看:输入是什么、系统做哪些判断、状态如何变化、失败时如何兜底。

人工审核队列

边界情况需要人工判断:

落地思路

  • 这里省略具体语法,只保留设计层面的职责边界。
  • 读这段时重点看:输入是什么、系统做哪些判断、状态如何变化、失败时如何兜底。

审核标准:

类型处理
色情/赌博/诈骗立即封禁
政治敏感封禁 + 上报
广告营销首次警告

合规建设

律师朋友给了几个建议:

1. 用户协议

### 禁止内容
不得创建指向色情、暴力、赌博、诈骗等内容的短链接。

### 违规处理
平台有权下架违规链接、封禁账号、上报相关部门。

2. 举报机制

落地思路

  • 这里省略具体语法,只保留设计层面的职责边界。
  • 读这段时重点看:输入是什么、系统做哪些判断、状态如何变化、失败时如何兜底。

3. 数据留存

日志至少留存 6 个月,建立 7x24 小时应急响应。


效果

首月数据:

总链接:128,456
自动拦截:3,241 (2.5%)
人工审核:487 (0.38%)
准确率:96.2%
成本:¥7,347/月

再也没接到监管电话了。


新问题

我以为可以放心了,但监控又告警:

创建频率
──────────────────────────────
正常用户:5 次/小时
异常账户 A:1,247 次/小时 ❗
异常账户 B:892 次/小时 ❗
──────────────────────────────

有人用脚本批量创建短链接,消耗资源。

大量 API 调用让成本飙升,攻击者还可能用合法请求掩盖违规内容。

这是资源滥用攻击。

我需要防滥用机制。

但那是下一个故事了。


小结

方案演进

自建规则 → 准确率低
第三方 API → 成本高
混合方案 → 平衡

要点

✅ 多层防护:本地 + 第三方 + 人工

✅ 异步处理:高风险同步,中低风险异步

✅ 降级策略:服务不可用时保守处理

✅ 合规:用户协议、举报、数据留存

✅ 成本:节省 70% API 费用

待解决

⚠️ 资源滥用 ⚠️ 审核绕过 ⚠️ 成本压力

(下一节:防滥用机制)