本文作者:HAI_ 0×00 前言 来看看我们今天的主题. 让你自由自在脱壳的热身运动. 现在很多第厂家都是使用第三方的加固方式来进行加固的.或者使用自己的加固方式进行加固. 那么我们必不可少的就是脱壳这个过程. 想要脱壳?看大佬步骤? 还是要知其然也要知其所以然才能进步. 内容 1.一个好用的工具简单教程(Insight) 你可以学到什么? 一个超级厉害的分析辅助软件. 2.Android 优化过程分析 你可以学到什么? 1.深度了解Android 优化过程2.近距离观察Android 源码2…
本文作者:i春秋作家——HAI_ 0×00 前言 HAI_逆向使用手册(想尝试一下新的写法) 其他 Android逆向进阶 系列课程 <<<<<<< 人物说明 小白:已经掌握了一些基础的逆向技能的菜鸟.小红:小白的女朋友.大白:小白的师傅. 竹山(大白居) 师傅师傅,我今天下山听见有人说,江湖中出现了一种为Hook的武林秘籍.据说十分厉害,可以拦截System.拦截程序猿开发的出来app. 小白啊,你知道什么是Hook吗. 听说过,但是却不明白什么是hook. H…
本文作者:i春秋作家HAI_ZHU 0×00 前言 市面上的资料大多都是基于Dalvik模式的dump,所以这此准备搞一个ART模式下的dump.HAI_的使用手册(各种好东西) Dalvik模式是Android 4.4及其以下采用的模式,之后到了Android 5.0 之后就是ART模式,关于这两个模式的详细内容,请自行百度,如果在文章看不来的地方,可以翻翻之前的文章.如果有问题也可以私聊我. 废话不多说,直接上操作. 内容:demo 动态 dump 出 dex文件 环境说明 1.系统 小米…
Android逆向之旅---动态方式破解apk进阶篇(IDA调试so源码) 来源 https://blog.csdn.net/jiangwei0910410003/article/details/51500328 一.前言 今天我们继续来看破解apk的相关知识,在前一篇:Eclipse动态调试smali源码破解apk 我们今天主要来看如何使用IDA来调试Android中的native源码,因为现在一些app,为了安全或者效率问题,会把一些重要的功能放到native层,那么这样一来,我们前篇说到的…
你们发现了吗?Android逆向.安全方面的工程师真的越来越"稀有"了. 以腾讯.美团.百度为代表的大厂们,在某招聘网站上居然薪酬高达30-60k. 现在移动端市场越来越火热,APP越来越多, 经常有APP爆出窃取个人隐私.强行定位.拉取通讯录好友信息等各种霸道条款,还有很多病毒是我们不知道的. 因此APP安全将面临巨大的市场,而安卓逆向就能解决APP安全的问题,逆向APP一攻一防才能知道问题出来哪里,用什么办法解决. 但是安卓逆向是一个杂学,要学的技能很多,考验的是知识广度+深度+经…
1. 实战背景由于工作需要,要爬取某款App的数据,App的具体名称此处不便透露,避免他们发现并修改加密逻辑我就得重新破解了. 爬取这款App时发现,抓包抓到的数据是加密过的,如图1所示(原数据较长,图中有省略),可以看到这个超长的data1字段,而且是加密过的.显然,对方不想让我们直接拿到它的信息,选择传过来一个加密的字段,而我们要做的,就是解密这个字段. 图1  数据包截图 2. 问题分析既然服务器返回了一段无法阅读的加密数据,那么必然,这段数据是在客户端进行解密的.因此,我们要做的就是找出…
原文:https://www.jianshu.com/p/71fb7ccc05ff 0.写在前面 本文是笔者自学笔记,以破解某目标apk的方式进行学习,中间辅以原理性知识,方便面试需求. 参考文章的原文链接会附在相应流程位置,方便阅读学习.   逆向分析流程.jpg 1.获取目标apk 第一步是拿到目标安装包文件,这一步很简单,可以在主流的第三方市场内获取,但是主流的第三方市场都要求应用加固,为了之后方便,笔者常常去app的官网下载,或者去一些小市场下载,运气好的话能下载到他们的未加固版本. 2…
2021年正确的Android逆向开发学习之路 说明 文章首发于HURUWO的博客小站,本平台做同步备份发布.如有浏览或访问异常或者相关疑问可前往原博客下评论浏览. 原文链接 2021年正确的Android逆向开发学习之路直接点击即可前往访问. 前言 在做从正向的程序开发转到逆向开发的两年里,深切体会到两种开发的不同.尤其是学习道路这一块走了很多的弯路,当然我现在也不是厉害的逆向.所以所有的看法仅代表个人意见,如有不同看法请在评论区打出来. 正向开发为什么容易学习 以普通的Android开发为例…
本文来源:带动行业内卷,渣总义不容辞 字越少事儿越大,请关注github(可以点击阅读原文): https://github.com/virjarRatel 平头哥(ratel)是一个Android逆向分析工具套件,他提供一系列渐进式app逆向分析工具. 同时平头哥也是一个app二次开发的沙箱环境,支持在免root环境下hook和重定义app功能. 对于大部分app来说,平头哥打开了潘多拉魔盒, 请不要在授权之外违法使用平头哥 (仅建议用于个人定制化使用.app攻防安全研究等领域), 在rate…
一.在SO中关键函数上下断点 刚学逆向调试时.大多都满足于在SO中某关键函数上下断点.然后通过操作应用程序,去触发这个断点,然后进行调试 详细的步骤可以参见非虫大大的<Android软件安全与逆向分析> 简单说:在libsyclover.so文件中有一个函数jnicall1.每次单击按钮的时候,便会调用此函数. 1.静态载入此so文件,找到函数的偏移地址为:0x132C 2.执行android_server3.端口转发 adb forward tcp:23946 tcp:23946 4.运行程…
断断续续的总算的把android开发和逆向的这两本书看完了,虽然没有java,和android开发的基础,但总体感觉起来还是比较能接收的,毕竟都是触类旁通的.当然要深入的话还需要对这门语言的细节特性和奇技淫巧进行挖掘. 这里推荐2本书,个人觉得对android开发入门和android逆向入门比较好的教材: <google android 开发入门与实战> <android 软件安全与逆向分析> 1. 我对android逆向的认识 因为之前有一些windows逆向的基础,在看andr…
  Android 高手进阶(21)  版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请注明地址:http://blog.csdn.net/xiaanming/article/details/10298163 很多的时候,系统自带的View满足不了我们功能的需求,那么我们就需要自己来自定义一个能满足我们需求的View,自定义View我们需要先继承View,添加类的构造方法,重写父类View的一些方法,例如onDraw,为了我们自定义的View在一个项目中能够重用,有时候我们需要自定义…
  分类: Android高手进阶 Android基础教程 2012-09-14 18:10 29759人阅读 评论(35) 收藏 举报 android相册layoutobjectclassloaderencoding 大家好,相信大家用的ListView控件一定很多的,是竖向滑动的,复用convertView,我们可以加载成千上万的数据,但有时候我们会有 这个需求比如相册,我们想横向滑动,并且数据有好多,这时候ViewPager控件就派上用场了,ViewPager使用时候我们需要导入第三方包…
