一、我的资料:1、返回样式getSupportActionBar().setDisplayShowHomeEnabled(false);
getSupportActionBar().setDisplayShowTitleEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);2、编辑头像和刷新android:id="
转载
2024-01-09 18:56:35
81阅读
原谅我见识短浅,Android竟然还能这么玩!!什么是Hook首先我们来了解一下,什么是Hook?Hook有什么用?我们都知道有一种设计模式 - 模板方法模式,原理是父类定义多个方法,但是不实现任何内容,然后将这些方法组合起来,来实现某种功能。 其中的没有实现的方法我们就称之为“Hook”钩子方法,主要目的是留给子类定制自己的东西。而这里的Hook有点不一样,运用反射技术和代理模式,以实现改变A
转载
2023-08-05 13:05:43
110阅读
需求:给一个目标apk,要求hook它的native层代码,但是不能修改它原本的so文件。实现方法:通过/proc/pid/maps查看目标so文件加载到内存的基址,然后利用ida查看目标函数在so文件的内存偏移,两个数字相加得到目标函数的内存地址,然后利用Android-Inline-Hook框架编写c文件,编译生成so文件,再修改apk中的smali文件,加载我们的so文件,从而达到hook的
转载
2023-11-05 20:42:15
220阅读
1、Hook基本概述Hook翻译过来是钩子的意思,我们都知道无论是手机还是电脑运行的时候都依赖系统各种各样的API,当某些API不能满足我们的要求时,我们就得去修改某些api,使之能满足我们的要求。这样api hook就自然而然的出现了。我们可以通过api hook,改变一个系统api的原有功能。基本的方法就是通过hook“接触”到需要修改的api函数入口点,改变它的地址指向新的自定义的函数。当然
转载
2023-09-19 07:24:27
181阅读
全局符号表(GOT表)hook实际是通过解析SO文件,将待hook函数在got表的地址替换为自己函数的入口地址,这样目标进程每次调用待hook函数时,实际上是执行了我们自己的函数。 GOT表其实包含了导入表和导出表,导出表指将当前动态库的一些函数符号保留,供外部调用,导入表中的函数实际是在该动态库中调用外部的导出函数。 这里有几个关键点要说明一下: (1) so文件的绝对路径和加载到内存
转载
2023-08-30 20:08:09
316阅读
随着Android设备上的隐私安全问题越来越被公众重视,恶意软件对用户隐私,尤其是对电话、短信等私密信息的威胁日益突出,各大主流安全软件均推出了自己的隐私行为监控功能,在root情况下能有效防止恶意软件对用户隐私的窃取,那么这背后的技术原理是什么?我带着疑问开始一步步探索,如果要拦截恶意软件对电话、短信等API的调用,在Java或者Dalvik层面是不好进行的,因为这些层面都没有提供Hook的
转载
2024-01-28 00:38:58
74阅读
文章目录前言Hook So有导出so层hook无导出so层hookSo层实战hook脚本的编写hook脚本的效果总结 前言我在前面的一篇博客 CTF逆向-EasySo世界SO层反汇编 中记录了对一道 CTF 逆向题目的 Android APP 的 So 层函数进行基础的逆向分析的过程,通过 IDA 反汇编查看 So 层代码并分析获得了 Flag 值。生命在于折腾~本文将记录尝试通过 Frida
转载
2023-07-06 15:58:26
166阅读
在有些情况下,可能遇到需要改变目标进程的执行流程的问题,替换原函数转而指向我们自己的函数,而Hook就是指的改变待Hook函数的地址,替换地址而达到更换原函数的功能。本文主要介绍Android上对native层中的so库Hook的方法,核心技术其实是对GOT表的Hook,获取目标函数地址需要对so文件进行解析,而so文件实际上是ELF文件,所以在此之前需要对ELF文件格式有一个很好的了解。关键解析
转载
2023-07-24 22:28:26
118阅读
Android系统使用了ClassLoader机制来进行Activity等组件的加载;apk被安装之后,APK文件的代码以及资源会被系统存放在固定的目录(比如/data/app/package_name/1.apk)系统在进行类加载的时候,会自动去这一个或者几个特定的路径来寻找这个类;但是系统并不知道存在于插件中的Activity组件的信息,插件可以是任意位置,甚至是网络,系统无法提前预知,因此正
转载
2023-10-12 09:07:10
258阅读
原理分析ADBI是一个著名的安卓平台hook框架,基于 动态库注入 与 inline hook 技术实现。该框架主要由2个模块构成:1)hijack负责将so注入到目标进程空间,2)libbase是注入的so本身,提供了inline hook能力。源码目录中的example则是一个使用ADBI进行hook epoll_wait的示例。hijackhijack
转载
2023-08-31 11:31:24
328阅读
对于Android应用安全研究人员来说,Xposed想必一定不陌生。作为一款流行的应用hook框架,Xposed允许对应用进行无感知的hook。许多实用工具,例如早期的脱壳工具Zjdroid,关闭证书强校验的JustTrustMe,Android恶意应用分析沙盒Cuckoo-Droid等,均是通过Xposed完成。然而,从Android 5.0时代起,DVM模式被ART模式取代,代码执行的机制进行
转载
2024-01-26 22:05:23
63阅读
本帖最后由 PJ头狼 于 2016-9-26 18:00 编辑之前对于Cydia Substrate这个框架的使用及如何hook到Android的Java层,是在学习了鬼哥的Hook Android Java这几天自己开始深入来学习Cydia Substrate这个框架在Hook Android C上的使用,但一开始对Android native的开发不怎么了解,所以直接通过学习这方面的博文容易碰
# Android实现so的hook
在Android开发中,我们经常需要对系统的某些函数进行hook操作,以实现一些特定的定制功能或者安全控制。其中,hook系统的so库是一个常见的需求。下面将介绍如何在Android应用中实现so库的hook操作,并提供代码示例。
## 什么是hook
在计算机领域中,hook是指在程序执行过程中,通过某种手段拦截或者篡改程序的正常执行流程。在Andro
原创
2024-02-27 05:39:56
384阅读
3.针对Hook的不同进程上来说,还可以分为:全局Hook;单个进程Hook;常见 Hook 框架在Android开发中,有以下常见的一些Hook框架:Xposed通过替换 /system/bin/app_process 程序控制 Zygote 进程,使得 app_process 在启动过程中会加载 XposedBridge.jar 这个 Jar 包,从而完成对 Zygote 进程及其创建的 Da
# Android 逆向与 Frida Hook SO 文件指南
在这篇文章中,我将带你逐步了解如何使用 Frida 逆向 Android 应用程序中的共享库(SO文件)。以下是整个流程概述,以及每一步的详细说明和代码示例。
## 整体流程
下面是整个操作的流程,我们将逐步进行说明:
| 步骤 | 任务 |
|------|---------
原创
2024-09-22 03:49:06
938阅读
Hook_AndroidCydia HOOK新建工程在工程中找到 libs 文件夹,将 jar 包拷贝到文件夹中设置 jar 包为依赖(类似在 c++中导入一个 lib,写了一个 #param comment(lib,”user32”))在清单文件中指定权限和入口类<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:and
一、前言 总结一下这两天学习的Android注入so文件,通过遍历got表hook函数调用 1.注入so文件 2.so文件中遍历got表hook函数 二、注入so文件 1)注入进程 1.编程思路分为以下几个步骤 ①.每个进程都在/proc目录下,以进程id为文件夹名,所以可以通过/proc/<pid>/cmdline文件中中读取进程名称,和我们需要注入
转载
2023-10-25 05:24:15
280阅读
目前比较流行的主题样式 (4.0以后的主题)AppThemeTheme.AppCompat 例如:<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"><style name="AppTheme.NoActionBar">来源(由来):Hoho Theme在4.0之前Android可
转载
2024-03-12 23:02:29
59阅读
本文博客链接:Andorid的Hook方式比较多,现在来学习下,基于Android进程so注入Hook java方法的原理,可以说现在Android这种方式的Hook已经很成熟了,比较好的Android注入框架如:Xposed、ddi、cydia substrate等都是采用这种方式进行Android的java方法的Hook。对于基于Android进程so注入Hook java方法的原理和使用主要
转载
2023-07-19 15:57:31
198阅读
众所周知,在Android中,四大组件是需要在AndroidManifest.xml文件中注册之后才能调用的,但是插件APP可能并没有安装,只是放在终端的某个存储路径上,故系统会找不到插件里面用到的四大组件;那么如果宿主APP需要调用插件APP的四大组件呢,比如,宿主APP要启动插件APP中的某个Activity,需要怎么操作呢?本篇文章只讲述两个问题:宿主如何启动插件中的Activity;插件A
转载
2023-08-24 11:48:01
141阅读