自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(109)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android应用程序启动全流程深度解析

android的app启动流程

2024-03-11 20:47:03 556

原创 深入理解Android启动流程:从按下电源键到Launcher的呈现

Android启动流程

2024-03-11 20:43:21 742

原创 Frida框架中通过模块名和地址获取Module的方法及源码解析

这个Module对象包含了模块的基本信息,如模块名、加载到内存后的基地址、模块大小以及模块在设备上的实际路径等。在逆向工程和动态调试领域,Frida是一个强大的工具,它允许开发者进行实时的JavaScript交互式编程。此方法返回一个包含所有模块的数组,这对于未知系统函数来源的情况非常有用,通过对各个模块的导入表、导出表和符号表进行遍历,可以确定系统函数来自哪个.so文件及其具体地址。方法,两者的主要区别在于,当指定的模块不存在时,最后,Frida还提供了一个便捷的方法——在Frida的类型系统中,

2024-03-08 16:39:36 570

原创 frida:hook所有方法

等变量就会在各自的for循环块内拥有独立的作用域,从而保证了在回调函数中正确地引用到相应方法的信息。在Android逆向工程中,Frida是一个强大的动态代码插桩工具,能够帮助我们实时hook和调试目标应用的方法。本文将通过一个实际案例,探讨在使用Frida Hook测试应用中的Utils类时遇到的一个JavaScript作用域问题,并提供解决方案。注入这段代码后,我们成功获取到了Utils类中的各个方法名,但当尝试在原始方法的基础上进行Hook并调用时,却发现无论调用哪个方法,其参数总是被传递给。

2024-03-08 16:02:01 967

原创 frdia:枚举所有已加载的类和枚举类的所有方法

在Java逆向工程和动态分析场景中,了解运行时环境下的所有已加载类以及它们的方法、构造函数、字段和内部类等元数据信息具有重要意义。总结起来,通过Frida提供的强大功能结合Java反射机制,我们可以编写JavaScript脚本来灵活地枚举目标应用中任何已加载类的详细结构信息,这对于安全审计、功能分析乃至性能优化等工作都具有极高的实用价值。接下来,对于具体某个类(例如"com.xiaojianbang.hook.wallet")内定义的所有方法,则需要借助Java反射API来实现。等方法,以及类的构造方法。

2024-03-08 15:47:16 541

原创 Java内部类与匿名类的访问与Hook详解

在Java编程语言中,内部类是一种嵌套在其他类或方法内的类,它可以更紧密地封装数据,并且能够直接访问外部类的所有成员(包括私有)。而在特定场景下,如测试应用中,我们可能还会遇到匿名类,这是一种没有名称、直接实例化的内部类,通常用于简化代码并实现接口或继承类的功能。

2024-03-08 15:44:19 363

原创 深入理解Java类字段的获取与修改:静态字段与实例字段的操作实践

总结起来,无论是静态字段还是实例字段的获取与修改,关键在于正确识别字段类型并通过相应的方式访问它们。在处理具有同名方法和字段的类时,注意使用Java Hook机制规定的字段访问规则,确保能准确无误地进行字段操作。在Java编程中,操作类的字段(成员变量)是一项基本任务,而这项任务根据不同类型的字段有着不同的实现方式。字段为例,探讨如何正确地获取和修改类中的静态字段及实例字段,并特别关注在实际测试应用中可能遇到的特殊情况。此外,当类中出现字段名与方法名相同的情况时,如在。的方法和一个同名字段,直接通过。

2024-03-08 15:43:48 353

原创 深入理解Java类字段的获取与修改:静态字段与实例字段的操作实践

总结起来,无论是静态字段还是实例字段的获取与修改,关键在于正确识别字段类型并通过相应的方式访问它们。在处理具有同名方法和字段的类时,注意使用Java Hook机制规定的字段访问规则,确保能准确无误地进行字段操作。在Java编程中,操作类的字段(成员变量)是一项基本任务,而这项任务根据不同类型的字段有着不同的实现方式。字段为例,探讨如何正确地获取和修改类中的静态字段及实例字段,并特别关注在实际测试应用中可能遇到的特殊情况。此外,当类中出现字段名与方法名相同的情况时,如在。的方法和一个同名字段,直接通过。

