“密写”技术在很多侦探小说和谍战电影中经常会出现。间谍用密写药水把情报写在白纸上,收到情报的上级再通过显影技术把情报还原出来。
最近,戴尔SecurityWorks的安全研究人员Brett Stone-Gross发表了一个报告,发现了一个新型恶意软件“潜伏”,这个恶意软件的最大特点就是,把恶意代码通过隐藏在BMP图片的像素中以躲避杀毒软件。
最近的银行木马 KINS 利用了一部分泄漏的 Zeus 木马源代码, 已经在尝试“密写”技术。然而,KINS 的“密写”技术还比较原始。只是把数据(配置文件或者命令)附加在图片文件的尾部。这种技术对于现在的入侵防护系统( IPS )或者入侵检测系统( IDS )来说,相对比较容易检测到。而”潜伏“则是通过一种算法,把加密后的 URL嵌入图片的像素中。这样对于目前的IPS或者IDS来说将无法检测出来。
“潜伏”主要任务是一个下载器,用来下载后续的恶意代码,用来搭建一个进行点击欺诈的僵尸网络。“潜伏“的 DLL 资源区域带有一个 BMP 位图。而“潜伏”把 恶意代码 的URL放在了每个像素的颜色字节的最低位上。这样的话,从整个位图来看,只是会有一些噪点,而杀毒软件或者是以特征值为基础的 IPS/IDS 则很难检测出来。
此外,“潜伏”还会对系统的安全防护系统进行检查,检查系统是否安装有 52 中杀毒软件。如果检测到其中的 21 种软件,则“潜伏”不会去安装下载的恶意代码。如果不是的话,“潜伏”会把杀毒软件的信息传回给命令与控制服务器。
“潜伏”的发现是安全领域“道高一尺,魔高一丈”的又一个例子。前一段臭名昭著的赎金木马Cryptolocker中采用了AES算法,以及僵尸网络利用P2P技术进行去中心化,都说明,恶意软件和僵尸网络背后的网络犯罪分子在尽一切努力对恶意代码进行隐藏,或者对僵尸网络进行强化。而“密写”技术则是最近恶意软件的新动向, 值得从事恶意软件分析的人们多加关注。
关于隐写术
http://baike.baidu.com/view/553273.htm?fr=aladdin
如果您想更加深入的研究隐写术,您可以参考《数据隐藏技术揭秘》一书。
Brett Stone-Gross的分析报告
http://www.secureworks.com/cyber-threat-intelligence/threats/malware-analysis-of-the-lurk-downloader/
注:第一张图中隐藏了key,你发现了吗?(来自西电第五届全国网络安全大赛)