我一直在反编译我认为是恶意软件的一段代码,而我正试图找出它的作用。它搜索特定的窗口标题,并使用该窗口的名称来解码其余的指令。我已经尝试通过它运行常用Windows标题列表(记事本,文档1 - Microsoft Word等)来提供正确的窗口标题。
我重写了它在Python中使用的哈希:
def encode( inStr ):
a = 0x133F00D
i = 0
for j in inStr:
temp = ord(j)*8 * ((i << 0xC)+1)
a = a^ temp
i = i + 1
print hex(a)
我正在寻找一个给我值0x2227205的字符串。看一下哈希函数,看起来它是一种方式并且有冲突。找到它试图抓取的窗口标题有什么好方法?常见窗口标题的恶意预防网站上是否有列表?我应该进行字典攻击吗?什么是最好的方法?
答案 0 :(得分:0)
如果窗口标题足够长,你将无法通过暴力攻击找到它,可能它甚至不会帮助你找到与哈希匹配的标题。恶意软件可以检查是否存在其他实例。
我建议使用调试器在虚拟机或甚至更好的专用计算机(可能没有网络确定,或使用假网络检查活动)中运行恶意软件。然后,您可以检查是否可以找到与其中的哈希匹配的窗口。
如果您坚持使用该python代码,请确保您具有与恶意软件相同的溢出行为(尤其是整数的相同长度)。