OpenAI 阻断了一个位于柬埔寨的诈骗团伙。该团伙使用 ChatGPT 辅助投资诈骗、网络恋爱诈骗、赌博推广和身份冒充。这起事件说明,生成式 AI 不一定创造新的犯罪模式,但能降低批量撰写话术、切换身份和持续运营受害者关系的成本。
对平台、安全团队和应用开发者来说,问题不只是“某段文字是否由 AI 生成”,而是如何从账户、内容、链接、资金诱导和操作节奏中识别一条完整的诈骗链。
AI 放大的不是某一句话,而是运营能力
传统诈骗需要人工编写开场白、维护角色设定,并针对不同语言和受害者调整回复。生成式 AI 可以协助完成这些重复工作,使同一套流程覆盖更多对象。
四类场景虽然包装不同,却经常共享相似的行为结构:
- 投资诈骗:建立信任后,引导用户进入所谓的交易平台、导师群或私下转账渠道。
- 网络恋爱诈骗:长期维护亲密关系,再以投资机会、紧急支出或共同未来为理由索取资金。
- 赌博骗局:宣传高胜率、内部消息或充值返利,并将用户导向站外网站。
- 身份冒充:伪装成名人、企业员工、客服或熟人,借助权威感推动转账或信息泄露。
因此,仅检测“语言像不像机器生成”通常不够。真正值得关注的是多个信号是否同时出现,例如新账户高频联系陌生人、快速转移到站外通信、重复发送相似脚本、承诺异常收益,以及要求使用加密货币或其他难以追回的支付方式。
把检测目标从文本改成行为链
安全系统可以把一次会话拆成多个阶段:接触、建立信任、制造权威或亲密感、提出收益承诺、引导站外操作、要求付款。单个阶段可能完全正常,但多个阶段在短时间内连续出现,风险会明显上升。
可以将信号分成三层:
| 层级 | 可观察信号 | 适合的处置 |
|---|---|---|
| 内容 | 保证收益、索要验证码、催促保密、冒充客服 | 警告、降低传播、进入复核队列 |
| 行为 | 批量私信、脚本高度重复、频繁切换身份 | 限速、追加验证、冻结高风险功能 |
| 关联 | 多账户共享链接、设备、收款目标或模板 | 聚类调查、扩大阻断范围、保全证据 |
这种分层能够减少对单一关键词的依赖。例如,“投资”本身并不代表诈骗;但“保证收益”“转入私人钱包”“不要告诉银行”与批量私信同时出现时,就应触发更严格的检查。
可以这样实践:构建一个本地会话分诊器
下面是一个不依赖外部服务的最小 Python 示例。它不判断用户是否犯罪,只根据可解释规则给会话打分,适合改造成审核队列的前置过滤器。
将代码保存为 triage.py,直接运行 python triage.py。生产环境中应把规则替换为经过验证的多语言词表,并结合账户行为、链接信誉和人工复核。
import re
from dataclasses import dataclass
@dataclass
class Signal:
name: str
pattern: str
weight: int
SIGNALS = [
Signal("guaranteed_return", r"保证收益|稳赚|guaranteed returns?", 3),
Signal("off_platform", r"加我(?:微信|WhatsApp|Telegram)|contact me on", 2),
Signal("secret", r"不要告诉(?:银行|家人|任何人)|keep this secret", 3),
Signal("urgent_payment", r"立即(?:转账|充值)|pay (?:now|immediately)", 3),
Signal("crypto_payment", r"USDT|加密货币|crypto wallet", 2),
Signal("impersonation", r"我是.*(?:客服|经理|警察)|official support agent", 2),
]
def triage(text: str) -> dict:
matches = []
score = 0
for signal in SIGNALS:
if re.search(signal.pattern, text, flags=re.IGNORECASE):
matches.append(signal.name)
score += signal.weight
if score >= 7:
action = "hold_for_human_review"
elif score >= 4:
action = "warn_and_limit"
else:
action = "allow_with_logging"
return {"score": score, "signals": matches, "action": action}
if __name__ == "__main__":
sample = "我是官方客服,这个项目保证收益。请立即购买 USDT,不要告诉银行。"
print(triage(sample))
预期输出类似:
{'score': 11, 'signals': ['guaranteed_return', 'secret', 'urgent_payment', 'crypto_payment', 'impersonation'], 'action': 'hold_for_human_review'}
接入真实系统时,不要让分数直接等同于封禁决定。更稳妥的流程是:规则或模型生成风险信号,策略引擎结合账户历史决定限制措施,高风险案件由人工审核,并为误判提供申诉渠道。
阻断之后,还要处理关联基础设施
停用一个账号只能中断一个入口。诈骗运营往往还涉及多个账号、重复话术、站外链接和收款目标。调查系统需要保存必要证据,并在合规范围内建立关联视图。
一个可执行的响应清单包括:
- 暂停高风险账号发送私信、创建链接或接触新用户的能力。
- 对相同域名、电话号码、钱包地址、设备和话术模板进行关联检索。
- 向已接触的潜在受害者发送具体警告,明确提示不要付款或泄露验证码。
- 保存时间线、命中信号和处置依据,方便人工调查与后续审计。
- 根据适用法律、平台政策和证据要求,与相关机构开展协作。
采用时要守住两条边界
第一,不要把 AI 生成检测当作诈骗检测。合法客服、翻译和营销内容同样可能由模型生成,而诈骗者也可以手工改写文本。系统应优先判断欺骗目的、资金诱导和协同行为。
第二,不要让自动化处置失去比例原则。关键词误判可能影响正常的金融讨论、跨境沟通或安全研究。上线前应测量不同语言和用户群体的误报率,并采用逐级措施:先提醒和限速,再人工复核,只有证据充分时才执行长期封禁。
这类事件带来的工程结论很直接:生成式 AI 让诈骗话术更容易规模化,防守方也必须从孤立文本审核升级为内容、行为和关联网络的联合分析。