2024-03-08 15:40:41 390

原创 深入理解 Frida 中主动调用 Java 方法的 Hook 技术

此方法接受两个参数,第一个参数是要查找的目标类名,第二个参数是一个包含 onMatch 和 onComplete 回调函数的对象。以下代码展示了如何使用。在动态调试与插桩技术中,Frida 提供了一种强大的能力——通过 Hook 调用 Java 方法,不仅可以被动响应函数触发,还可以实现主动调用。综上所述,无论是静态方法还是实例方法,在 Frida 中进行主动调用都具有较高的灵活性,可以根据实际应用场景选择适合的方式来高效地执行目标方法。首先,对于静态方法的主动调用,我们需定位到目标类并直接调用该方法。

2024-03-08 15:37:26 778

原创 Hook技术在对象参数构造中的实践与应用

在Android逆向工程或自动化测试领域,我们经常会遇到需要对含有对象参数的方法进行Hook的情况。本文将以一段实际的Java源码为例,演示如何针对传入对象作为参数的方法进行Hook,并进一步说明如何构造并传入该对象。总结来说,对于带有对象参数的方法进行Hook时,我们需要明确目标方法所接收的对象类型,并利用相应的Java类引用进行构造和操作。对象作为参数,然后检查该对象是否为空或者金额是否大于零,若满足条件则将金额添加到钱包余额中。对象实例,设置了货币类型为“美元”,金额为1000。

2024-03-08 15:31:35 292

原创 利用overloads实现Java方法重载的高效Hook技巧

但在实际情况中,如果我们对所有重载方法的操作处理相同,如仅需在调用前打印参数签名,完全可以采取更为优雅的方式进行优化。在开发过程中,我们常常遇到需要对Java方法的多个重载版本进行Hook的情况。接下来,可以通过遍历这个数组,对每个重载方法应用相同的implementation覆写逻辑。首先,我们可以利用Java.use()方法获取目标类,并调用其方法的overloads属性,它会返回一个包含所有重载方法的数组。通常指向调用该方法的对象实例。在传统的做法中,若要Hook一个具有多个重载版本的方法,如。

2024-03-08 15:27:46 336

原创 Frida Hook 重载方法详解与实践

在Android应用开发中,方法重载是一个常见的多态性体现,它允许我们在一个类中定义多个同名但参数不同的方法。本文以实际案例介绍如何利用Frida框架来Hook具有重载方法的应用程序。在我们待测试的应用程序中,Utils类中有三个重载版本的getcalc在对这类重载方法进行Hook时,由于它们的参数列表各不相同,我们需要根据特定的参数签名来区分并指定Hook哪个版本的方法。

2024-03-08 15:23:41 396

原创 Frida:Hook构造方法在Android应用中的实践与理解

HooK构造方法

2024-03-08 15:11:41 500

原创 【Frida实战】浅析Java层静态方法与实例方法的Hook技术及其应用

frida静态方法Hook

2024-03-08 14:58:00 576

原创 Frida实战:Java、Native、SO层面的Hook与主动调用详解

Frida实战:Java、Native、SO层面的Hook与主动调用详解

2024-03-06 16:24:55 2351

原创 ADB命令在Android应用测试中的高效运用

adb常用命令

2024-02-25 15:45:06 1051

原创 Frida在Android逆向工程中的应用与实践

Android frida

2024-02-25 15:38:29 689

原创 c++八股8

c++八股

2024-01-17 19:38:00 419

原创 c++八股7

c++八股

2024-01-17 19:35:08 367

原创 c++八股6

c++八股6

2024-01-17 19:33:47 368

原创 c++八股5

项目中举例说明完成的任务(假设示例): 在一个网络服务项目中,使用std::unordered_map来快速存储和检索用户的会话信息,其内部哈希表结构提供了O(1)平均时间复杂度的存取性能。同时,利用std::vector维护用户消息队列,并用std::deque处理先进先出的消息广播。○ UDP (User Datagram Protocol) 是无连接的传输层协议,不保证数据包的顺序或可靠性,但传输速度快且延迟低,适用于实时应用如视频会议、在线游戏等场景,其中数据丢失可接受或通过上层协议处理。

2024-01-17 19:32:07 394

原创 c++八股4

c++八股4

