安卓逆向工程师岗位在近年来算是互联网IT行业的香饽饽之一,月薪动辄上万年薪动辄20万,让很多行业内兢兢业业拿一个五六千的外行人士很是羡慕。但是安卓逆向工程是专业技术要求很高的职业,外行人轻易抢不走你的饭碗,因此也有大量的人花很多金钱投资自己,学会了安卓逆向,想要入行分一杯羹。

光学会技术,并不等于就能找到一份好的工作。要找到一个很好的安卓逆向工程师岗位,我们一定不能忽视其中最为重要的环节——面试。
安卓逆向工程师在面试时,需要你掌握什么技能,面试官会怎样考核你?这些东西对于一位安卓逆向求职者来说,至关重要。毕竟相信很多和小编一样愿意花钱学好安卓逆向的人,应该都不是心血来潮,而是真的希望借此技术谋得一份高薪的工作。
安卓逆向工程必须掌握的技能:
必备技能:
1、负责安卓程序的加解密和数据传输分析、拆解、逆向等工作;
2、逆向APK,了解运行过程;
3、Andorid本地提权获得root权限;
4、熟练掌握软件逆向静态分析、动态调试、代码跟踪等;
5、熟悉Android开发,了解打包、反编译、破解流程;
6、so破解、加壳。
面试中对应的具体要求:
1、加解密:一般都是遇到后再折腾解密,而且解密代码和秘钥一般都在代码里面。

2、了解apk的具体含义,结合安卓开发进行反编译。

3、Andorid本地提权获得root权限,一般真机是用recovery刷机包,但是病毒提权是怎么样的,目前掌握的一种提权的是像输入命令行一样输入su并且用pm提权,还有一种是修改init.rc文件。

4、主要掌握ida动态调式和代码跟踪

5、打包,编译和破解的流程是什么样的?

6、so破解:一般就是破壳。如360等。

补充:
加壳的另一种常用的方式是在二进制的程序中植入一段代码,在运行的时候优先取得程序的控制权,做一些额外的工作。大多数病毒就是基于此原理。加壳的程序经常想尽办法阻止外部程序或软件对加壳程序的反汇编分析或者动态分析,以达到它不可告人的目的。这种技术也常用来保护软件版权,防止被软件破解。
安卓逆向工程师的任职要求
岗位职责:

总结下来要求如下:
1、具有丰富的Android开发分析经验,熟悉Android系统架构,熟悉android安全机制;
2、精通汇编语言、Java、C/C++语言,熟悉Smali语言,对逆向工程有浓厚兴趣;
3、熟练掌握ida、gdb逆向分析工具;
4、熟练掌握软件逆向静态分析、动态调试、代码跟踪等;
5、熟悉so和java层hook;
6、熟悉Android开发,了解打包、反编译、破解流程;
7、深入理解arm linux和Android底层运行机制;
8、熟练掌握各种调试工具:Smali、Dedexer、Dexdump、Apktool、Dex2jar、jd-gui。

面试官可能问到的问题?
question:
1.Android的生命周期

onCreate - onStart - onResume-onPause-onStop-onDestory-onRestart

2.Android的入口函数?

继承了application类中的attachContext,onCreate

3.xposed框架的原理及常用函数?
替换system/bin/app_process文件,app_process就是zygote进程文件,所以xposed通过替换zygote进程实现了控制手机上所有app进程
常用函数
(1)findAndHookMethod
(2)findAndHookConstructor hook构造函数
(3)findClass:使用指定的类加载器查找类
(4)findField : 在类中查找自动并将其设置为可访问
(5)CallMethod 调用给定对象的实例或静态方法
(6)newInstance 创建给定类的新实例

4.hook和注入有哪些?
l hook:反射(在程序运行的时候,对任意一个类,都可以获取其方法及变量)
l java的动态代理(smali注入)

5.反调试
l Tracerpid不等于0
l Ptrace自身.
l IsDebuggerConnect。
(这部分内容比较多,反调试可以找我细细给你分析)

机会永远是留给有准备的人,如果你不是天才的话,在进行安卓逆向工程师面试前,最好要做好充足的准备。毕竟一份好的工作如果失去了是最大的损失,也是对自己苦苦学习安卓逆向技术的不尊重、不负责。如果你的安卓逆向技术够硬,那么不妨投一投简历,做好准备,去接受岗位与考核官的审核吧,想系统逆向技术学习的可以联系vx:13140310004,掌握这门技术,现在移动安全 发展前景好!

