现今由于易语言的出现,中文编程的门槛越来越低,虽然很多人对此不屑一顾,但不得不说,这门语言的出现,大大降低了黑产行业的门槛。90%以上的游戏辅助和各类抢购软件都出自易语言开发,大量恶意程序也出自易语言之手。
0×01
前言
现今由于易语言的出现,中文编程的门槛越来越低,虽然很多人对此不屑一顾,但不得不说,这门语言的出现,大大降低了黑产行业的门槛。易语言编写简单,入门快,再加上各种易模块,使得简单几行代码就能实现一些强大的功能。据不完全统计,90%以上的游戏辅助和各类抢购软件都出自易语言开发,大量恶意程序也出自易语言之手。早在2011年亚洲反病毒大会上,微软工程师JIM就针对易语言程序的逆向进行了演讲,使得易语言程序的分析变得简单。笔者搜集了部分相关资料,通过对易语言程序结构的学习,分析了一款刷流量的恶意软件。
0×02
运行效果
该程序伪装为IE图标,运行后窗口被隐藏起来,通过PCHunter把程序窗口隐藏属性去掉,效果如下图。
0×03
基本流程
该程序的窗口在启动时被隐藏起来,通过定时器访问C&C地址,跳转到各类推广连接中。部分推广连接中包含有添加QQ群、下载文件和一些弹出窗口,该程序通过枚举窗口检查后,通过模拟点击关闭这些窗口。
0×04
详细分析
该程序是易语言程序,通过分析易语言程序的结构得知,包含一个窗口、4个定时器、3个浏览器控件、一个选择框和一个编辑框。易语言窗口程序只需要分析它控件回调即可。
1.
窗口初始化功能
该程序获取系统中的所有进程。
检查进程列表中是否有包含“qq”字符串的应用程序。
结束掉所有QQ进程。
InlineHook
“waveOutWrite”、”midiStreamOut”、”DirectSoundCreate”、”InternetReadFile”这4个函数,让程序保持静音。
开启4个定时器,第一个定时器为5秒执行一次,后面3个定时器是随机时间
设置随机数种子,并取随机数
设置3个定时器随机时间间隔。
2.
定时器1
使用易语言
超文本浏览框.跳转
对3个浏览器控件访问下面的URL,这些URL会随机访问各类推广网站,比如赌博、黄色、游戏推广、营销推广连接等。
”
http://www.sunshoo.com/10001.html
“
”
http://www.0571jihao.com/reyu.html
“
”
http://www.bangyuanhome.com
“
”
http://www.sunshoo.com/10002.html
“
”
http://www.0571jihao.com/eqsythjkl.html
“
3.
定时器2
查找所有的QQ加群窗口。
枚举QQ加群窗口的所有子窗口。
检查子窗口的标题是否是如果“离开”或者“确定”
激活子窗口,通过发送按键消息,模拟点击空格键,关闭加QQ群的窗口。
同样的方法还对其他类似的弹出窗口进行模拟点击取消。
4.
定时器3
清理IE缓存