2024-01-17 19:31:10 792

原创 c++八股3

八股文

2024-01-14 20:58:02 499

原创 C++八股2

当程序试图访问不在物理内存中的虚拟地址时,会发生缺页中断,操作系统会从磁盘上的交换文件中调入所需数据至空闲物理内存,并更新页表。并发:是指在同一时间段内有多个任务都在执行,但并不一定在同一时刻,即处理器交替快速执行多个任务,使得宏观上看起来像是同时进行的。在单核CPU上,真正的并行是不可能的,多线程并发实际上是上下文切换的结果。堆(Heap):堆是另一种内存区域,主要用于存储程序在运行时动态分配和释放的内存空间,比如使用new关键字分配的内存。它是无状态、明文传输的,存在被窃听、篡改、伪装等安全风险。

2024-01-14 20:56:14 406

原创 c++八股1

对多态的认识: 在C++中,多态性是面向对象程序设计的一个核心特性,它体现了“一个接口,多种实现”的思想。多态有两种形式:静态多态(编译时多态):通过函数重载和运算符重载实现,编译器根据上下文信息在编译阶段就能确定调用的函数版本。动态多态(运行时多态):主要通过虚函数机制来实现,当基类指针或引用指向派生类对象时,调用虚函数会根据对象的实际类型而非指针或引用的静态类型决定调用哪个函数。这种特性允许不同的类对象通过统一的接口表现出不同的行为。动态多态实现方式: 动态多态是通过虚函数表(Virtual T

2024-01-14 20:53:35 445

原创 QT常见组件

QPushButton:标准按钮QCheckBox:复选框QRadioButton:单选按钮QToolButton:工具栏按钮QCommandLinkButton:带有详细描述的按钮QComboBox:下拉列表组合框QSpinBox / QDoubleSpinBox:数值输入调整器QDateEdit, QTimeEdit, QDateTimeEdit:日期/时间选取器文本输入与编辑 (Text Input and Editing)QLineEdit:单行文本输入框。

2024-01-13 16:55:32 617

原创 C++八股——STL相关

容器(Containers):vector:动态数组,支持随机访问和高效内存管理。list:双向链表,支持高效插入和删除操作,但不支持随机访问。deque:双端队列,两端都可以高效地进行插入和删除元素,同时支持随机访问。stack:后进先出(LIFO)的数据结构,基于容器实现(如通常基于deque或vector)。queue:先进先出(FIFO)的数据结构,同样基于容器实现。priority_queue:优先队列,其中元素总是保持排序状态,最高优先级的元素总是在顶部。

2024-01-13 15:34:09 956

原创 八股文 c++ 多态

静态多态(编译时多态):主要体现在函数重载(Overloading)和运算符重载上,编译器根据函数签名在编译阶段就能确定调用哪个函数。

2024-01-09 21:45:10 587

原创 QT编程基础

QT的一些东西

2023-12-30 14:16:38 892

原创 Audio Toolbox

audio toolbox

2023-12-27 16:23:18 551

原创 备战春招——12.05算法

2023-12-05 23:22:56 350

原创 springboot——helloworld入门

springboot

2023-12-04 21:17:13 165

原创 springboot的常用注解

springboot常见注解

2023-12-04 20:59:51 162

原创 备战春招——12.04 算法

哈希表,主要是对那些函数的应用

2023-12-04 17:25:09 231

原创 docker常见知识

docker常见知识

2023-12-03 21:26:36 220

原创 备战春招——12.3 算法

哈希表,哈希表就是使用好那些函数就够用了

2023-12-03 20:14:49 130

原创 unordered_set unordered_multiset

unordered_set unordered_multiset

2023-12-03 15:51:13 71

原创 c++标准库——unordered_map和unordered_multimap

unordered_map和unordered_multimap

2023-12-03 15:41:39 82

原创 备战春招——12.2算法

动态规划

2023-12-02 15:34:49 156

原创 备战春招——12.1 算法

又被拒,还是先春招刷题吧,哎哎哎。动态规划题

2023-12-02 13:46:40 112

nrf52832radio外设模拟广播,直接发包

nrf52832radio外设模拟广播,直接发包。 下载下来,直接在keil中编译烧录,打开nrf connect中查看就行

2022-08-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除