QQ乐园首页-提供最新QQ技术网以及QQ业务免费开通乐园网!

搜索

攻击会话管理系列-6

2017-9-4 14:06| 发布者: Hide| 查看: 121| 评论: 0

摘要: CBC密码 鉴于ECB密码存在明显的缺陷,于是人们开发出了密码块链(CBC)密码。使用CBC密码时,在加密每个明文分组之前,将它与前一个密文分组进行XOR运算,如图7-5所示。这样,同一个明文分组就不会被加密成同一个密文 ...

 CBC密码
   鉴于ECB密码存在明显的缺陷,于是人们开发出了密码块链(CBC)密码。使用CBC密码时,在加密每个明文分组之前,将它与前一个密文分组进行XOR运算,如图7-5所示。这样,同一个明文分组就不会被加密成同一个密文分组。解密时逆向执行XOR运算,每个解密的分组将与前一个密文分组进行XOR14算,以恢复原始的明文。
2 p E dii 5
2 p e 1.S d e 5 2
9 iⅢ!m 0 5
d 6 r l t 9 m t 4 0
n 5 T,1 M i
  由于使用CBC密码可以避免使用ECB密码造成的某些问题,因此,CBC~经常使用标准对称加密算法,如DES和AESo但是,由于Weh应用程序经常使用CBC加密的令牌,这意味着攻击者不需要了解密钥就可以操纵解密令牌的某些部分。
   使用CBC密码时,在加密每个明文分组之前,将它与前一个密文分组进行XORS算
  下面我们对上一个包含几个不同的有意义组件(包括一个数字用户标识符)的应用程序令牌稍做修改:
    rnd;1914]2758]01j8pp=eBankPrOdTC,uld=216,tlme=6343 303,
    和前面一样,加密这段信息后,将生成一个明显无意义的令牌:
    OF BI FIA FB4C874E695AAFC 9AA4C22 69D3E8E66BEA9 82829 Bl73 F255 D447C 513 21586257C
    6E45 9A93 63563 6F45 D7 BIA4 31632 01477
    由于这个令牌是使用CBC密码加密的,因此,在解密该令牌时,将对每个密文分组与下一个解密的文本块进行XOR运算,以获得明丈。现在,如果攻击者修改密文(他收到的令牌)的某些部分,将导致特定的分组被解密成乱码。但是,这也导致下一个解密的文本块将与不同的值进行XORi!算,从而生成经过修改但仍有意义的明文。换言之,通过操纵令牌中的某个分组,攻击者能够修改它之后的分组的解密内容。如果应用程序以危险的方式处理生成的解密令牌,攻击者将能够切换到其他用户或提升自己的权限。
  为什么会出现这种情况呢?在上述示例中,攻击者对加密的令牌进行修改,每次以任意方式更改一个字符,并将修改后的令牌发送给应用程序。在这个过程中,攻击者会提出大量请求。
  在每一个值中,如我们预料的那样,攻击者修改的分组被解密成乱码(以????????表示)。
但是,之后的分组被解密成有意义的文本,只是与原始令牌略有不同。如前所述,出现这种不
同,是囡为解密的文本与前一个密文分组进行了XOR运算,而攻击者已对该密文分组进行了略
微修改。
  虽然攻击者看不到解密的值,但应用程序会尝试处理这些值,随后攻击者会在应用程序的响应中看到处理结果。具体来说,接下来会出现什么情况,取决于应用程序如何处理经过修改的解密令牌。如果应用程序拒绝包含任何无效数据的令牌,攻击将会失败。但是,以这种方式使用令
牌的应用程序通常仅查看解密令牌的某些部分,如用户标识符。如果应用程序这样处理令牌,那么,上面列表中的第八AI分组将能够成功实施攻击,应用程序将处理攻击者提出的请求,并认为用户的uld为226,而不是最初的216。
  使用Burp Jntruder中的“位翻转程序”(bit flipper)有效载荷类型,可以轻松测试出应用程序是否存在这方面的漏洞。首先,需要使用你自己的账户登录应用程序。然后,找到一个使用已登录会话并在响应中显示已登录用户标识符的应用程序页面,通常是用户的4主登录”页或“账户详细资料”页。

http://www.qqhello.net/
普及network security意识 
不要对network security一无所知


鲜花

握手

雷人

路过

鸡蛋
返回顶部