阿里巴巴支付宝的一个进程Alipaybsm.exe被怀疑监控网络流量,它会复制发送的数据到接收缓冲中。
在接下来的篇幅中,我要讲一个目前还没结束的故事。故事可能还会继续发展下去,也可能因为我的懒而就此打住。但至少我觉得目前已经有足够有意思的信息可以让诸位知道了。这件事,跟支付宝有关,跟(网络)信息安全也可能有一些关系。有兴趣的朋友,可以接着看下去。
我以前曾写过一个服务器Ping值测试程序(参见这里《写了个批量测试服务器Ping值的小工具》)。这个程序一直都能满足我的需要,直到有一天在我老婆的笔记本Win7 x64系统上遇到了问题:对几乎所有的IP,我这个程序的Ping都很快收到了回应,快得不正常,几乎就像做了个本地调用一样,与实际情况不相符。于是我打算看看这是怎么回事情。
当时我人在公司,VC6远程调试又不方便。最后靠着DbgView终于搞清楚了:接收到的数据中,多出来了一份不正常的东西。我之前的代码,并没有估计到这份不正常的数据可能会出现,所以处理上出了些问题。
OK,这算是我的Bug。可这“不正常的数据”到底是什么东西?我把它Dump出来一看,还真是有点奇怪!ICMP Type是8,源地址和目的地址则与预期的Echo回应包刚好相反。算上sendto时候系统自己加上的IP包的包头,跟我送去发送缓冲区里的数据那是一模一样。
要解决我程序里的这个问题非常简单。但是另一个问题就不那么好回答了:为什么其它电脑上不会这样,偏偏这台电脑会出现这种奇怪的事情?
直接答案很简单——它一定跟别的电脑有什么地方不一样!
那么还有第二个问题:到底是什么地方不一样呢?
可以说是我的幸运,也可以说是阿里集团的不幸。因为我的Taskmgr里面进程列表设置为按ASCII字母序排升序的缘故,我很快就找到了这第二个问题的答案:Alipaybsm.exe。杀掉Alipaybsm.exe这个进程,前面提到的那份“不正常的数据”就不再出现。而这个Alipaybsm.exe似乎由AlipaySecSvc.exe在守护,过了一会儿就又自己启动起来了。它一出现在进程列表中,我一试,哈,那个奇怪的现象就又出现了。
后来,我把这事情在Twitter上说了一下,还引发了一场小小的讨论。
我目前还没完全想明白Alipaybsm.exe这样做的目的是什么。初步感觉,有可能是跟背地里监控网络流量有关。毕竟,目的地址不正确的数据,就算被放入Socket接收缓冲里面,在网络层与传输层之间估计也被滤掉了。我这次是因为用了SOCK_RAW,需要自己下到网络(IP)层来处理数据,才碰巧发现了这个情况。如果只是在传输层(TCP/UDP)从事工作,估计不会有任何察觉。
只不过,反过来讲,如果能做到复制数据到Socket接收缓冲,那应该完全可以做到监控流量而不带任何痕迹才对。所以我目前还只能理解为,Alipaybsm.exe想完全监控网络流量,所以利用了这个手段(复制发送的数据到接收缓冲中),但干这事屁股没擦干净(也可能没法擦干净),才产生了我遇到的这些情况。
我本来以为当时那个Alipaybsm.exe是个假货。但看EXE的详细信息,以及绑定的数字证书,都像是支付宝官方的真货。我又以为那只是一个不成熟的版本,可能有Bug,但我前两天为了转一笔账,又去下载并安装了一个支付宝安全控件,然后它又出现了,带着它那奇怪的行为又出现了。
所以,我们来仔细看看这货吧:
看上去挺正常吧?
在Twitter上讨论的时候,有人表示,在Mac上用防火墙没观察到有这个现象。为此,我今天特意去确认了一下:在Windows上抓包,也观察不到这个现象。我估计,只有自己写基于SOCK_RAW的程序,才能收到这些数据。为了检查这种特殊的行为,我专门写了个小程序AlipaybsmTester,基本上就是一个单地址单次单线程的PingTester。
从这幅截图中可以看到,Microsoft Network Monitor只抓到了一来一回共两个包,但我的测试程序发了一个包收到了两个,内容各不相同。如果杀掉Alipaybsm.exe,那就只会收到后一个包了。
接下来再看看这个Alipaybsm.exe的一些更好玩的事情:
很奇怪的是,它其实并不是随着“支付宝安全控件”(Aliedit.exe)装上去的。当你登录支付宝,根据Web页面上的提示安装了“支付宝安全控件”时,只会在Program Files (x86)\alipay下面建一个名字叫alieditplus的目录。
但是过一会儿(我这次过了30分钟左右),在alieditplus下面会出现一个update目录,并下载一个SafeTransaction_Setup.exe放在其“\job\file\tmp\zip_1009_”子目录中(不同时期不同环境中路径可能会有所不同)。随后Program Files (x86)\alipay\SafeTransaction目录便出现,里面就有Alipaybsm.exe(当然还有一些别的)。
我在网上想搜一下关于这个Alipaybsm.exe或SafeTransaction_Setup.exe的相关信息,发现少得可怜。Alipay官方完全没有提到过这些东西,好像它们是感染了AIDS的私生子一样。不过每个安装了支付宝安全控件的电脑上,估计都会有这些个东西(还有个AlipayDHC也值得注意)。我认为以这种方式进行推广的程序,很可能另有其目的,不见得真的是保障个浏览器安全这么简单。如果真是为了保障浏览器安全,完全可以公开(乃至大张旗鼓地)宣传,然后打包到安装包里一起分发下去正大光明地安装,不是吗?
PS: 我后来发现,杀掉AlipaySecSvc.exe也会导致复制数据包的现象中断,并且重启该服务之后,恢复现象花的时间比单单杀掉Alipaybsm.exe要长。可见Alipaybsm.exe的角色大概只是一个行动的发起者和结果的分析者,具体对流量实施监控的行为,很可能是它去调用AlipaySecSvc.exe中的某些个服务来完成的。这说明对于“支付宝安全控件”本身也不能掉以轻心。相关功能其实可能一直就放在AlipaySecSvc.exe中,只是没有人来扣扳机而已。而这个扣扳机的可以是Alipaybsm.exe,也可以是别的谁,那谁谁谁。
[作者:刘羽]
不容错过
- 三星Galaxy手机输入法曝高危漏洞,攻击者可监控用户摄像头、短信以及安装恶意程序晶颜1232015-06-17
- 物联网设备Telnet口令快速扫描工具scu-igroup2017-03-12
- 漏洞预警:LG手机认证权限绕过漏洞,可远程控制手机(附POC和视频演示)Conermx2015-02-09
- 雅虎10亿账户数据去年就在暗网以30万美金出售,3名土豪已经出手bimeover2016-12-19
0daybank
已有 42 条评论
那个,小王,过来一下,我们现在在上市缄默期,你去联系一下FB,干掉那些文章.
记住啊,要静悄悄的.
对流量安全性检测
@Xarray 是的, 很早就已经知道这个事情了, 最常见的就是你在访问网站的时候, 那些进程会检测你访问的内容,如果发现是钓鱼网站会给你提醒, 阻止你浏览的.
大黑阔去支付宝公司拿一份这玩意的代码出来就真相大白了
10楼内必出支付宝客服解释。
不出今晚我不去酒店开房了。
@必出客服解释 开房撸
其实我只关注你老婆而已。对了,今晚来我家开part好吗?记得带老婆喔
我读书少,你可别骗我…
没有IDA逆向 动态调试 没有poc 不幸福 没有直接证据怎么行呢 人家会把你当标题党的
妹子七夕有人陪吗
我是7楼
我是8楼
我是9楼
360浏览器同样的先写入缓存进程,值得研究下
我会告诉你360不明不白多了一个启动项?,而且在windows 8下才能看见?谁出来解释一下?本人早已关闭所有360启动项,变换目录,锁权限,根据抓包360上传数据的频率特别高。“文件路径:D:\Program Files (x86)\360\360safe\safemon\Fixs123My360safe123.exe ” Fixs123My360safe123.exe 启动文件名字是不定期进行随机变换的,真邪门。 还有腾讯的管家变态到无法禁止启动服务,只能强制性进行,而再次运行之后想要禁止还要用特别方法禁止。
@三六狗 根据国家秘密政策,要求对所有网民进行监控,我们也是没办法啊。
有关服务是:Alipay security service
楼主,分析很有利,其实还有很多有名,软件有这种或者其他的后门或监控什么的
其实,一开始网络本来是挺安全的,正是有了研究安全的这这些人才变得不安全!但这是必然的!看来所谓的安全软件也不一定是“安全”的!不管什么原因,预计在一定时间后,当网络达到一个相对安全的水平,仍不乏会出现一些“自导自演”的安全厂商喽
早对他表示过失望了,还给客服回馈过,没反映,后来学了个办法,在官网下载的安全控件包用7z打开拖出里面一个稍小的安装包,这个才是真正的安全控件,把他安装上就没有安全服务了,缺点是如果你装了各种管家,会提示安全控件有新版本,更新后就会把那一堆东西给弄回来,办法是不更新,闲着没事做时再去官网找安装包来解压提取更新。
今天未访问taobao未打开阿里旺旺,居然从电脑里发送了552MB数据出去。果断删除阿里旺旺!!现在的软件,越来越流氓了!!
@doom95 什么软件,求名字
@无才布衣 卡巴斯基
Mac下每次开机都会提示阿里监控所有网络
楼主 等你看看财付通的插件你就发现这都不算事
不只是支付宝,谁知道那些网银的安全控件附赠了什么彩蛋
砸防患呢,还有手机需要装杀毒软件吗
装过根证书- -
这都不算事儿
有后门?
有后门?
额。。。。。 这个貌似很早就有人说过了吧,右键用7z打开安装包你会发现里面东西多着呢!
还有安卓安装文件,各种垃圾。
要想直接安装控件其实很简单。
解压出来secedit.exe就行了!
看图片
图片弄不上去。。。大家打开瞅瞅吧【v1.freep.cn/3tb_140805204151w9tp512293.png】
突然发现网络也有异常数据!
追查到最后发现是 Alipay payment client security service 这个服务
"C:\Program Files\alipay\aliedit\4.1.0.3161\pcas.exe"
监视真个网络数据! 它是谁 这是搞什么?
国家的秘密就不要露说了吧
现在这些所谓的安全软件越来越流氓了,不论其到底好不好用,就其流氓行为足以引起抵制!要么不用中国的网银,要不把控件装载虚拟机里!
支付宝控件已经更新,看期修改日期是8月21日,应该是有人通知了阿里巴巴淘宝,或者淘宝获知了信息,文件结构与此前稍有差别,其实楼主应该联系红客机构,彻底来个模块反汇编,查它个底朝天,然后发布在国外媒体;
我发现虚拟机NAT总是ICMP reply风暴!我一直以为是vmware该死的bug,看了你的文章,才明白是怎么回事!
https://communities.vmware.com/message/2460837
支付宝插件会强行修改防火墙规则的
除了qq微信不用任何国产软件!都tmd是流氓
买东西我都是单独的一个电脑,现在谁没有2-3个电脑。
愿意偷就偷呗,反正也没啥可偷的。电脑里啥都没有。
sfdsf
亲爱的,不获取流量怎么分析是否正常?这是安全控件好不好?