安卓逆向工程师面试指南【干货】相关推荐

  1. Android 开发工程师面试指南

    原文链接:https://github.com/GeniusVJR/LearningNotes <Android 开发工程师面试指南 LearningNotes >,作者是知乎Androi ...

  2. 视觉工程师面试指南_选择正确视觉效果的终极指南

    视觉工程师面试指南 When it comes to effective data visualization, the very first and also the most critical s ...

  3. 《Android 开发工程师面试指南》

    <Android 开发工程师面试指南> <Android 开发工程师面试指南 LearningNotes >,作者是知乎Android开发工程师陶程,由梁观全贡献部分.大家可以 ...

  4. Android开发工程师面试指南

     Android开发工程师面试指南 功能介绍     给Android开发工程师的一份面试指南,包含面试题集与简历模板. 面试题集 面试题集里的答案大部分来源于我的博客,因此这个题集也相当于是我的博客 ...

  5. 嵌入式软件开发工程师面试指南_总结

    嵌入式软件开发工程师面指南 一.C语言 1.1.局部变量能否和全局变量重名 1.2.如何用C编写死循环 1.2.new和malloc 1.3.static的用法(定义和用途)(必考) 1.4.cons ...

  6. 2021-Java后端工程师面试指南-(SpringBoot+SpringCloud)

    前言 " 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/bin392328206/six-finger 种一棵树最好的时间是十年前,其次是现在 &qu ...

  7. Android安卓逆向工程师

    课程介绍 安卓逆向与游戏安全技术就是使用安卓手机应用机对游戏做破解攻击,以达到测试与逆向调试.安全分析.应用保护等效果.学习这门技术主要从事安全岗位就业,或者是自己兼职做项目测试获得赏金.安卓逆向工程 ...

  8. 数据挖掘工程师面试指南

    http://www.itongji.cn/article/122014K2012.html 数据挖掘工程师面试指南 发表于 2012-12-21 01:09 来源:xccds1977.blogspo ...

  9. UC-Android逆向工程师面试第2题分析

    博客链接:http://blog.csdn.net/qq1084283172/article/details/52133172 一.简介 这个题目是别人面试UC优视集团Android逆向工程师一职位的 ...

最新文章

  1. 翻译:XtraDB/InnoDB中的AUTO_INCREMENT处理方式(已提交到MariaDB官方手册)
  2. C语言中函数如何返回结构体?
  3. 【研发管理】华为十大架构与设计核心原则
  4. QT的QRadioButton类的使用
  5. css—盒子模型理解
  6. geany搭建python环境_第一章:搭建Python的开发环境
  7. transform再次理解
  8. 【华为云技术分享】唐老师带你秒懂大数据,以及Spark和Flink在干啥咧
  9. CSDN博客代码块语法高亮
  10. 重庆python爬虫培训_PYTHON爬虫工程师
  11. matlab中sr锁存器,大家一致避免使用的锁存器为什么依然存在于FPGA中?我们对锁存器有什么误解?...
  12. 用python画箱线图_python绘制箱线图
  13. LambdaQueryWrapper构建查询条件、模糊查询、范围查询、排序
  14. 用java编写英寸到厘米的转换_java-将英寸转换为英尺和英寸
  15. 半导体芯片行业的运作模式(IDM/Fabless/Foundry模式)
  16. php 数组处理方法,关于PHP数组问题的处理方法
  17. ubuntu snap 安装的nextcloud 忘记管理员密码,重新设置密码。
  18. win10计算机屏幕暗怎么办,win10屏幕调到最亮还是很暗怎么办
  19. vue项目中使用ttf字体
  20. 玉堂金阙百度云php100,玉堂金阙(全二册)

热门文章

  1. 常微分方程王高雄第三版--第一章绪论--Julia实现
  2. jQuery图片批量上传插件源码,支持批量上传、预览、删除、放大,可配置上传数量、上传大小、追加方式,含详细使用文档
  3. 微信小程序前端RSA加解密
  4. 锁定微鲸VR 直通2017江苏卫视跨年演唱会现场
  5. 无人机学习笔记之电机篇
  6. python中使用正则表达式去除中文文本多余空格,英文之间的保留
  7. 11周3-2项目-警察和厨师为Polic类和Cook类增加了对象成员,请扩充代码
  8. 阿里云ET城市大脑新突破:行人检测与识别破世界纪录
  9. python hackrf_GnuRadio在HackRF打开的情况下无法运行OS X 10.9.4
  10. 将nginx作为视频点播服务器