首页
社区
课程
招聘
[原创]A64Dbg-ARM时代的OllyDbg,它来了!
2020-12-31 19:59 27963

[原创]A64Dbg-ARM时代的OllyDbg,它来了!

2020-12-31 19:59
27963
1
2000年发布的OllyDbg,是我们7080后软件攻防专家的一代记忆,OD在手天下我有的感觉无与伦比。

图片描述

1
不过直到2014年,OllyDbg停更了也没有等到Win64的支持,好在X64Dbg让这件事后继有望。

图片描述

1
2
202011月,苹果发布了难以置信的ARM桌面级M1芯片产品,是时候有一个专用于ARM架构的本地汇编级调试器了。
所以,A64Dbg,它来了。

图片描述

V1.0.0功能简介

1.调试器本身支持:ARM Mac、Intel Mac、Windows;
2.调试对象支持:Local ARM Mac、Remote iOS、Remote Android;
3.ARM64汇编/反汇编;
4.软件断点/内存断点;
5.指令/寄存器/内存读写;
6.ARM64也有F2、F4、F7、F8、F9、F12了;
7.内置命令行LLDB/PyLLDB/TarShell;
8.MachO/ELF二进制文件分析;
9.文件二进制显示及编辑;
10.等你去发现;

默认行为

1.ARM Mac默认是本地调试;
2.Intel Mac默认是iOS远程调试,所以需要设置iDevice的IP才可以用;
3.Windows默认是Android远程调试,你只需要在启动A64Dbg之前执行adb forward tcp:30333 tcp:30333就可以正常使用;
a64dbg-server默认启动端口是30333;

1
下面我们以iOS/Android远程调试为例简要介绍一下核心功能。

准备工作

1
2
3
首先在远程设备,运行a64dbg-server,具体信息参考:https://gitee.com/geekneo/A64Dbg 。
如果你是安卓设备,则还需要:adb forward tcp:30333 tcp:30333
如果你是iOS设备,则还需要在A64Dbg偏好设置里面配置远程IP参数(当前版本不支持usbmux端口转发,所以请填写WiFi IP):

图片描述

1
配置好调试模式和参数,启动A64Dbg之后,一切妥当的输出如下:

图片描述
图片描述

调试模式

1.选择文件:ARM Mac、Android支持该选项,通常用于Launch Command Line程序;
2.附加进程:ARM Mac、iOS、Android均支持,用于Attach到运行中的程序;
当前版本还不支持Launch App。
iOS:
图片描述
图片描述

 

Android:
图片描述
图片描述

1
由于是远程调试,因此有些文件是从设备下载到本地的,对于一些大文件以及iOS特有的加密MachO的问题,下载会非常慢或者无法反汇编。这时,你只需要提前将对应的二进制文件放在如下目录就可以了:
1
~/A64Dbg/decache/iOS

图片描述

内置命令行

LLDB:执行lldb本身的命令;
PyLLDB:执行lldb python解释器的命令;
TarShell:执行远程设备的shell命令行;
图片描述
图片描述

调试菜单

图片描述
图片描述
图片描述
图片描述

1
其中Refresh是A64Dbg相比于OllyDbg、X64Dbg这种本地调试器特有的,那就是刷新当前显示内容对应的内存页缓存,这是从远程设备读取到本地的一个拷贝,默认是30s丢弃更新。

模块列表

A64Dbg有自己的二进制分析数据库,存放路径在如下位置:

1
2
macOS: ~/A64Dbg/database
Windows: 系统盘:\用户\User\A64Dbg\database

图片描述
图片描述

1
我们可以通过View/Functions查看当前CPU窗口对应模块的函数列表:

图片描述

1
2
其他功能,与OllyDbg、X64Dbg类似,朋友们请自行摸索学习。另外,Trace和Plugin功能还未开放。
最后,希望你喜欢我们的这款产品,么么哒。

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

最后于 2020-12-31 20:00 被GeekNeo编辑 ,原因: 标题。
收藏
点赞15
打赏
分享
最新回复 (49)
雪    币: 1662
活跃值: (3569)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
GeekNeo 2 2020-12-31 20:05
2
0
2021/1/1零点以后即可在:https://gitee.com/geekneo/A64Dbg  下载使用了。
雪    币: 2099
活跃值: (4146)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
默NJ 2020-12-31 20:08
3
0
太强了,支持一下
雪    币: 9934
活跃值: (2554)
能力值: ( LV6,RANK:87 )
在线值:
发帖
回帖
粉丝
Lixinist 1 2020-12-31 20:11
4
0
支持,点赞
雪    币: 12607
活跃值: (14320)
能力值: ( LV13,RANK:400 )
在线值:
发帖
回帖
粉丝
wmsuper 7 2020-12-31 20:21
5
0
太强了
雪    币: 383
活跃值: (3442)
能力值: ( LV5,RANK:69 )
在线值:
发帖
回帖
粉丝
小菜鸟一 2020-12-31 20:52
6
0
666
雪    币: 477
活跃值: (1412)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
mb_foyotena 2020-12-31 20:54
7
0
安卓也有od了
雪    币: 62
活跃值: (1255)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
fgzhanhao 2020-12-31 20:59
8
0

