2022-08-243628次浏览
0评论
8收藏
2点赞
分享
最近刚好有个有趣的新闻,《GTA5要跑19.8亿次if!黑客修改后直接省70%加载时间》(链接在这里)。文章中介绍的“黑客”就是一位逆向分析工程师。
逆向分析工程师就是要在不掌握程序源代码的情况下,有目标地分析程序,找出其中有bug或者可优化的地方,然后反馈给程序的作者甚至如文章中描述的“hook”方法进行修复。
咱们这个岗位主要服务于PC平台上的Android模拟器。模拟器与手机的环境是有差异的,一些在手机上能正常运行的应用,运行在模拟器上可能会遇到各种各样的问题,有很多时候需要逆向分析应用的逻辑来解决,使应用能以更稳定更高性能的表现运行在模拟器上。这就是这个岗位的目标。
最重要的一点是:大胆猜想,小心求证。逆向分析从来不是一步到位的过程,而是不断反复猜想逻辑和验证猜想的循环过程,每一次循环,都能更进一步地接近真相。这也是逆向分析吸引人的地方,探索的成就感无与伦比。
1. 探索应用或非开源库的逻辑,并尝试优化和解决它们在模拟器上运行的问题;
2. 开发调试工具,以快速地响应新发现的问题;
3. 对模拟器系统进行深入至机器指令级别的优化。
正在分析游戏的行为
1. 对Linux/Android系统更深入的了解;
2. 调试工具的使用和二次开发;
3. 汇编/机器指令以及CPU/内存的工作方式;
4. 对C/C++语言和编译器更深入的理解。
1. 与其他逆向分析工程师的思维交流。在工作中,有时候你自己的分析会进入瓶颈,如果向其他逆向分析工程分享一下当前的分析状态,自己的思路等,即使对方对你的工作没有全面的了解,只要有一个简单的猜想,就会给你提供一种全新的思路。如果验证后发现果然如此,这种能得到队友帮助的感觉真是非常棒。逆向分析这项工作一加一要远远大于二。
2. 公司里的游戏部门在对新开发的游戏测试过程中,发现问题时,经常会与我们项目组进行联调,以定位问题的原因。这也是逆向分析工程师最能发挥的时候,依靠我们对系统底层、分析工具的透澈理解,定位游戏的bug甚至能比游戏的开发者还要快,这种成就感也是满满的。
PS:网易互娱2022届“将星N计划”暑期实习生招聘-逆向分析工程师岗位如下,欢迎童鞋们投递!
逆向分析工程师:
评论 0