其他
1为什么单列一类漏洞?一般而言,我们对漏洞有三种传统分类:Web漏洞、二进制漏洞、逻辑漏洞。这样的分类方式是来自于技术类别。Web漏洞就是指在基于Web技术的软件中由于设计或实现不当导致的漏洞,例如我们常见的XSS、SQLi、XXE等,都是Web技术上的漏洞;二进制漏洞是指软件在对内存的管理、使用、解析的过程中由于不当的设计或实现导致的漏洞,例如OOB、UAF等;而逻辑漏洞是指程序逻辑的问题导致的漏洞,一般来说不属于前面两类的漏洞多数情况下都会被理解为是逻辑漏洞。而我们单独提“协议漏洞”这个概念的时候是按业务场景来分类的,其实不止是协议漏洞,在实际中还有很多漏洞都不能按上述的三种类别来准确描述其特点,例如环境变量注入漏洞、各类利用RPC实现提权的漏洞等。就拿RPC提权来说,当你和别人交流时首先介绍这是一个“逻辑漏洞”的话大概率人家会极为疑惑,但是如果你说这是一个“RPC提权漏洞”的话人家就能马上有个大致概念了,也更符合一般的交流习惯。而把“协议漏洞”单列一类基本上有如下的原因:大部分都是协议设计阶段引入的问题,而不是软件实现阶段;大部分存在跨软件、跨操作系统,甚至是跨硬件平台的通杀现象;漏洞利用的目标通常是实现通信劫持,而不是RCE/ACE;“协议漏洞”在漏洞响应处置上和一般软件漏洞不同,因为常常出现跨软件通杀,所以一个漏洞的修复就可能需要协调多个厂商共同完成;另外如果是协议设计上的问题,那么下游软件开发者可能无法拿出一个合理的修复方案,最终需要协议设计者的参与。2来看几个拒绝服务的