图2-2-1 创建线程执行update模块
图2-2-2 调用Sleep函数以定期执行update模块
进行更新检查时,update模块首先获取程序当前的版本号,之后通过博客地址“http://blog.sina.com.cn/s/blog_16fb721c50102x6hw.html”获得加密后的C&C的ip地址。将加密后的ip地址去除首尾的分隔符(***和@@@),经过base64解密并与0x36异或之后得到真实的ip地址(在本样本中,C&C ip地址为67.229.144.218,以下简称为“ip”)。
http://ip:8888/ver.txt中存放最新的Bot程序版本号,update模块读取该版本号并与当前Bot程序的版本号进行对比。当两者相同时,则认为程序已经更新到最新版本,继续执行后续功能;当两者不同时,则对程序进行更新。
图2-2-4 对比Bot程序版本和最新版本号