漏洞名称大全
2021年冬天,漏洞Log4j2那个漏洞爆出来的大全时候,我正蹲在客户机房调防火墙策略。漏洞手机震了一路,大全安全群里刷了几百条消息,漏洞翻来覆去就一个词:JNDI注入。大全当时那个漏洞连正式名字都还没定,漏洞有人叫它Log4Shell,大全有人直接喊CVE-2021-44228。漏洞后来大家统一了口径,大全但最初那十几个小时里,漏洞连个准确叫法都没有,大全排查全靠手动翻日志。漏洞 漏洞的大全名字,很多时候就是漏洞这么混乱。厂商给一套编号,社区另起一个诨名,媒体报道时再翻译一遍,最后落到运维手里,可能就剩一个模糊的印象——“好像是那个反序列化的洞”。 拿最常见的一类来说,SQL注入。名字直白,连非技术人员都能猜出大概意思。但同样是注入,命令注入、LDAP注入、XPath注入,外行看起来差不多,利用方式和危害等级差得远。我见过一个内部系统,开发觉得用了参数化查询就万事大吉,结果拼接表名的地方没做白名单,照样被注。漏洞名字一样,实际成因完全不同。 跨站脚本,XSS,这个缩写几乎每个做Web的都知道。但细分下去有存储型、反射型、DOM型。存储型最要命,payload直接落库,每个访问页面的用户都中招。反射型相对好判断,看URL里有没有可疑参数就行。DOM型最阴,服务端日志里干干净净,因为整个触发过程都在浏览器里完成。有一回帮朋友看一个钓鱼页面,服务端查了半天没异常,最后发现是前端JS里一段eval把location.hash的内容直接执行了。名字都叫XSS,排查思路天差地别。 再说缓冲区溢出。这名字老派,听着像上世纪的产物。但2014年OpenSSL的Heartbleed,本质就是心跳扩展没做边界检查,读到了相邻内存。名字起得漂亮,出血点,形象。可你把这个名字丢给一个刚入行的程序员,他未必能立刻反应过来是内存读取越界。CVE编号是CVE-2014-0160,记住了编号,去查公告,才知道具体是哪个函数哪一行。 权限提升类的漏洞命名更有意思。本地提权叫LPE,远程提权叫RCE,但RCE严格说不是提权,是代码执行。社区里经常混着用。脏牛,Dirty COW,CVE-2016-5195,Linux内核条件竞争导致的写时复制问题。名字起得跟农场似的,但影响范围从Android到主流发行版全中。当时我们一批老服务器,内核版本卡在2.6.32,补丁打不上,只能上Livepatch。那段时间每次重启机器都提心吊胆。 还有一类名字来自漏洞发现者的习惯。比如“永恒之蓝”,Equation Group泄露出来的工具,MS17-010。名字好听,传播力强,WannaCry一出来,连街道办都在问这个“蓝色”是什么。可你去看微软的公告,标题是“SMBv1远程代码执行漏洞”。哪个名字更准确?公告更准确。哪个名字更容易被记住?永恒之蓝。传播效率和准确性,有时候就是矛盾的。 供应链漏洞这几年名字越来越长。Log4Shell之后,Spring4Shell、Text4Shell,一个接一个。命名逻辑基本是“组件名+Shell”,简单粗暴。好处是一看就知道影响哪个组件,坏处是容易混淆。去年有个客户问我Spring4Shell是不是就是Spring框架的Log4j问题,我解释了半天才说清是两个独立的洞。 漏洞名称这东西,说到底就是个标签。标签贴得准,沟通成本低;贴得不准,排查时多绕几圈。真正干活的时候,CVE编号、影响版本、利用条件、补丁链接,这四个信息比名字重要得多。名字只是入口,不是终点。 下次再看到一个新漏洞名字,别急着转发。先翻到公告原文,看看受影响的具体组件和版本,再决定要不要半夜爬起来打补丁。
- 随机阅读
- 搜索
-
- 友情链接
-