Submit Search
Upload
流行应用的加密算法实现缺陷与利用
•
31 likes
•
1,804 views
P
ph4nt0m
Follow
owasp 2011(asia)
Read less
Read more
Technology
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 43
Recommended
恶意网页分析实战
恶意网页分析实战
Huang Toby
應用密碼學入門 - HITCON CMT 2018
應用密碼學入門 - HITCON CMT 2018
Allen Chou
希望科技研发部变量命名及编码规范
希望科技研发部变量命名及编码规范
Hongjian Wang
學好 node.js 不可不知的事
學好 node.js 不可不知的事
Ben Lue
滲透測試基本技巧與經驗分享
滲透測試基本技巧與經驗分享
WEI CHIEH CHAO
不一樣的Web server... coServ
不一樣的Web server... coServ
Ben Lue
Python 2 - 快速簡介
Python 2 - 快速簡介
Cheyin L
HITCON CTF 2014 BambooFox 解題心得分享
HITCON CTF 2014 BambooFox 解題心得分享
Chong-Kuan Chen
Recommended
恶意网页分析实战
恶意网页分析实战
Huang Toby
應用密碼學入門 - HITCON CMT 2018
應用密碼學入門 - HITCON CMT 2018
Allen Chou
希望科技研发部变量命名及编码规范
希望科技研发部变量命名及编码规范
Hongjian Wang
學好 node.js 不可不知的事
學好 node.js 不可不知的事
Ben Lue
滲透測試基本技巧與經驗分享
滲透測試基本技巧與經驗分享
WEI CHIEH CHAO
不一樣的Web server... coServ
不一樣的Web server... coServ
Ben Lue
Python 2 - 快速簡介
Python 2 - 快速簡介
Cheyin L
HITCON CTF 2014 BambooFox 解題心得分享
HITCON CTF 2014 BambooFox 解題心得分享
Chong-Kuan Chen
Web指纹识别与快速扫描 public
Web指纹识别与快速扫描 public
ph4nt0m
黑客江湖 阿里十周年分享
黑客江湖 阿里十周年分享
ph4nt0m
2013qcon keynote hackingforfun
2013qcon keynote hackingforfun
ph4nt0m
云计算时代的安全格局变化
云计算时代的安全格局变化
ph4nt0m
网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012cert
ph4nt0m
麻烦终结者
麻烦终结者
ph4nt0m
Web应用安全:过去,现在,未来(Public Ver)
Web应用安全:过去,现在,未来(Public Ver)
ph4nt0m
[Crypto Course] Block Cipher Mode
[Crypto Course] Block Cipher Mode
WEI CHIEH CHAO
漫谈编码解码和加密解密
漫谈编码解码和加密解密
Depeng Cong
電腦網路 網路安全
電腦網路 網路安全
bruce761207
網路安全
網路安全
bruce761207
網路安全
網路安全
bruce761207
Internet Security
Internet Security
bruce761207
安博士Asec 2010年3月安全报告
安博士Asec 2010年3月安全报告
ahnlabchina
Java Crash分析(2012-05-10)
Java Crash分析(2012-05-10)
Kris Mok
雲端分散架構的駭客事件與安全問題
雲端分散架構的駭客事件與安全問題
Alan Lee
Io t security-ameba-ppt
Io t security-ameba-ppt
Jou Neo
網站程式資安白箱與黑箱檢測處理經驗分享
網站程式資安白箱與黑箱檢測處理經驗分享
Ying-Chun Cheng
电子杂志(试刊)
电子杂志(试刊)
ProCharm
Talking about exploit writing
Talking about exploit writing
sbha0909
HITCON駭客戰隊與CTF經驗分享
HITCON駭客戰隊與CTF經驗分享
Alan Lee
前端MVVM框架安全
前端MVVM框架安全
Borg Han
More Related Content
Viewers also liked
Web指纹识别与快速扫描 public
Web指纹识别与快速扫描 public
ph4nt0m
黑客江湖 阿里十周年分享
黑客江湖 阿里十周年分享
ph4nt0m
2013qcon keynote hackingforfun
2013qcon keynote hackingforfun
ph4nt0m
云计算时代的安全格局变化
云计算时代的安全格局变化
ph4nt0m
网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012cert
ph4nt0m
麻烦终结者
麻烦终结者
ph4nt0m
Web应用安全:过去,现在,未来(Public Ver)
Web应用安全:过去,现在,未来(Public Ver)
ph4nt0m
Viewers also liked
(7)
Web指纹识别与快速扫描 public
Web指纹识别与快速扫描 public
黑客江湖 阿里十周年分享
黑客江湖 阿里十周年分享
2013qcon keynote hackingforfun
2013qcon keynote hackingforfun
云计算时代的安全格局变化
云计算时代的安全格局变化
网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012cert
麻烦终结者
麻烦终结者
Web应用安全:过去,现在,未来(Public Ver)
Web应用安全:过去,现在,未来(Public Ver)
Similar to 流行应用的加密算法实现缺陷与利用
[Crypto Course] Block Cipher Mode
[Crypto Course] Block Cipher Mode
WEI CHIEH CHAO
漫谈编码解码和加密解密
漫谈编码解码和加密解密
Depeng Cong
電腦網路 網路安全
電腦網路 網路安全
bruce761207
網路安全
網路安全
bruce761207
網路安全
網路安全
bruce761207
Internet Security
Internet Security
bruce761207
安博士Asec 2010年3月安全报告
安博士Asec 2010年3月安全报告
ahnlabchina
Java Crash分析(2012-05-10)
Java Crash分析(2012-05-10)
Kris Mok
雲端分散架構的駭客事件與安全問題
雲端分散架構的駭客事件與安全問題
Alan Lee
Io t security-ameba-ppt
Io t security-ameba-ppt
Jou Neo
網站程式資安白箱與黑箱檢測處理經驗分享
網站程式資安白箱與黑箱檢測處理經驗分享
Ying-Chun Cheng
电子杂志(试刊)
电子杂志(试刊)
ProCharm
Talking about exploit writing
Talking about exploit writing
sbha0909
HITCON駭客戰隊與CTF經驗分享
HITCON駭客戰隊與CTF經驗分享
Alan Lee
前端MVVM框架安全
前端MVVM框架安全
Borg Han
COSCUP 2016 - LLVM 由淺入淺
COSCUP 2016 - LLVM 由淺入淺
宗凡 楊
COSCUP2016 - LLVM框架、由淺入淺
COSCUP2016 - LLVM框架、由淺入淺
hydai
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)
FLASH开发者交流会
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
Shanda innovation institute
6.ctf经验分享
6.ctf经验分享
Hsiao Tim
Similar to 流行应用的加密算法实现缺陷与利用
(20)
[Crypto Course] Block Cipher Mode
[Crypto Course] Block Cipher Mode
漫谈编码解码和加密解密
漫谈编码解码和加密解密
電腦網路 網路安全
電腦網路 網路安全
網路安全
網路安全
網路安全
網路安全
Internet Security
Internet Security
安博士Asec 2010年3月安全报告
安博士Asec 2010年3月安全报告
Java Crash分析(2012-05-10)
Java Crash分析(2012-05-10)
雲端分散架構的駭客事件與安全問題
雲端分散架構的駭客事件與安全問題
Io t security-ameba-ppt
Io t security-ameba-ppt
網站程式資安白箱與黑箱檢測處理經驗分享
網站程式資安白箱與黑箱檢測處理經驗分享
电子杂志(试刊)
电子杂志(试刊)
Talking about exploit writing
Talking about exploit writing
HITCON駭客戰隊與CTF經驗分享
HITCON駭客戰隊與CTF經驗分享
前端MVVM框架安全
前端MVVM框架安全
COSCUP 2016 - LLVM 由淺入淺
COSCUP 2016 - LLVM 由淺入淺
COSCUP2016 - LLVM框架、由淺入淺
COSCUP2016 - LLVM框架、由淺入淺
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
6.ctf经验分享
6.ctf经验分享
流行应用的加密算法实现缺陷与利用
1.
OWASP AppSec
The OWASP Foundation Beijing/Asia 2011 http://www.owasp.org 流行应用的加密算法 实现缺陷与利用 吴翰清 阿里云信息安全中心 axis@ph4nt0m.org Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License.
2.
About Me 2001年创建安全组织幻影 2005年加入阿里巴巴 2008年加入阿里云 微博:t.qq.com/aullik5 Blog:hi.baidu.com/aullik5 Book:《完美防线》
2
3.
当渗透测试遇到… ctk=moVQoAbeoXAtdR3BHGRFVA&chk=50f059614bb2977a9
dda630cd727277a-50067753 ID=5bfb08d687b3dee5:T=1303616991:S=ALNI_MZ46CtBJfBa USGkdUlJmLEyTfwgPQ http://passport.baidu.com/center? auth=ead603c8bb7d4ea68f2812a497aa7f5c40c6eb438b3 da9e1d8b5b3de6a82f30b7a3b 3
4.
密文分析技巧:编码分析 Base64: Hex: ead603c8bb7d4e…… = xeaxd6x04xc8xbbx7dx4e……
4
5.
密文分析技巧:密文长度 Stream cipher: 任意长度 Block
cipher: 5
6.
密文分析技巧:模式分析 ECB-mode: 明文改变1字节,密文只改变1个分组长度 CBC-mode: 明文改变1字节,密文完全改变
6
7.
在开发者眼中 1. 加密算法第三方实现library 2. 性能 3.
安全性 – 特指密钥长度 7
8.
常见错误选择 1.
使用哈希算法代替加密算法 2. 哈希算法不使用salt 3. 使用时间函数代替伪随机数算法 4. 不了解一些密码学攻击,导致使用错误 5. …… 8
9.
加密算法简介 分组加密算法 流密码
9
10.
加密算法基础 IV:初始化向量,一次一密,无须保密 加密模式 :ECB、CBC、CFB、OFB、CTR 分组长度:Blocksize 密钥 :KEY,须保密,有时对长度有要求
10
11.
Ciphertext
only Known Chosen plaintext ciphertext Attack Chosen …… plaintext 11
12.
攻击分组加密算法
12
13.
ECB模式
13
14.
攻击ECB模式
14
15.
CBC模式
15
16.
Padding Oracle Padding:PKCS#5 Oracle:预测 一种类似于“盲注”的 “边信道攻击”
16
17.
攻击流密码
17
18.
流密码
18
19.
Reused Key Attack E(A)
= A xor C E(B) = B xor C E(A) xor E(B) = (A xor C) xor (B xor C) = A xor B xor C xor C = A xor B E(A) xor E(B) = A xor B 19
20.
PHPWind StrCode() for ($i
= 0; $i < $strLen; $i++) { $k = $i % $keyLen; $code .= $string[$i] ^ $key[$k]; } 20
21.
PHPWind验证码生成过程 ck.php,验证码字符集: $list
= 'BCEFGHJKMPQRTVWXY2346789'; "1315107631"."tt".md5("73669"."1315107631") 时间戳 验证码 时间戳 21
22.
获取验证码
22
23.
设置Cookie
23
24.
破解任意验证码密文思路 已知: 明文1 = 时间戳1
+ md5(验证码1 + 时间戳1) A ⊕ 密文1 E(A) ⊕ 密文2 E(B) 求解: ‖ 明文2 = 时间戳2 + md5(验证码2 + 时间戳2) B MD5 Rainbow Table ! 24
25.
Crack It!
25
26.
Bit-flipping Attack E(A) xor
E(B) = A xor B A xor E(A) xor B = E(B) 26
27.
万能钥匙 Global.php: gdconfirm() Common.php: safecheck()
27
28.
构造永久验证码 Bit-flipping Attack: A xor
E(A) xor B = E(B) 构造时间: $timestamp– $cookieData[0] < 0 28
29.
永久验证码
29
30.
Discuz! authcode()
$keyc:IV $ckey_length:IV长度 $keya: 产生加密密钥 $keyb: HMAC的key 验证时间有效性 30
31.
authcode()分析
IV 79uz_d57e_auth=d08fwJQZGV/999z5qNLk5OIofp9dd2 qDkWXVeg1RFQGwKicuAMaih5M5aefx0ycOfLAc2jt ZL/y3J7TpUh2GsAPl; 000000000067c38ee9eca0b04dccccbbbb 时间戳 HMAC 明文 (10bytes) (16bytes) (xx bytes) 31
32.
authcode()算法安全分析 Reused Key Attack:
IV一次一密,导致无法攻击成功 XOR_KEY = fn(IV, KEY) Bit-flipping Attack: HMAC导致无法构造任意密文 HMAC = fn(Plaintext, KEY) 32
33.
authcode() weak IV IV默认长度为4(当前Discuz!版本): 使用穷举法建立IV字典(a-z0-9):
364 = 1,679,616 个IV 当两次加密IV相同时,加密密钥也相同 -- 在WEP破解中,24bit IV在5小时遍历完 33
34.
POC: 已知: 验证:crack($cipher2) == $plaintext2
34
35.
POC:
35
36.
收集密文与IV
36
37.
Birthday Attack 30人中 任意2人生日在特定一天(如11.8号): 1
− (364 / 365)30 ≈ 7.9% 任意2人生日相同: 接近 70% 37
38.
38
39.
攻击authcode()? Reused Key Attack:
IV一次一密,导致无法攻击成功 可以遍历IV,找到相同IV从而攻击成功 例:窃取Cookie后解密密文 Bit-flipping Attack: HMAC导致无法构造任意密文 仍然是安全的 39
40.
其他利用方式? Discuz! Getwebshell: http://www.oldjun.com/blog/index.php/archives/76/ Phpcms cookie注射: http://www.80vul.com/phpcms/phpcms_sys_auth.txt ……
40
41.
Summary & Conclusion
42.
开发建议 不要使用ECB模式 不要使用流密码 使用CBC模式的AES-256,或Blowfish 不要使用相同的KEY做不同的事情 注意IV的随机性 使用HMAC-SHA512代替MD5
42
43.
Thanks!