01序言 RedlineStealer是一个运行于MaaS(恶意软件即服务)模式的信息窃取程序。该恶意软件由C编写而成,且在地下论坛根据功能的不同以不同的价格出售。 研究人员在windows系统上通过Regsvcs。exe部署RedlineStealer。RedlineStealer通过processhollowing技术安装,RedlineStealer的装载器会在进程挂起状态时替换Regsvcs。exe进程的内容。然后RedLine的PE(可移植可执行文件)会被映射到Regsvcs进程中,并且线程上下文会被指向Stealer的入口点,通过以上操作,stealer被伪装成合法进程在系统中运行。本文主要是通过代码分析RedlineStealer所运用的技术。 02Stealer的特征 窃取用户信息,如信用卡信息、登录数据和浏览器中自动填充表单; 以目标电脑桌面和文档目录中的用户文件作为目标。文件抓取器专门查找加密数据,如钱包和种子相关文件; 能够标记并窃取存储在电子账户中的信息,最多能标记10个加密电子钱包和40个电子账户浏览器扩展信息; 对目标电脑桌面截图; 窃取目标系统上安装的FileZillaFTP应用程序和VPN应用程序存储的用户数据信息; 窃取Steam应用程序中的存储的特定用户数据和Discord令牌; 能够在目标系统上执行命令和附加Payload。 03内置配置 RedLinestealer内置配置中存在一个叫Arguments的类,Arguments包含以下字段: RedLinestealer使用的加密方式包含加密和异或运算: 先将解密的数据做异或运算; 再用解密上一步异或运算得出来的数据; 最后得出的数据才是被RedLinestealer用于CommandControl通信的数据。 通过解密出的数据的每个字符与运算结果进行异或运算(eachkeycharkey。Length) 04区域检查 Redline运行前会先检测目标服务器所在地区,如下图所示: RedLinestealer保存了一份独联体国家的列表,如果目标服务器属于列表中的任何国家,则程序终止运行。这对于独联体国家的对手国家恶意软件程序开发者来说是很常见的行为。 05CommandControlIP配置 在区域检查之后,RedLinestealer从数据包中获取C2配置。 RedLineStealer行为由参数控制,在获取到配置信息后,RedLineStealer会加载配置信息并将配置信息存储在一个叫settings的类中。 文件抓取器的配置中包含一个检查数据目录路径的方法,还包含一个用于检索目录中数据的方法。通过这两个方法,RedLinestealer会窃取所有文本文件和文档,还有包含密钥、电子账户和种子信息的文件。 Redline会窃取各种应用程序的用户数据,包括浏览器、游戏启动器和VPN应用程序。 Redline同样会窃取电子钱包数据,配置信息中包含电子钱包的名字和从相应应用程序的用户数据目录中检索到的环境变量。 06Redlinestealer的实现 Redlinestealer的核心能力通过两种模式实现:FullInfoSender和PartsSender,两者相互独立。Redlinestealer通过软件版本来确定软件所运行的模式,版本号为1的运行FullInfoSender。FullInfoSender和PartsSender之间没有功能上的区别,它们遵循完全相同的逻辑。 Redlinestealer能够执行各种操作。除了FullInfoSender和PartsSender之外,TaskResolver类还提供了命令和payload执行能力。 07动态链接 Redlinestealer拥有在程序运行时动态加载DDLs(动态链接库)去执行各种数据窃取活动的能力。Win32的API接口LoadLibraryA和GetProcAddress通过平台调用服务(Pinvoke)定义。平台调用服务(PInvoke)是公共语言基础结构(CLI)实现的一项功能,它能够通过管理代码调用本机代码。通过该服务,Redlinestealer能够在内存中加载特定的DLL模块,然后使用加载的DLL中的特殊方法去解析地址。 动态加载DDLs主要运用在两个地方,一个是Redlinestealer调取特定于浏览器的存储数据,另一个是抓取受害桌面截图。如:Redlinestealer在执行数据窃取过程中,加载bcrypt。dll执行各种密码运算操作。 Redlinestealer能够加载gdi32。dll来执行图像相关进程,这个动态链接库被恶意软件广泛运用于屏幕捕获。Redlinestealer主要运用的是GetDeviceCaps函数。 08系统信息 信息窃取软件一般通过Windows管理规范(WMI)来获得受害者的系统信息。以下为Redlinestealer需要的信息: 用户名称; 屏幕分辨率; 语言和windows版本; CPU、GPU和内存信息; 已安装的浏览器; 已安装的程序; 已安装的防病毒程序; 运行中的进程; 可用的语言。 Redlinestealer基于收集到的信息绘制用户模型并发送给C2服务器。 09浏览器数据 Redlinestealer主要从浏览器存储数据中获取以下信息: Cookie; 自动填充表单; 存储的密码; 存储的信用卡信息。 像其他信息窃取软件一样,Redlinestealer通过以下操作来窃取信息: 获得浏览器中存储的SQL数据库文件; 窃取存储在浏览器的LocalState文件中的解密密钥,这些密钥是用来保护用户数据目录中的数据; 接着Redlinestealer利用解密密钥将数据库里面的数据解密; 解密后的数据再发回C2服务器。 Redlinestealer通过构建SQL查询语句从数据库中获取数据: 10文件窃取 通过解析C2服务器配置,发现在Id10文件存储了用户桌面目录和文件目录的匹配模型。Redlinestealer根据这些信息搜索并窃取所有包含了key、wallet、seed字段的文件和所有的文本和文件。 以下函数获取Id10的值通过FileSearcher。Search方法来完成搜索。 11电子钱包和扩展 C2服务器配置信息中包含供Redlinestealer检索的电子钱包应用名,以下为目录详细内容(AppData): Redlinestealer对照C2服务器配置信息中的电子钱包应用目录进行筛查,如果找到了相应的应用,Redlinestealer会将取得的wallet。dat文件发送给C2服务器。 Redlinestealer还会收集安装在浏览器上的电子钱包扩展程序。Redlinestealer有一个加密的数组将电子钱包扩展程序用格式存储起来。扩展程序存储的重要数据会发送给C2服务器。 12游戏启动器 Redlinestealer会检索Steam程序路径: Redlinestealer主要着重查找包含ssfn字段的,config文件和vdf文件。文件路径是通过实例化GameLauncher类生成的。然后利用FIleScanning。Search方法搜索这些文件,生成的数据最终会发送给C2服务器。 13VPN Redlinestealer主要关注以下这几个VPN程序: NordVPN OpenVPN ProtonVPN 对于处理NordVPN程序: Redlinestealer会检索路径C:UsersuserAppDataLocalNordVPN; 将NordVPN。exe目录中的user。config(xml)文件筛选出来; 打开用户配置查找包含settingvalue的代码; 再将获取到的数据加密后发送给C2服务器。 对于OpenVPN和ProtonVPN,Redlinestealer分别从相应的目录中搜索config文件和ovpn文件。 14FTP程序 Redlinestealer主要关注FileZilla这个FTP程序,在目标系统的APP数据目录中检索以下两个文件: sitemanager。xml recentservers。xml 获取上述XML文件的路径后,Redlinestealer将解析并窃取密码和用户信息。 15屏幕窃取 Redlinestealer通过以下操作对受害者的桌面截屏: Redlinestealer对获得的屏幕比例信息进行处理,通过在内存中加载gdi32。dll动态链接库,然后使用GetDeviceCaps的方法获取每个像素点的位数来计算出屏幕大小; 在计算出屏幕大小后,屏幕截取程序开始工作,将截图出来的图像文件以png格式输出,再发送给C2服务器。 16任务执行 Redlinestealer为操作者提供了额外的运行RATbeacons之类的payload的能力。Redlinestealer通常通过payload或OS命令从C2服务器获得任务列表。 Redlinestealer提供了以下4种功能来在目标系统中执行附加任务: 通过cmd执行命令 该功能能够使操作者通过cmd。exe执行命令: 下载并执行payload 该功能能够使Redlinestealer在网络上下载并执行payload: 仅下载功能 该功能仅下载payload但不执行,若需要执行payload,则需要使用仅执行功能: 仅执行功能 该功能仅执行payload但不下载,该功能可以跟在仅下载功能后使用: 17通信 Redlinestealer使用httptempuri〔。〕orgEntityId作为命令来控制,若没有提供正确的口令,该域名会被重定向到bing。com。 小结 综上所述,RedlineStealer是一种恶意窃取密码的软件,会窃取受害者设备中的敏感数据,例如密码、保存的银行卡详信息、加密货币钱包以及VPN服务的凭证。目前RedlineStealer已被大量利用,这背后的主要原因是它有效地利用了现代Web浏览器难以解决广泛可用的安全漏洞。 对此,专家方面建议不要轻易点击可能具有钓鱼企图的邮件,这是此类恶意软件被植入的主要方法。目前,聚铭网络流量智能分析审计系统已经能够对上述恶意软件及其各类变种进行检测处理。