火绒工程师发现“酷我音乐”携带的间谍木马模块
Tinder工程师深入分析发现,“酷我音乐”携带的间谍木马会在后台收集用户隐私信息等恶意行为:
1、收集用户登录上位机的QQ号。
2.通过浏览器浏览历史总结用户特征并发回后台。
3、通过云控配置向用户电脑发送命令,如下载音频文件并发回服务器后台。
此外,该木马还可以随时通过远程服务器进行其他操作,不排除未来通过修改云控配置投放其他风险模块的可能性。
同时,“酷我音乐”会通过云控制投放两套间谍木马:一套投放到软件安装目录;一套投放到软件安装目录。 另一个会被传送到非软件安装目录,即使卸载“酷我音乐”,它仍然驻留在用户系统中并继续响应云端控制指令。
事实上,早在2015年,“酷我音乐”携带的上述间谍木马就被国外安全厂商报告为“潜在有害程序(PUA/PUP)”(见下面的用户反馈链接)。 也许是因为这个报告法与业界对恶意软件的定义不同,所以未能引起其他安全厂商的关注。 直到今天,火绒工程师在用户现场发现并详细分析,认为这套组件的功能已经超出了“PUA/PUP”的定义,符合间谍木马的定义。
值得一提的是,Tinder工程师还发现该间谍木马的云控制配置链接位于一个名为“bigdata”的目录中。 据推测,该间谍木马用于所谓的大数据收集。
随着信息时代的发展,越来越多的互联网企业涌向“大数据”。 对于过度追求数据信息、有越权行为的软件、程序,火绒将及时、持续拦截、查杀,保护用户的合法权益。 同时,我们也呼吁此类软件厂商停止越权收集用户信息等恶意行为,理性追求利润,长远发展。 最后,如果用户遇到任何可疑问题,可以随时联系火绒寻求帮助。
相关链接:
2015年,卡凡网友举报安全厂商屏蔽“酷我音乐”
1、溯源分析
近期,我们收到用户反馈,在使用现场发现多个带有有效酷沃音乐数字签名(北京酷沃科技有限公司)的可疑模块。 目录中出现可疑模块,如下图:
可疑模块所在目录
kreap5141.dll数字签名信息,如下图:
kreap5141.dll数字签名信息
经过分析,我们发现这是一组恶意程序。 kreap5141.dll是一个具有随机名称的动态库。 该动态库将被注册为 ShellIconOverlayIdentifiers 启动项并由资源管理器加载。 kreap5141.dll动态库会使用rundll32.exe调用kreap5141_core.dll来获取任务动态库并在本地执行。 kreap5141_core.dll可以将恶意功能模块从C&C服务器传递到用户本地执行。 恶意功能包括收集当前电脑登录的QQ号信息、浏览器历史画像信息、软件安装信息等、上传音频文件等。
经溯源,我们在酷我音乐安装目录下发现了具有相同功能代码的恶意模块KwExternal.exe。 该模块由KwService.exe从服务器获取,由酷我音乐主程序(kwmusic.exe)调用执行。 然后根据服务器返回的配置数据收集用户的隐私信息。 由于该恶意函数代码与前文提到的随机动态库相同,因此我们仅以KwExternal.exe为例进行分析。 恶意行为执行流程如下图所示:
恶意行为执行流程
KwExternal.exe文件的数字签名信息显示,签名时间为2019年4月8日。数字签名信息,如下图:
KwExternal.exe模块文件数字签名信息
2. 详细分析
KwExternal.exe恶意模块主要用于收集并上传用户本地信息。 安装酷我音乐后,会由酷我音乐主程序(kwmusic.exe)发出并调用KwService.exe。 相关的传递逻辑在Kwmv.dll模块中实现。 首先向C&C服务器地址()请求KwExternal.exe模块下载地址。 发送请求时,会将MAC地址、IP地址等信息发送给服务器,并发送请求构造的相关数据,如下图所示:
请求数据已发送
上述数据将经过Base64编码后发送至C&C服务器。 构建的请求包相关数据如下图所示:
请求数据
C&C服务器收到请求后,会返回KwExternal.exe模块的下载地址。 仅以部分数据为例,如下图:
KwExternal.exe下载配置
然后将KwExternal.exe模块数据下载到本地C:\KwDownload\Temp目录下的一个随机名称的文件(如:C9F903ADC5ED0F62.exe)中,然后酷我音乐的主程序kwmusic.exe将将随机名称的文件复制到安装目录中,启动KwExternal.exe来执行恶意行为。 相关行为日志,如下图:
下载 KwExternal.exe 模块数据
移动到酷我音乐安装目录
KwExternal.exe运行后,会根据本地配置(C:\ProgramData\kuwodata\kwmusic2013\Conf\Server\config.ini)中的数据收集开关选项(DataCollect)收集用户本地信息,该开关为默认打开。 KwExternal.exe收集的用户信息包括:用户本地登录的QQ号、用户终端上网行为信息、终端环境信息(软件环境、桌面图标等)、下载和收集的音频文件等。此外,相关配置信息如下图所示:
配置文件
该模块会根据云控下发的规则配置文件收集所需的信息,然后以json格式保存并加密传输到C&C服务器。 服务器地址可以通过配置文件配置,默认为hxxp:///EcomGxhServer/st/receiveUserInfoServlet。 目前无法索取信息收集规则文件,但不排除未来再次下发的可能性。 从代码逻辑可以看出,收集用户信息包括:用户访问特定网站的次数、用户是否安装了特定的音视频播放器、用户是否安装了黑名单上的软件、用户是否经常访问某些网站、玩游戏、观看直播。 程度。 发送的json格式信息如下图所示:
收集由用户信息构建的json数据
收集终端环境信息
软件信息采集
该模块会通过遍历HKLM和HKCU主键下的SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall子键来获取用户安装的软件列表。 然后与规则文件中的软件名称进行匹配,获取用户安装的浏览器(为收集浏览器历史信息做准备)、音视频播放器、游戏盒子、游戏微客户端、直播软件以及游戏中的软件。黑名单。 相关代码如下所示:
收集软件列表
查询是否安装了特定的音视频播放器列表,如下图:
视频播放器集合
收集游戏盒子、微客户端、直播软件数量
桌面图标后缀信息收集
恶意模块还会遍历“%COMMON_DESKTOPDIRECTORY%”和“%DESKTOPDIRECTORY%”目录下的用户图标文件,获取图标后缀信息。 相关代码如下图所示:
获取用户桌面图标后缀信息
获取到用户桌面上的图标后缀信息后,后续的数据发送流程与下面发送QQ账号信息的方法一致。 相关代码如下图所示:
获取用户桌面图标后缀信息
收集用户本地登录过的QQ号
该恶意模块会获取用户系统“%APPDATA%\Tencent\QQ\Misc\”目录下的QQ账号信息。 相关代码如下图所示:
获取“%APPDATA%\Tencent\QQ\Misc\”目录下的QQ账号信息
模块获取到用户系统上的QQ账号信息后,通过zlib进行压缩、加密并使用Base64编码,放入消息包中,创建网络线程,传输至远程服务器(hxxp:// /feedback.s或hxxp:///music.yl),相关代码如下所示:
获取用户QQ账号信息
发送包含用户QQ账号信息的消息数据
收集用户终端上网行为信息
受影响的浏览器名称及相关代码如下所示:
受影响的浏览器
受影响的浏览器
该恶意模块会通过SQL命令和系统相关函数查询用户浏览器的历史访问记录信息。 下面以搜狗高速浏览器为例。 首先,该模块会检测采集软件信息时获得的浏览器标志位,以确定用户主机上是否安装了搜狗高速浏览器。 如果搜狗高速浏览器正在运行,请将存储用户历史浏览记录的数据库文件复制并重命名到临时文件目录中。 相关代码如下所示:
将浏览器数据库文件复制到临时文件夹
然后运行sql命令“SELECT a.id,a.last FROM UserRankUrl a;” 查询历史数据库中用户近一个月的历史访问网址和访问次数。 相关代码如下图所示:
查询数据库中历史URL相关信息
执行命令“SELECT a.id,a.last FROM UserRankUrl a;” 通过sqlite查看工具查询搜狗高速浏览器历史URL数据库HistoryUrl3.db,获取历史URL和访问时间。 结果如下所示:
查询测试结果的sql命令
获取上述浏览器历史访问记录后,模块将根据配置文件中的关键URL字段信息来匹配历史URL记录。 如果匹配成功,则该URL对应的访问计数值会加1,使用 来填写json信息中的规则值。 当访问计数值达到配置中的数值要求时,将json信息中的testLinkType中对应的字段值设置为1。 根据收集到的历史记录和安装的软件信息,汇总用户特征,并填写json信息中的userType字段值。我们以“GamePlateMatch”为例。 相关代码如下所示:
匹配历史URL信息所需关键字段
匹配与 GamePlateMatch 相关的历史 URL
根据软件和浏览器历史记录总结用户特征
经过简单的异或加密和Base64编码后,将收集到的json格式信息发送到C&C服务器。 相关代码如下所示:
加密并发送收集的信息
下载并收集音频文件
在执行下载和采集音频文件相关操作时,首先会检测本地config.ini配置文件中DataCollect -> EnableSongCollect的值是否为1,以确定是否执行下载和采集音频文件的过程,然后获取SongLink -> UrlQurySongReg 项下的音频。 下载链接。 相关代码如下所示:
下载合集音频代码
如上面代码所示,首先会请求配置数据,其中包含音频下载配置的下载地址(url)和上传地址(td_ip)。 配置数据格式,如下图:
配置数据
上述配置数据中的url字段包含音频下载配置的下载地址,音频下载配置中存储了需要采集的音频文件的下载地址。 音频下载配置格式,如下图:
音频下载配置
音频下载配置解析相关代码,如下图:
音频下载配置分析
在获取音频文件下载地址的同时,还会判断下载地址中是否包含“_h.mp3”字符串。 如果存在,则执行下载操作。 相关代码如下所示:
判断是否需要下载
之后,相关恶意代码逻辑会检测SongDataCollect.pl文件中记录的文件路径(filePath)是否存在。 如果filePath中的路径存在,则调用上传逻辑将音频文件内容上传到C&C服务器(前面配置中的td_ip为上传C&C服务器地址); 如果不存在,则根据上一篇提到的音频下载地址将音频文件下载到本地。 Temp目录,然后将Temp目录中下载的音频文件上传回C&C服务器。 相关配置格式如下图所示:
SongDataCollect.pl配置数据格式
相关代码如下所示:
检测并下载音频文件
最后将本地获取或下载的音频文件数据上传到C&C服务器(前面配置中的td_ip为上传C&C服务器地址)。 相关代码逻辑如下图所示:
上传文件
由于目前酷我音乐相关配置尚未启用,我们根据KwExternal.exe代码逻辑构建相应的配置文件进行功能验证,验证结果与分析内容完全一致。 相关行为如下图所示:
收集上传音频文件行为日志
3.同源性分析
我们在用户端提取的kreap5141.dll随机名动态库会根据配置文件执行本地下发的恶意模块。 在交付的多个恶意模块中,我们发现了一个与KwExternal.exe功能高度相似的恶意模块。 1002.dll。 1002.dll数字签名信息,如下图:
1002.dll数字签名信息
虽然kreap5141.dll随机名动态库具有酷我音乐的有效数字签名,但当酷我音乐卸载时,与kreap5141.dll相关的恶意模块不会被删除。 将恶意代码投递到用户本地执行的相关配置数据,如下图所示:
恶意模块下发相关配置
KwExternal.exe和1002.dll的代码非常相似,因此它们是同一恶意模块来源。 源码,如下图:
KwExternal.exe和1002.dll具有相同的源代码
4. 附录
样本哈希值
阴阳师4月22日更新内容:帝释天上线技能调整,红莲华冕活动来袭[多图],阴阳师4月22日更新的内容有哪些?版本更新
2024-02-07四川电视台经济频道如何培养孩子的学习习惯与方法直播在哪看?直播视频回放地址[多图],2021四川电视台经济频
2024-02-07湖北电视台生活频道如何培养孩子的学习兴趣直播回放在哪看?直播视频回放地址入口[多图],湖北电视台生活频道
2024-02-07