IDA Pro中"The database is corrupted"的解决办法

ida pro默认不允许你打开由其他用户创建的idb文件,这给逆向分析带来很多不便。
经过研究发现,ida pro会在idb文件中存放ida.key的信息,用于标示创建者。因此我们需要用自己的ida.key中的内容进行替换。
注: 替换之后,打开idb文件会提示校验失败,保存一下就好了。另外当idb以deflate方式存放的时候需要先解压缩之后再进行替换

首先打开你的idb文件,查找"$ original user",然后往前移167个字节,将之后的160个字节替换为ida.key文件中从倒数320字节开始的160个字节即可

可以用如下的WinHex脚本来自动化上面的流程

ExitIfNoFilesOpen
Turbo On
ForAllObjDo
Find "$ original user" MatchCase
IfFound
  Move -7
  Block2 CurrentPos
  Move -160
  Block1 CurrentPos
  //Your key
  Write 0x68A6CCA68835B991192761B9EAA2760131041C723505F3F7D052DA513878F505
  Write 0x1CB84A17B46D255F29B84681C9B89F5A1FD04A23C6874380D78DE941B814EFE5
  Write 0x416DC51B7F1EEE50D88EA674472CB4BF41E3CE11FCA6A69BA97DB17282944D78
  Write 0xA8B5FB4BDF366637F818C2E003B4CC65952AFAAC586070C115B776B2E72CE437
  Write 0x0000000000000000000000000000000000000000000000000000000000000000
Else
  MessageBox "Can't find key data"
EndIf
EndDo 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值