安全CVE知识库学习
针对加解密相关的攻击
-
CVE-2019-3730(padding oracle attack vulnerability):根本原因,cbc块加密的IV是透明的,攻击者可以对其进行bitwise manipulate,而加解密服务又没有认证。客户端送什么就给什么,所以可以perbit操纵IV,从而获得解密的结果。简单来说就是在不清楚 key 和 IV 的前提下解密任意给定的密文。
-
CVE-2014-3566(poodle攻击):
-
CVE-2022-21449
-
这个漏洞涉及到ecdsa的流程,在ecdsa验证签名的流程当中第一步验证要求
验证r和s在[1,n-1]之间,如果不在,则签名无效
但是java的实现人员没有理这个问题,这就导致攻击者直接输入(0,0)即可完成校验,所以就相当于校验形同虚设了。嘿嘿,其他的库比方说openssl,borring ssl都没有这个问题
-
针对协议本身的攻击
- BEASET攻击:同样是CBC,类似padding pracle attack,session位置固定就可以一位一位猜测出来。利用的是TLS1.0的IV不加密为明文,且HTTP协议的报文为固定格式,对应的位置是特定的内容,从而直接爆破出来session
- 弱hash算法(CVE-2004-2761):这个是hash算力不足导致碰撞得到的结果
- CVE-2015-4458:重协商不安全导致可以直接降级到不安全的版本上
针对实现错误的攻击
- CVE-2014-0160(心脏滴血):根本原因为:拷贝边界/信息校验没做到位,触发条件为:使用了openssl协议栈,且有其他的连接,这时候用非法连接接入可能会窃听到隐私信息
- CVE-2018-15473:openssh的问题,存在的用户名校验流程和不存在的用户名校验流程的步骤可区分导致的信息泄漏
针对网络安全本身的攻击
- CVE-2021-44228(log4shell):
结尾
唉,尴尬