一般是针对包含多个元素的View,如ListView,GridView,ExpandableListview,的时候我们是给其设置一个Adapter.Adapter是与View之间提供数据的桥梁,也是提供每个Item的视图桥梁. 以ListView为例,其工作原理为: ● ListView针对List中每个item, adapter都会调用一个getView的方法获得布局视图 ●我们一般会Inflate一个新的View,填充数据并返回显示 当然如果我们的Item很多话(比如上万个),都会新建一个…
android UI进阶之用ViewPager实现欢迎引导页面 摘要: ViewPager需要android-support-v4.jar这个包的支持,来自google提供的一个附加包.大家搜下即可.ViewPager主要用来组织一组数据,并且通过左右滑动的方式来展示.现在的大多数应用都会有一个欢迎引导页面,如图所示,通过左右滑动来告知用户一些功能特性.这个引导图效果用ViewPager可以很轻松的实现.正如前面所说,ViewPager是用来展示一组数据的,所以肯定需要Adapter来绑定数据和…
Android高手进阶--Adapter深入理解与优化 通常是针对包括多个元素的View,如ListView,GridView.ExpandableListview,的时候我们是给其设置一个Adapter.Adapter是与View之间提供数据的桥梁,也是提供每一个Item的视图桥梁.   以ListView为例.其工作原理为: ● ListView针对List中每一个item, adapter都会调用一个getView的方法获得布局视图 ●我们通常会Inflate一个新的View,填充数据并返…
Android开发者博客推荐 Android入门级 - 罗宪明 http://blog.csdn.net/wdaming1986 Android入门级 - 魏祝林 http://blog.csdn.net/Android_Tutor Android入门+进阶 张国威 没错吧? http://blog.csdn.net/hellogv Android学习指南,文章没填满空,帖子编辑的很好推荐 http://android.yaohuiji.com/about JNI Android 多媒体 Jav…
因为工作需要,转型干android逆向,有几个月了.不过对于so的逆向,任然停留在,难难难的阶段,虽然上次自己还是逆向了一个15k左右的小so文件,但是,那个基本是靠,一步一步跟代码,查看堆栈信息来自己得到的结论. 下面来说说,什么是半自动化吧,我是这样认为的. 很多时候,由于so只是一个加密算法,或者什么操作,并且相当复杂,所以我们并不需要对他进行完全逆向,因为那样很麻烦. 版本1. 自己写一个app,使用某个需要逆向算法的so文件,然后在app中调用那个算法.使用http协议提供接口,供ex…
No1: 客户端与服务器的交互流程: 1)客户端执行网络请求,从URL中解析出服务器的主机名 2)将服务器的主机名转换成服务器的IP地址 3)将端口号从URL中解析出来 4)建立一条从客户端与Web服务器的TCP连接 5)客户端通过输出流向服务器发送一条HTTP请求 6)服务器向客户端回送一条HTTP响应报文 7)客户端从输入流获取报文 8)客户端解析报文,关闭连接 9)客户端将结果显示在UI上 No2: HTTP请求方式: 1)GET 获取服务器中某个资源,www.devtf.cn/artic…
前言 移动研发火热不停,越来越多人开始学习android开发.但很多人感觉入门容易成长很难,对未来比较迷茫,不知道自己技能该怎么提升,到达下一阶段需要补充哪些内容.市面上也多是谈论知识图谱,缺少体系和成长节奏感,特此编写一份android研发进阶之路,希望能对大家有所帮助. 这篇文章里,我们只谈技术,不谈软技能. 在这里我把攻城狮分成初级.中级.高级和资深四个阶段,分别对研发设计能力.工具使用.系统原理和架构等作出要求. 初级 我对初级研发攻城狮的定义是掌握基础的android知识,能够独立完成…
Android逆向破解表单注册程序 Android开发 ADT: android studio(as) 程序界面如下,注册码为6位随机数字,注册成功时弹出通知注册成功,注册失败时弹出通知注册失败. 布局代码 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"…
Android逆向破解表单登录程序 Android开发 ADT: android studio(as) 程序界面如下,登录成功时弹出通知登录成功,登录失败时弹出通知登录失败. 布局代码 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app=&…
想必打过CTF的小伙伴多多少少都触过Android逆向,所以斗哥将给大家整一期关于Android逆向的静态分析与动态分析.本期先带来Android逆向的静态分析,包括逆向工具使用.文件说明.例题解析等. Android逆向就是反编译的过程,因为看不懂Android正向编译后的结果所以CTF中静态分析的前提是将出现文件反编译到我们看得懂一层源码,进行静态分析. 0X01 基础说明 Android应用的逻辑代码是由Java进行开发,所以是第一层就是java代码Java虚拟机JVM运行的是java文件…
<Android高级进阶>是据我所知的市面上唯一一本技术工具书,比较的高大全,作者的目的是为了对全领域有个初步的概念 No1: 在Android系统中,拥有事件传递处理能力的类有以下三种 1)Activity:拥有dispatchTouchEvent和onTouchEvent两个方法 2)ViewGroup:拥有dispatchTouchEvent.onInterceptTouchEvent和onTouchEvent三个方法 3)View:拥有dispatchTouchEvent和onTouc…
Android逆向之smali 头信息 smail文件前三行 .class <访问权限> [关键修饰字] <类名>; .super <父类名>; .source <源文件名> .class指令表示当前的类名,类的访问权限是public,类名是Lcom/example/mark/myfirstapp/MainActivity,类开头的L是遵循Dalvik字节码的相关约定,表示后面跟随的字符串是一个类 .super指定了当前类所继承的父类 .source指定了当…
Android逆向基础之Dalvik虚拟机: https://lyxw.github.io/archivers/Android%E9%80%86%E5%90%91%E5%9F%BA%E7%A1%80%E4%B9%8BDalvik%E8%99%9A%E6%8B%9F%E6%9C%BA Android逆向工具: dex2jar 这个工具用于将dex文件转换成jar文件:http://sourceforge.net/projects/dex2jar/files/ jd-gui 这个工具用于将jar文件…
i春秋作家:HAI_ 之前在Android逆向——初识smali与java类中讲解了基本的HelloWorld和简单类.这节课就要进一步深入.如果能够耐下心来分析一定会有所收获.——写给自己和后来人. 0×00 前言 1.内容 1.1 smali复杂类分析(前菜) 1.基本属性2.构造方法3.基本方法4.简单的练习 1.2 smali类相互调用(主菜) 1.两个类相互调用 1.3 小练习(甜点) 1.写一个smali2.调用其他两个类里的方法 0×01 smali复杂类分析 1.java复杂类…
2018-2019 20165226 网络对抗 Exp1+ 逆向进阶 目录 一.实验内容介绍 二.64位shellcode的编写及注入 三.ret2lib及rop的实践 四.问题与思考 一.实验内容介绍 第一个实践是在非常简单的一个预设条件下完成的: (1)关闭堆栈保护 (2)关闭堆栈执行保护 (3)关闭地址随机化 (4)在x32环境下 (5)在Linux实践环境 建议的实践内容包括: Task1 (5-10分) 自己编写一个64位shellcode.参考shellcode指导. 自己编写一个有…
本文作者:HAI_ 0×00 前言 不知所以然,请看 Android逆向-Android基础逆向(1) Android逆向-Android基础逆向(2) Android逆向-Android基础逆向(2-2) Android逆向-Android基础逆向(2-3补充篇) Android逆向-Android基础逆向(3) Android逆向-Android基础逆向(4) Android逆向-Android基础逆向(4-2) Android逆向-Android基础逆向(5) 以及java系列: Andr…
本文作者:i春秋作家——HAI_ 0×00 前言 不知所以然,请看 Android逆向-Android基础逆向(1)Android逆向-Android基础逆向(2)Android逆向-Android基础逆向(2-2)Android逆向-Android基础逆向(2-3补充篇)Android逆向-Android基础逆向(3)Android逆向-Android基础逆向(4)Android逆向-Android基础逆向(4-2) 以及java系列: Android逆向-java代码基础(1) Androi…