[原创]记录一下使用ret-sync进行x64dbg和ida联调中遇到的问题
2023-2-3 18:14:0 Author: bbs.pediy.com(查看原文) 阅读量:15 收藏

[原创]记录一下使用ret-sync进行x64dbg和ida联调中遇到的问题

2023-2-3 18:14 6031

[原创]记录一下使用ret-sync进行x64dbg和ida联调中遇到的问题

本文记录一下在安装ret-sync进行x64dbg和ida联调过程中遇到的问题

1.1 安装ida

自行下载,我这里使用的是ida7.5

1.2 安装python

我这里安装了python2.7.10x64和python3.8.1.x64

1.3 配置ida的python环境

配置ida的python环境是按照https://bbs.kanxue.com/thread-264346.htm文中讲的来配置的,提供四个bat文件,根据不同的python环境需求分别启动:

  1. ida64+python2
  2. ida32+python2
  3. ida64+python3
  4. ida32+python3

ida7564_py27.bat:

1

2

3

4

5

@rem 7564_27.bat file for bootstrap ida.exe with py2

@set path=C:\Python27;C:\Python27\Scripts;C:\Python27\Library\bin;C:\Python27\Lib;C:\Python27\DLLs;C:\CR\Tools\IDA Pro 7.5 SP3\python\2;%path%

@set PYTHONPATH=C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;

@echo . > "C:\CR\Tools\IDA Pro 7.5 SP3\python\use_python2"

@start ida64.exe

ida7532_py27.bat:

1

2

3

4

5

@rem 7532_27.bat file for bootstrap ida.exe with py2

@set path=C:\Python27;C:\Python27\Scripts;C:\Python27\Library\bin;C:\Python27\Lib;C:\Python27\DLLs;C:\CR\Tools\IDA Pro 7.5 SP3\python\2;%path%

@set PYTHONPATH=C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;

@echo . > "C:\CR\Tools\IDA Pro 7.5 SP3\python\use_python2"

@start ida.exe

ida7564_py38.bat:

1

2

3

4

5

@rem 7532_38.bat file for bootstrap ida.exe with py3

@del "C:\CR\Tools\IDA Pro 7.5 SP3\python\use_python2"

@set path=C:\Python38;C:\Python38\Scripts;C:\Python38\Library\bin;C:\Python38\Lib;C:\Python38\DLLs;C:\CR\Tools\IDA Pro 7.5 SP3\python\3;%path%

@set PYTHONPATH=C:\Python38\Lib;C:\Python38\DLLs;C:\Python38\Lib\lib-tk;

@start ida64.exe

ida7532_py38.bat:

1

2

3

4

5

@rem 7532_38.bat file for bootstrap ida.exe with py3

@del "C:\CR\Tools\IDA Pro 7.5 SP3\python\use_python2"

@set path=C:\Python38;C:\Python38\Scripts;C:\Python38\Library\bin;C:\Python38\Lib;C:\Python38\DLLs;C:\CR\Tools\IDA Pro 7.5 SP3\python\3;%path%

@set PYTHONPATH=C:\Python38\Lib;C:\Python38\DLLs;C:\Python38\Lib\lib-tk;

@start ida.exe

通过四个bat文件来启动ida,就不用添加环境变量,以免污染机器上的其他环境变量

注意将我的python路径替换成你自己的

下载地址:https://github.com/bootleg/ret-sync

2.1 ida的配置

下载下来之后,文件ret-sync-master\ext_ida中就包含了ida的插件,将下面这个文件夹中的文件复制到IDA Pro 7.5 SP3\plugins

2.2 x64dbg的配置

x64dbg的插件没有提供二进制文件,而是提供了vs的工程,那就自己编译一下,我这里的环境是win11+vs2022

编译成功之后将x64dbg_sync.dp64x64dbg_sync.dp32分别复制到x64dbg\release\x64\pluginsx64dbg\release\x32\plugins

3.1 ida使用

首先启动ida,打开edit-plugins>ret-sync,勾选Synchronization enable,服务端就起来了

但是我就在这里遇到了问题,提示端口被占用了:

1

[sync] << broker << beacon not received (possible dispatcher error, please ensure that port 9100 is available)

现在有两种解决方案:

  1. 关掉占用端口的进程
  2. 修改ret-sync所需要的端口

这里我选择第二种方案

3.2 解决端口占用问题

修改端口肯定是服务端和客户端都需要修改,服务端的ida的插件,是一个py脚本,那好说,直接搜索9100,修改成9101

然后x64dbg的插件是客户端,那就需要修改源文件重新编译,这里需要修改两处:


重新编译之后复制到x64dbg的插件文件夹去

这样端口占用的问题就解决了

3.3 x64dbg使用

用ida打开目标exe,然后启动插件:

用x64dbg调试目标exe,点击插件->SyncPlugin->Enable sync

成功连接服务器的话下面状态栏会有提示

此时如果x64ddbg调试的是ida打开的exe的主模块,那么ida也会在单步调试的指令处标黄色,调试起来非常直观

到这里ret-sync的安装和使用就好了,不过我有一个小问题请教各位大佬?ida把小窗口拖出来变成浮动之后,怎么还原回去?

LLVM与代码混淆技术

最后于 2023-2-3 18:37 被st0ne编辑 ,原因: 分类搞错了

上传的附件:
  • 附件.7z (1.56MB,8次下载)

文章来源: https://bbs.pediy.com/thread-275964.htm
如有侵权请联系:admin#unsafe.sh