TA的每日心情 | 奋斗 昨天 10:29 |
---|
签到天数: 2394 天 [LV.Master]伴坛终老
|
转载请注明出处:http://hi.baidu.com/biweilun
: {) `* w$ l: ?" }我现在对百度的新聊天工具进行了稍微深入的分析,再下一步的分析工作就是在汇编调试里面展开的了。先说下我发现的可能威胁:
% _/ m+ C! P) I) r1、Swf文件跨站漏洞
0 {4 ^6 @, N# }5 D6 K在Baidu Hi 的安装文件夹里的MovieData文件夹里面有3个swf文件,分别是loginCarton.swf,videoConnectingBig.swf和videoConnectingSmall.swf。其中,loginCarton.swf的可能别利用漏洞最大,这点上百度不如腾讯,没有做好swf文件的内嵌工作,让swf文件暴露在外面。病毒可以感染并放入恶意的swf文件来覆盖他们。loginCarton.swf是baiduhi的启动画面,这是非常危险的,因为swf木马在网上非常流行。还有,病毒要获取这个目录非常简单,只要以system来读取注册表就好,路径会保存在注册表的[HKEY_LOCAL_MACHINE\SOFTWARE\3D SoftWare]下的"path"键值里面,如果修改注册表,人为改变该键值,可能引发更大的危机!; S! O J( u) t: \3 `
V5 b( f1 s$ h2、自动升级漏洞: e" |- s7 H( a% [8 W" x
该漏洞目前没有测试,不过应该将来会盛行的。因为目前大家的Baidu HI都是最新版,不需要升级。将来如果需要升级的时候,这个漏洞就很危险了。Baidu Hi 的升级文件在AutoUpdate文件夹里面,1 T, U/ K. P- W' z) l4 t. F
# t9 a- R$ {% r/ M8 ^
5 [4 E2 u0 O9 W# [8 @, PBaiduHiUpdate.exe文件通过调用config.ini文件来升级,我们来看config.ini文件的代码:- T0 t- ?0 F* s5 x: r) D
[AutoUpdate]' V1 V4 k) {2 \& u* k. j
ConfigFileUrl=http://update.im.baidu.com/AutoUpdate/AutoUpdate.xml
' v2 m( ^6 r8 r- N" v. k# eIsAutoUpdate=1- B4 z7 t) D0 S0 K
ConfigFileKey1=3F26F386EB827C141DF8FE539B7ECDF42 x" V* k i0 n1 p
ConfigFileKey2=128509257100000000
; @' `, I; c' G0 O0 Z0 j! ?LSTm_AutoUpdate=1206596754
z- J! J. Y% z看来使用的是下载http://update.im.baidu.com/AutoUpdate/AutoUpdate.xml这个文件,我下载下来打开一看,这个文件和AutoUpdate文件夹里面的那个AutoUpdate.xml文件内容相同。代码都是如下的: f. O* b. B. U; B7 N, D
<AutoUpdate version="1.0">/ h; l5 m9 x; M3 k$ r& Q# E' W
<Updater version="1.0.0.8" url="http://update.im.baidu.com/AutoUpdate/updater48-49.cab" md5="8312201dc14e0ff595680f6bcf4d0fb1" hint="update 49">/ X( Y/ @1 o1 v4 M F( X8 ?
<File name="atl71.dll" dest="updater:\" type="bin" operation="add" /> 4 k+ h/ v2 n* j' A ~
<File name="AutoInstall.exe" dest="updater:\" type="bin" operation="add" /> $ s8 ?2 F" @5 K" |# D" ]
<File name="AutoUpdateUtil.dll" dest="updater:\" type="bin" operation="add" />
9 m: Z+ g' p( `6 L<File name="BaiduHiUpdate.exe" dest="updater:\" type="bin" operation="add" /> 7 Z* \8 Z) J6 U) e3 E; V( `
<File name="Basement.dll" dest="updater:\" type="bin" operation="add" /> 9 Y [) H* \9 t, h* c
<File name="config.ini" dest="updater:\" type="resource" operation="add" />
$ c/ J; }$ b1 A+ `' X<File name="msvcp71.dll" dest="updater:\" type="bin" operation="add" /> : _) F2 Z8 c( Q; p1 h: d- v Q
<File name="msvcr71.dll" dest="updater:\" type="bin" operation="add" /> $ `- e3 Z6 P0 W6 j# u3 `' H) Z& q
<File name="resource.db" dest="updater:\" type="resource" operation="add" /> 7 v/ H$ y1 r F9 U9 S, K) w- |
<File name="VersionInfo.xml" dest="updater:\" type="resource" operation="add" /> 0 L7 K% }8 I% S% K4 ^
</Updater>
% B& W! V( s* g- T: n& D+ k<Module name="BaiduHi" version="1.0.1.0" level="forcePrompt">5 O6 k ~6 e' k' i
<Upgrade versi hint="update 49" md5="f684d6220bb2771433410e482287cc58" url="http://update.im.baidu.com/AutoUpdate/upgrade48-49.cab">
& @& G! p' q+ `; |# d' p3 @ i% Z- g7 h<File name="AppUtil.dll" dest="BaiduHi:\" type="bin" operation="add" /> , m q( ~5 Y' O) w
<File name="BaiduHi.exe" dest="BaiduHi:\" type="bin" operation="add" /> 8 Y' `2 Q4 W4 L {2 Y
<File name="Basement.dll" dest="BaiduHi:\" type="bin" operation="add" />
9 d% h! }4 o M, A<File name="BugReport.exe" dest="BaiduHi:\" type="bin" operation="add" />
* A4 B- e/ a5 w. a& [<File name="CSTransfer.dll" dest="BaiduHi:\" type="bin" operation="add" /> 2 ~) Z/ ]7 x; E3 _3 O
<File name="HistoryExplorer.dll" dest="BaiduHi:\" type="bin" operation="add" /> $ Y0 v2 X6 h( J5 u* i
<File name="ImEngine.dll" dest="BaiduHi:\" type="bin" operation="add" /> & l4 f5 e% u0 r# c! M
<File name="ImStorage.dll" dest="BaiduHi:\" type="bin" operation="add" />
* ^, A+ Y0 }5 v; Q1 s, u6 o1 g3 r<File name="LocalLog.dll" dest="BaiduHi:\" type="bin" operation="add" /> & I. m) ^' V7 C2 b$ E4 @2 C1 U4 w
<File name="NetService.dll" dest="BaiduHi:\" type="bin" operation="add" /> 6 o! \1 j# V6 B3 Y
<File name="RUDPLib.dll" dest="BaiduHi:\" type="bin" operation="add" />
6 ?+ T$ H2 M' A/ d( g! u$ Z6 L: {<File name="SkinDLL.dll" dest="BaiduHi:\" type="bin" operation="add" />
$ {7 u" y: y8 K) s. H% }; R, m5 P7 h<File name="UPnPDll.dll" dest="BaiduHi:\" type="bin" operation="add" /> ' _# i7 F) |6 W r. A* H; ~: Q
<File name="VersionInfo" dest="BaiduHi:\" type="resource" operation="add" />
* o7 |1 A9 n+ o8 s<File name="fmmgr.dll" dest="BaiduHi:\" type="bin" operation="add" />
+ q) U9 L$ }* {' m Q8 S- A<File name="imcs.dll" dest="BaiduHi:\" type="bin" operation="add" /> 6 S+ k! d; l% ?8 F
<File name="uninst.exe" dest="BaiduHi:\" type="bin" operation="add" />
) Q3 O. h7 k; ?7 W# ]/ k- r" Q</Upgrade>
; ~! A o& t! B3 p6 Z: `<FullPackage hint="update 49" md5="3af7588de47c7fdcb9ca5421de4c444c" url="http://update.im.baidu.com/AutoUpdate/fullpackage48-49.cab">$ x6 x! L7 X H& x# V4 G
<File name="AppUtil.dll" dest="BaiduHi:\" type="bin" operation="add" /> 5 A) t+ f8 t% n% K& s) }0 I
<File name="BaiduHi.exe" dest="BaiduHi:\" type="bin" operation="add" /> / Q6 h" _, F5 t# n I: G& K( Y
<File name="Basement.dll" dest="BaiduHi:\" type="bin" operation="add" />
8 F1 ]5 @$ v, J" E<File name="BugReport.exe" dest="BaiduHi:\" type="bin" operation="add" />
, @8 [/ G7 l8 O* U# ~' y* {- S<File name="CSTransfer.dll" dest="BaiduHi:\" type="bin" operation="add" /> / E3 x ?- b- X! I8 ^5 Y
<File name="HistoryExplorer.dll" dest="BaiduHi:\" type="bin" operation="add" /> 9 i; X7 H! [# K7 A% \9 T
<File name="ImEngine.dll" dest="BaiduHi:\" type="bin" operation="add" />
6 w) \9 Z0 X! t3 q% s<File name="ImStorage.dll" dest="BaiduHi:\" type="bin" operation="add" /> , y, S' i8 x/ |" Z4 \
<File name="LocalLog.dll" dest="BaiduHi:\" type="bin" operation="add" />
+ j9 Q7 u* c; }/ S5 H& O* R0 v) F5 J<File name="MovieData\loginCarton.swf" dest="BaiduHi:\MovieData\" type="resource" operation="add" /> 7 t7 f% F. M1 N% k4 C1 J0 a. p
<File name="MovieData\videoConnectingBig.swf" dest="BaiduHi:\MovieData\" type="resource" operation="add" /> ' W/ n0 L1 p$ x5 y! }) z9 y+ c' m |
<File name="MovieData\videoConnectingSmall.swf" dest="BaiduHi:\MovieData\" type="resource" operation="add" /> 3 X U" b, a2 }0 {0 e p& v; }) a
<File name="NetService.dll" dest="BaiduHi:\" type="bin" operation="add" /> + |8 @) Y% z @& `
<File name="RUDPLib.dll" dest="BaiduHi:\" type="bin" operation="add" />
, G- x" a3 T" O<File name="ServerConfig.dat" dest="BaiduHi:\" type="resource" operation="add" />
. E& f& O& c% V* o8 L* J1 |3 I<File name="SkinDLL.dll" dest="BaiduHi:\" type="bin" operation="add" />
t J+ z" ?. ~( f/ U% H) c; J J<File name="SysCustomStatus.xml" dest="BaiduHi:\" type="resource" operation="add" /> + ?7 K: o8 w2 R7 Q6 U2 B/ G5 w
<File name="UPnPDll.dll" dest="BaiduHi:\" type="bin" operation="add" />
3 O4 V9 ^8 H9 h4 x/ n6 P5 I<File name="VersionInfo" dest="BaiduHi:\" type="resource" operation="add" /> ( X9 O. P$ |4 f: J- `5 s7 b; A5 b
<File name="atl71.dll" dest="BaiduHi:\" type="bin" operation="add" />
5 q) T: U" @6 @, F<File name="dbghelp.dll" dest="BaiduHi:\" type="bin" operation="add" />
( _/ q) v) Q1 w; n- m<File name="fmmgr.dll" dest="BaiduHi:\" type="bin" operation="add" />
6 z2 S& w9 x- ]9 l, w) O3 M5 E<File name="imcs.dll" dest="BaiduHi:\" type="bin" operation="add" /> 0 g, t; d! ^! z% Q" l6 x
<File name="licence.txt" dest="BaiduHi:\" type="resource" operation="add" />
2 v: s" ?0 L& L. R+ `) M8 |<File name="mediactrl.dll" dest="BaiduHi:\" type="bin" operation="add" /> 3 E, U" r2 k% G3 C& W% K$ V
<File name="msvcp71.dll" dest="BaiduHi:\" type="bin" operation="add" />
j6 c9 R y' x2 t$ ` e) H<File name="msvcr71.dll" dest="BaiduHi:\" type="bin" operation="add" />
% D+ ^' l2 [; E<File name="resource.db" dest="BaiduHi:\" type="resource" operation="add" /> * [' @; f h' X) s$ K- F
<File name="riched20.dll" dest="BaiduHi:\" type="bin" operation="add" />
! m9 E B( f3 s: }<File name="skin\default.db" dest="BaiduHi:\skin\" type="resource" operation="add" /> ( V5 c& L0 S5 G" Y5 k5 [5 o
<File name="skin\rose.db" dest="BaiduHi:\skin\" type="resource" operation="add" />
% A' F7 b! a5 p4 z- H) \& j<File name="sound\msg.wav" dest="BaiduHi:\sound\" type="resource" operation="add" />
# z3 j$ e' A% ~+ r8 }9 s5 _* _) V" o Q<File name="sound\online.wav" dest="BaiduHi:\sound\" type="resource" operation="add" /> ; Y; c- ^9 p* C, b4 P
<File name="sound\phone.wav" dest="BaiduHi:\sound\" type="resource" operation="add" /> + A3 i6 l0 _* g0 A3 P0 S! u( S. V- H9 ~
<File name="sound\snapshot.wav" dest="BaiduHi:\sound\" type="resource" operation="add" /> 2 p! d. U o. Y: k$ v& G; o
<File name="sound\system.wav" dest="BaiduHi:\sound\" type="resource" operation="add" /> - h4 y. w1 r% \9 S }" M
<File name="sysimage\FaceError.gif" dest="BaiduHi:\sysimage\" type="resource" operation="add" />
/ @* W* A, s. b% W3 D9 G<File name="sysimage\FaceLoading.gif" dest="BaiduHi:\sysimage\" type="resource" operation="add" />
! }5 n: m8 S" W<File name="sysimage\ImageError.gif" dest="BaiduHi:\sysimage\" type="resource" operation="add" />
6 `/ p8 Q6 {5 ]. y<File name="sysimage\ImageLoading.gif" dest="BaiduHi:\sysimage\" type="resource" operation="add" /> 7 i1 p$ @3 W' j. v
<File name="uninst.exe" dest="BaiduHi:\" type="bin" operation="add" />
6 r7 J4 l+ l8 X9 ~' p. {+ h6 N" ]$ U<File name="zlib1.dll" dest="BaiduHi:\" type="bin" operation="add" />
5 a6 I& \* O4 N+ o; p</FullPackage>
- D: F; p7 H4 P( B' X</Module>
, B* @" K6 w- R1 h4 L</AutoUpdate>
1 ^& ?0 H, @0 n7 m, c7 \" v# u, E通过AutoUpdate.xml文件来下载http://update.im.baidu.com/AutoUpdate/updater48-49.cab ,我们可以通过构造恶意的config.ini,然后让程序下载我们构造的恶意AutoUpdate.xml,再让程序通过AutoUpdate.xml下载恶意构造好的cab安装包,释放。还是危害挺大的!
. P$ n0 v* q' t9 e7 N最后忠告大家,不要下载除官方以外任何地方的Baidu Hi !否则后够可能很严重,这次我发现的这两个漏洞的利用说容易也容易,说不容易也不容易,本人如上所说只是一点肤浅之见,没什么技术含量,只是觉得软件搞这么明文不好。提醒大家小心一点而已,没有别的意图,更没有哗众取宠的意思。 |
|