RisePro 窃取程序在“gitgub”活动中瞄准 Github 用户

RisePro 重新出现,采用新的字符串加密和臃肿的 MSI 安装程序,使 IDA 等逆向工具崩溃。“gitgub”活动已经向 Telegram 发送了 700 多个被盗数据档案。

来源:G DATA _恶意软件

我们使用 Binary Refinery 代码片段解密了字符串,该代码片段以可用于 Python 字典的格式打印解密的字符串及其偏移量。

Binary Refinery
发出样本 | rex "\xC7(\x85|\x45).{4,8}\xC7(\x85|\x45).{50}" [| put o offset | rex "\xC7(\x85....|\x45.)(.{4})" {2} [| nop ]| alu -s "0-101" --inc "B^S" | carve -n 4 printable | resub \\ \\ | resub \" \\\" | cfmt {o} : \"{}\", ]]
发出样本 | rex "\xC7(\x85|\x45).{4,8}\xC7(\x85|\x45).{50}" [| put o offset | rex "\xC7(\x85....|\x45.)(.{4})" {2} [| nop ]| alu -s "0-101" --inc "B^S" | carve -n 4 printable | resub \\ \\ | resub \" \\\" | cfmt {o} : \"{}\", ]]

该代码段的正则表达式匹配了一些非预期的值,但将它们设置为 IDA 数据库中的注释并没有什么坏处。我们将输出添加到以下 IDAPython 脚本中。

import idc decrypted_strings_dict = { ... }for k, v in decrypted_strings_dict.items(): base = 0x400000 addr = k + base comment = '"' + v + '"' idc.set_cmt(addr, comment, 0) print("comment", comment, "set at", addr)
import idc decrypted_strings_dict = { ... }for k, v in decrypted_strings_dict.items(): base = 0x400000 addr = k + base comment = '"' + v + '"' idc.set_cmt(addr, comment, 0) print("comment", comment, "set at", addr)

这里不需要地址转换,因为 .text 部分中的文件偏移量和虚拟地址是相同的。