|
“安全漏洞”翻成英文,安全最常见的漏洞写法是 security vulnerability。但如果你在漏洞报告里只写这一个词,安全可能会被老外工程师追问:你说的漏洞是 vulnerability、exploit,安全还是漏洞 breach?这三个词在英文语境里分工明确,混用会闹笑话。安全 先看 vulnerability。漏洞它指的安全是系统本身存在的弱点,还没被利用。漏洞比如一段代码没做输入校验,安全理论上可以被注入 SQL——这就是漏洞一个 vulnerability。微软每月发补丁,安全修的漏洞是 vulnerability。它像一扇没上锁的安全窗户,窗户本身是问题,但还没人爬进来。 Exploit 不一样。它是利用漏洞的具体方法或工具。同一个 vulnerability,可能有多个 exploit。2017 年 WannaCry 勒索病毒用的 EternalBlue,就是一个 exploit,针对的是 Windows SMB 协议里的 vulnerability。英文里常说 “exploit a vulnerability”,重点在“利用”这个动作。你写报告时说 “we found an exploit”,意思是找到了攻击代码,而不是发现了漏洞本身。 Breach 则是结果。数据已经被偷了、系统已经被入侵了,这才叫 breach。Equifax 2017 年泄露 1.47 亿人信息,那是 breach。Vulnerability 是原因,exploit 是手段,breach 是后果。英文新闻标题经常写 “data breach”,但很少写 “data vulnerability”,因为读者关心的是“已经出事了”,不是“可能出事”。 还有一个词:bug。Bug 是程序错误,但不一定是安全漏洞。一个按钮点不动是 bug,不是 vulnerability。只有这个 bug 能被用来绕过权限、窃取数据、执行代码,它才升级成 security vulnerability。英文技术圈有个粗略说法:all vulnerabilities are bugs, but not all bugs are vulnerabilities。这话糙,理不糙。 漏洞严重程度怎么表达?CVSS 评分里用 critical、high、medium、low。Critical 漏洞通常指远程未授权执行代码,比如 Log4Shell。High 可能是需要认证的权限提升。Medium 和 low 往往需要本地访问或用户交互。你在英文报告里写 “a critical severity vulnerability”,对方立刻知道优先级。写 “a very dangerous bug”,就显得外行。 零日漏洞叫 zero-day。这个词有两层意思:一是漏洞本身没有补丁,二是 exploit 已经出现在野外。英文里常说 “a zero-day exploit” 或 “a zero-day vulnerability”。注意,zero-day 不是“零天就修好”,而是“厂商有零天时间来反应”。这个命名逻辑挺讽刺的。 补丁相关词汇也容易错。Patch 是补丁,动词是 patch。但 “mitigation” 是缓解措施,不是修复。比如你关掉一个服务端口来防止攻击,那是 mitigation,不是 patch。英文漏洞报告里经常分开写:Permanent fix 和 temporary mitigation。别把 mitigation 翻译成“修复”,意思差很远。 再说一个常见混淆:CVE 和 CWE。CVE 是具体漏洞的编号,比如 CVE-2021-44228。CWE 是漏洞类型,比如 CWE-79 是跨站脚本。你写 “we found a CVE”,意思是发现了一个已公开的具体漏洞。你写 “we found a CWE”,意思是发现了一类编码缺陷。英文里没人说 “a CVE vulnerability”,那是重复,CVE 本身就是漏洞编号。 最后提一个口语说法:hole。老外工程师私下会说 “there’s a hole in the authentication flow”,意思就是有个安全漏洞。但正式报告别用 hole,太随意。Security hole 可以出现在博客标题里,不能出现在给客户的 PDF 里。 总结一下实际用法:发现弱点写 vulnerability,写出攻击代码写 exploit,数据丢了写 breach,程序错误写 bug,没补丁写 zero-day,修了写 patch,临时挡一下写 mitigation。这几个词各就各位,英文漏洞报告才读得通。 |