话说我去年花了半年时间也写了个

雪    币: 477
活跃值: (1412)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
mb_foyotena 2020-12-31 21:23
9
0
fgzhanhao 话说我去年花了半年时间也写了个
大佬藏私货
雪    币: 178
活跃值: (134)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
pmma 1 2020-12-31 22:22
10
0
大佬能否支持一下linux
雪    币: 1662
活跃值: (3569)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
GeekNeo 2 2020-12-31 23:32
11
0
pmma 大佬能否支持一下linux
用物理机装linux还搞Android的人多么?
雪    币: 1662
活跃值: (3569)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
GeekNeo 2 2020-12-31 23:34
12
0
fgzhanhao 话说我去年花了半年时间也写了个
你这个armv7的,正好和A64Dbg的armv8互补,发出来大伙儿用用。
雪    币: 62
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
郑南城 2020-12-31 23:36
13
0
需要账号登录才可以下载,哪位大佬分享一份。先谢谢了;
雪    币: 59
活跃值: (1481)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
zbzb 2021-1-1 00:13
14
0
哈哈,大赞!感谢分享
雪    币: 62
活跃值: (1255)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
fgzhanhao 2021-1-1 01:36
15
0
GeekNeo 你这个armv7的,正好和A64Dbg的armv8互补,发出来大伙儿用用。
实际上 arm arm64 x86 x64 都能调试 这些窗口都自己写的 大概搞得差不多 有些gui功能 还没写完美
雪    币: 62
活跃值: (1255)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
fgzhanhao 2021-1-1 01:39
16
0
GeekNeo 你这个armv7的,正好和A64Dbg的armv8互补,发出来大伙儿用用。
我最开始自己写了个调试server 发现不稳定 换了gdb mi 就是 解析gdb的字符串输出 发现lldb高级点 又搞了个Lldb mi 最后发现 可以直接调用lldb lib  目前效果最好 速度最快
lldb 现在好像不支持 win 远程调试 也没有开发库 我这个目前只能在linux mac 使用
雪    币: 62
活跃值: (1255)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
fgzhanhao 2021-1-1 01:40
17
0
GeekNeo 你这个armv7的,正好和A64Dbg的armv8互补,发出来大伙儿用用。
如果需要的话 我花点时间完善下 发出来 基本调试没问题 有些窗口功能没搞完善
目前调试lldb lib 效果最好 跟原生一样
雪    币: 1662
活跃值: (3569)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
GeekNeo 2 2021-1-1 09:09
18
0
fgzhanhao 我最开始自己写了个调试server 发现不稳定 换了gdb mi 就是 解析gdb的字符串输出 发现lldb高级点 又搞了个Lldb mi 最后发现 可以直接调用lldb lib 目前效果最好 速度 ...
诺,拿我这个去封装吧:https://gitee.com/geekneo/A64Dbg-Win/tree/master/lldb
雪    币: 2863
活跃值: (1602)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
chixiaojie 2021-1-1 09:10
19
0
fgzhanhao 如果需要的话 我花点时间完善下 发出来 基本调试没问题 有些窗口功能没搞完善 目前调试lldb lib 效果最好 跟原生一样
私藏枪枝弹药被发现后果很严重的,赶紧交出来可以减轻刑罚。
雪    币: 21912
活跃值: (3617)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
huangyalei 2021-1-1 09:24
20
0
郑南城 需要账号登录才可以下载,哪位大佬分享一份。先谢谢了;
链接:https://pan.baidu.com/s/1M-x165ccwS-R3CGlX1dT3A 
提取码:a5bn 
复制这段内容后打开百度网盘手机App,操作更方便哦--来自百度网盘超级会员V1的分享
雪    币: 5522
活跃值: (16460)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
wusha 2021-1-1 09:49
21
0
谢谢分享,点赞
雪    币: 213
活跃值: (913)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
asuralove 2021-1-1 10:31
22
0

感谢分享试试看~

最后于 2021-1-1 10:33 被asuralove编辑 ,原因:
雪    币: 8050
活跃值: (5245)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
mudebug 2021-1-1 12:41
23
0
谢谢分享,点赞
雪    币: 178
活跃值: (134)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
pmma 1 2021-1-1 16:23
24
0

说实话,物理机搞linux再撸其他的不多,但是如果能支持一下就最好了

最后于 2021-1-1 16:24 被pmma编辑 ,原因:
雪    币: 5485
活跃值: (3247)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
尐进 2021-1-1 17:44
25
0
666
游客
登录 | 注册 方可回帖
返回