-
-
[原创]IDA Pro 6.8 安装密码爆破的可行性分析
-
2015-12-8 16:41
28081
-
[原创]IDA Pro 6.8 安装密码爆破的可行性分析
昨天,在论坛上看到有好心人送出ida 6.8,就找了下载安装试试。在看到安装密码时,想起论坛曾经有人发贴寻求爆破ida6.7的安装密码,后来就没有了下文。我当时也很是奇怪,到底有没有可能爆破出这个安装密码呢?研究了一晚上,最终觉得没有可能。
其实输入安装密码这一步是可以通过内存补丁绕过去的,但是在接下来的拷贝文件过程中会提示失败,原因就是这个输入的密码参与了安装文件的解密。因此不知道安装密码的话,即使有安装包也是没有意义。
通过调试发现,该安装包在校验安装密码时用到了一些关键数据,如上图框中所示。这些数据可以用winhex等工具从内存中读取出来。编写python爆破脚本如下:
import hashlib
import itertools
import string
letters=string.ascii_letters+string.digits
installpass='PDxD5J82DsFy'
x='95DF883CCDECDF52'.decode('hex')
bits=4
known=installpass[:bits*(-1)]
for guess in itertools.product(letters,repeat=bits):
data='PasswordCheckHash'+ x + known+''.join(guess)
sha1 = hashlib.sha1()
sha1.update(data)
if sha1.hexdigest()=='09db6f9a7e340f75606964cb69e2f3765dec5638':
print '[+] Found it: %s' %(data[-12:])
break
输出:
[+] Found it: PDxD5J82DsFy
校验算法很简单,但bits=5时就已经很困难了。所以我认为爆破12位的ida 6.8安装密码几乎不可能。是不是觉得我很无聊啊?
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法