GDA-android-reversing-Tool
GDA-android-reversing-Tool copied to clipboard
最新版交叉引用bug-无结果
GDA4.00 apk链接:https://drive.google.com/file/d/16IsdcaQpomtNjnh9F3DnHri9N6cOI57f/view?usp=sharing
类名:qb.feeds.MTT.GetHomepageFeedsTabListsRsp
GDA对类交叉引用:
jadx:
GetHomepageFeedsTabListsRsp有2个类,都是这样的情况,GetHomepageFeedsTabListsReq这个类也是
希望作者大大再细查交叉引用这块的代码,因为我自己反馈过几次交叉引用的bug,可能潜伏的bug不少,交叉引用是很重要的功能,很影响逆向进度
你这里需要做交叉引用的实际上不是类,而是构造函数,你在构造函数中做交叉引用即可。
@charles2gan 最新版4.01怎么会闪退? 还是上面的apk ,点击搜索类 ,输入GetHomepageFeedsTabListsRsp ,点击右边的search ,然后GDA自己关闭了!!!
+1
测试任何apk都会在解析完后,再做交叉引用、搜索会崩溃。发现有一个记录,内容如下
- https://gist.github.com/SeeFlowerX/bf488d6b420fc587bb677d49c957ae0b
使用GDA的时候还是蛮多的,反馈下之前遇到的bug/希望能优化的功能
- 函数内可以把两个变量重命名相同的名字,这个时候再去重命名其中一个,那另一个也会跟着改变
- 如果一个函数内有一句字符串是
ba cc dd
,这个时候把函数内的一个变量名改名为cc
,再把它改名为ee
,这个时候字符串就会变成ba ee dd
;和上一条情况类似...
猜想:改变量名的时候,是对反编译结果直接进行字符串替换?
- GDA不显示注解
- GDA往往一个方法只有一个return,有些if分支该返回,但是反编译结果没有return
- GDA的switch case,case xxx一会儿是case 数字,一会儿是case 字符串(ASCII);如果能统一为数字感觉会方便点
- GDA左下角的过滤功能,如果过滤过一次,就再也无法显示完整的了;JEB中可以清空后再回车显示完整的。
我觉得对类交叉引用 ,可以像jadx的处理 ,只要对类名交叉引用 ,不管它apk调用哪个构造函数 ,都可以找到. 如果想确定它用了哪个构造函数 ,直接从调用处点进去 ,直接定位到调用的构造函数. 我举个例子 ,如果一个类有十几个构造函数 , 我不能对每个构造函数都交叉引用 ,太麻烦了. 如果构造函数超百个.......
@charles2gan 最新版4.01怎么会闪退? 还是上面的apk ,点击搜索类 ,输入GetHomepageFeedsTabListsRsp ,点击右边的search ,然后GDA自己关闭了!!!
今天早上收到大量反馈这个问题。发布前debug一直没这问题,但是没想到release版本竟然有问题,然后我代码也没动,重新编译发布后,这个问题就没了。可能是构建release版本时连接器连接了一个老的目标文件导致,更新到4.02了。
我觉得对类交叉引用 ,可以像jadx的处理 ,只要对类名交叉引用 ,不管它apk调用哪个构造函数 ,都可以找到. 如果想确定它用了哪个构造函数 ,直接从调用处点进去 ,直接定位到调用的构造函数. 我举个例子 ,如果一个类有十几个构造函数 , 我不能对每个构造函数都交叉引用 ,太麻烦了. 如果构造函数超百个.......
jadx交叉引用的机制和GDA不同,jadx是基于反编译后的字符串做了,GDA是基于Method idx实现的交叉引用。不过你建议很好,我可以加一个类的交叉应用,把所有的构造函数包含进去。
+1
测试任何apk都会在解析完后,再做交叉引用、搜索会崩溃。发现有一个记录,内容如下
- https://gist.github.com/SeeFlowerX/bf488d6b420fc587bb677d49c957ae0b
使用GDA的时候还是蛮多的,反馈下之前遇到的bug/希望能优化的功能
- 函数内可以把两个变量重命名相同的名字,这个时候再去重命名其中一个,那另一个也会跟着改变
- 如果一个函数内有一句字符串是
ba cc dd
,这个时候把函数内的一个变量名改名为cc
,再把它改名为ee
,这个时候字符串就会变成ba ee dd
;和上一条情况类似...猜想:改变量名的时候,是对反编译结果直接进行字符串替换?
- GDA不显示注解
- GDA往往一个方法只有一个return,有些if分支该返回,但是反编译结果没有return
- GDA的switch case,case xxx一会儿是case 数字,一会儿是case 字符串(ASCII);如果能统一为数字感觉会方便点
- GDA左下角的过滤功能,如果过滤过一次,就再也无法显示完整的了;JEB中可以清空后再回车显示完整的。
感谢,新版本已经修复了这个莫名其妙的bug,其他问题我收入到待完成清单。
辛苦!