首页
社区
课程
招聘
[原创]动静同调——双倍快乐
发表于: 2020-10-23 20:05 5791

[原创]动静同调——双倍快乐

2020-10-23 20:05
5791

在分析病毒的时候总会因为来回切换OD和IDA而痛苦不堪,后来从大佬手中淘来了一个神奇的插件sync。这个项目一直开放在Github上,是通过python脚本来实现的客户端服务端通讯达到虚拟中的动态调试器(OD、x64dbg、Windbg......)与物理机上的IDA同步调试。
具体Github地址:https://github.com/bootleg/ret-sync
可以根据图片看到基本上常用的调试器都可以支持。
图片描述
因为是通过Python脚本和动态调试器所对应的插件共同实现的功能,而且所有的动态调试器插件都只提供源码,所以我们必须有Python环境和可以编译工程项目的IDE。
我们首先需要将项目下载下来,然后选择我们机器中的IDE进行源码编译生成同步插件。我这里使用的是VS2017(作者推荐版)+Python-x64。我们首先来同步OD和IDA(因为吾爱的是1.0版本OD所以我们选择1.0的插件进行编译)。
图片描述
重定向下VS工程的SDK,否则可能会编译报错。
图片描述
选择安装使用的SDK版本。
图片描述
右键点击生成,要根据动态调试器的位数决定编译的插件位数。(使用Release版本)将编译好的插件放入OD的plugin目录下。
图片描述
接下来将ext_ida目录里的python脚本拷贝进,ida的plugin目录中。ida需要6.8版本以上,如果是6.8版本或以下需要自己手动修改python脚本配置内容。
图片描述
接下来需要建立客户端和服务端,实现同步调试。这需要我们调试的虚拟机与物理机的网络是互通的。我们直接选择NAT模式即可(不要忘了关闭虚拟机中的防火墙)。其他的网络模式也可以参考我之前的文章
https://bbs.pediy.com/thread-262874.htm
配置好网络,我们还需要在虚拟机和物理机的用户的用户名目录下分别创建一个.sync文件。这个文件记录着物理网卡的ip(一定是物理机的才行)和开放通讯的端口。
图片描述
图片描述
接下来随意找一个程序将其拖入ida或者在虚拟机中生成的idb数据库文件拖入ida。
图片描述
我们可以看到弹出窗口,点击Start或Restart。
图片描述
出现下列提示代表服务端监听启动。
图片描述
打开虚拟机中的OD开始调试相同的程序。
图片描述
这时我们看到IDA控制台返回了OD插件的连接。
图片描述
再查看IDA的汇编界面,已经实现了与OD同步。
图片描述
感受一下效果,这下双十一又有了个买屏幕的理由了。
图片描述


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2020-10-23 20:41 被独钓者OW编辑 ,原因:
上传的附件:
收藏
免费 2
支持
分享
最新回复 (15)
雪    币: 2466
活跃值: (4561)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
楼主可否分享一下编译好的程序
2020-10-23 20:28
0
雪    币: 3776
活跃值: (5544)
能力值: ( LV7,RANK:115 )
在线值:
发帖
回帖
粉丝
3
附件已上传,如果不可用的话可以试试自己编译
2020-10-23 20:40
0
雪    币: 2466
活跃值: (4561)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
独钓者OW 附件已上传,如果不可用的话可以试试自己编译[em_86]
感谢,我自己再编译一下试试
2020-10-23 21:01
0
雪    币: 22
活跃值: (453)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
不错!
2020-10-23 21:12
0
雪    币: 1230
活跃值: (1765)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
6
还可以ida和windbg,使用方法都一样,原理感觉就是根据符号,有时候符号不对等很鸡肋…… 我也是之前偶尔用用
2020-10-23 23:30
1
雪    币: 3776
活跃值: (5544)
能力值: ( LV7,RANK:115 )
在线值:
发帖
回帖
粉丝
7
是的,这个插件主要是同步的功能很舒服,有的时候还有一些奇怪的问题
2020-10-24 07:44
0
雪    币: 35775
活跃值: (7155)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
就过程有点意思,就没有汉化和加点其他功能?
自从论坛以来已经用上多时了。。。
2020-10-24 09:41
0
雪    币: 3738
活跃值: (3872)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
感谢分享!
2020-10-24 11:06
0
雪    币: 12497
活跃值: (9432)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
 有点意思。以前是ida看的差不多,弄出map文件,然后od的插件加载。。。
2020-10-28 10:09
0
雪    币: 918
活跃值: (1900)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
11
嗯不错,回头我看看能不能把ida的断点反着发给调试器用
2020-10-28 11:08
0
雪    币: 79
活跃值: (373)
能力值: ( LV11,RANK:195 )
在线值:
发帖
回帖
粉丝
12
好用,点赞
2020-10-28 11:33
0
雪    币: 1475
活跃值: (14652)
能力值: ( LV12,RANK:380 )
在线值:
发帖
回帖
粉丝
13
pyg的ida7.5   识别不到插件, 怎么破大佬
2021-1-28 16:10
0
雪    币: 3776
活跃值: (5544)
能力值: ( LV7,RANK:115 )
在线值:
发帖
回帖
粉丝
14
SSH山水画 pyg的ida7.5 识别不到插件, 怎么破大佬
这个我也没遇到过,感觉问题应该出现在IDA的python环境上
2021-1-28 17:49
0
雪    币: 1475
活跃值: (14652)
能力值: ( LV12,RANK:380 )
在线值:
发帖
回帖
粉丝
15
独钓者OW 这个我也没遇到过,感觉问题应该出现在IDA的python环境上[em_85]
好的吧,我再搞搞,头大
2021-1-28 18:15
0
雪    币: 276
活跃值: (1116)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
好用,点赞
2021-1-28 23:05
0
游客
登录 | 注册 方可回帖
返回
//