当前位置: 首页 > news >正文

使用调试器调试某UE4手游

在刚接触安卓的时候,多么希望有一款像windows上od和x64dbg那样的调试器,但是奈何能接触到的调试器太少了,好在安卓可以编译驱动,能够让我们的程序拥有内核的权限,在runtime的情况下修改内核。于是我便像学习windows调试器那样自建调试体系,制作一款不需要ptrace就能调试程序的调试器。写完基本的调试功能之后,我便寻找了一款海外的ue4手游练练手,简单地找下存储了FNamePool的基址。

首先在ida中找到FNamePool初始化的地方,如下图:

不难猜出s就是申请的FNamePool,而s最后存储到v7中去,而v7最后来源于v2,v2来源于sub_81DB440函数的返回值。

进入到sub_81DB440里边去,如下图:

在sub_81DB440函数里边有一大堆让人眼花缭乱的计算,光看伪代码,难以找出返回值的来源。于是我选择调试这段函数,在调试前观察下返回值的来源,如下图:

最后返回值来源于[x8],而x8来源于[SP,#0xE0+var_A0](SP+0x40处)。我只需要在调试的过程中一步一步观察SP+0x40地址处内存的变化,然后记录下导致SP+0x40处内存发生变化的指令就行了。

首先在函数头下好断点:

在单步调试的过程中,发现在如下图:

在执行完0x64ecf34d638处的str x11,[x10]的指令后,SP+40就发生了变化,看下ida中的伪代码如下:

在调试的过程中这里的循环经历了三次,最后一次是对应了sp+0x40地址处的变化(好在函数体不是很大,调试起来比较轻松,sp+0x40地址处就写了这一次内存),而SP+0x40的值是来源于x10处,在进入循环之后发现x10的值来源于qwrod_E77F6A8,而经历了三次循环,在调试器中发现相当于:

[SP+0x40]=[[[qwrod_E77F6A8]]];而返回值最终为[[SP+0x40]]也就是[[[[qwrod_E77F6A8]]]],最终发现与GNamePool相关联的基地址为libUE4.so+0xE77F6A8。

本人其实是不太会逆向UE4,也不研究外挂,此次调试游戏也只是测试下编写的调试器,如果有错误恳请诸位大佬指正。目前调试器正在开发中。

目前调试支持的功能:

1.设置软件断点。

2.设置硬件断点(不使用linux的perf体系)

3.接管程序异常(信号)。

4.追踪线程创建、死亡、fork事件。

5.单步调试。

6.暂停线程(进程)。

调试器目前不依赖信号,但是只是玩具罢了,很难用,就驱动比较稳定,估计也会遇到难以应付的场景,并且我不一定能够开发完,就当是学习一下linux内核和ARM64一些底层相关的东西了。后续会增加如何设置内存断点和追踪系统调用,考虑开放源代码。

http://www.gsyq.cn/news/194962.html

相关文章:

  • YOLOFuse体育馆赛事安保:人群冲撞风险预测
  • YOLOFuse罐头食品封口检查:胀罐隐患提前发现
  • 一文说清usb_burning_tool刷机工具的镜像定制原理
  • YOLOFuse危化品仓库温控监测:异常发热及时告警
  • 新手必看:ECU实现UDS 28服务的基础原理
  • React Native新手必读:模拟器与真机调试全解析
  • YOLOFuse如何导出ONNX模型?后续部署转换教程
  • javaSE接口随笔
  • YOLOFuse加油站安全监管:烟火风险实时探测
  • UVC驱动开发实战:多摄像头并发处理方案设计
  • [特殊字符]️_开发效率与运行性能的平衡艺术[20260101165644]
  • YOLOFuse远程医疗会诊辅助:患者体征初步判断
  • YOLOFuse边境巡逻应用:非法越境实时警报系统
  • YOLOFuse洪水淹没范围评估:无人机红外航测
  • YOLOFuse牛奶消毒过程监控:包装完整性检验
  • YOLOFuse无人机避障系统:复杂光照条件鲁棒检测
  • YOLOFuse山体滑坡前兆识别:地表移动与热异常
  • USB配置描述符错误排查:完整指南与修复方法
  • YOLOFuse宠物走失识别:小区公共区域搜寻协助
  • YOLOFuse地铁安检违禁品识别:X光+红外辅助判断
  • 解决CNN训练中的TypeError:深入探讨tqdm使用
  • NSE India网站请求超时问题的解决方案
  • Screen to Gif新手教程:零基础快速上手指南
  • 探索数据库设计:确保唯一性映射
  • 别再说“前端很简单”了:有时候,前端比后端更难
  • YOLOFuse农业病虫害监测潜力分析:白天+夜间双模
  • 轻量级应用日志捕获与显示
  • 20260101 之所思 - 人生如梦
  • YOLOFuse适合安防场景吗?夜间红外融合检测实测有效
  • YOLOFuse推理可视化效果展示:exp文件夹图片导出