


算法助手最新版是一个手机端的辅助模块应用,这款软件能够帮助大家进行一些比较复杂的操作,下面有具体的使用方法教程,软件功能还挺强大的,大家可以试试看哦。

1、由于该程序是个xposed模块,所以自然是需要先激活模块,本教程默认各位看官已有Xposed环境,将不进行xposed的安装讲解。
2、这边以Lsp框架为例子,启动算法助手模块,并在作用域中勾选你要Hook的App(经典Xposed只需要直接激活模块)
3、模块激活成功后,标题信息将显示“算法助手”,若未激活,则显示红字字体“模块未激活”
Tips:(部分机型和框架,可能会出现激活后显示未激活的情况,如果您确认已经激活,可试着直接使用)
1、在算法助手中,在应用列表里,选择需要Hook的app,点进去以后,将总开关打开(不打开的话,所有的配置都不生效)
2、总开关打开以后,打开需要使用的相关功能的开关,例如'弹窗定位'
3、勾选完毕以后,运行被Hook的App
4、回到算法助手,切换到日志列表,一一点进去,可以看到详细的日志信息。
Tips:(安卓11的用户,被Hook的app需要开启存储权限,且没有开启存储重定向,才能正常写出日志)
堆栈的介绍
这个步骤,有开发经验的开发人员可以跳过,调用堆栈对于开发人员来说是再熟悉不过的了,毕竟你们敲了一整天的Bug,一跑起来全是这玩意儿对吧(手动滑稽)
在日志详细的尾部,可以看到调用堆栈,这个调用堆栈是干嘛用的?该怎么去理解他?
实际上,调用堆栈的结构是这样子的:类名.方法名(源文件名:行数)
那怎么看呢?从下往上看!!!
类1.方法1(类1.java:100)类2.方法2(类2.java:55)类3.方法3(类3.java:76)
比如这个例子:
1、首先调用了类3的方法3
2、然后调用了类2的方法2
3、最后调用了类1的方法1
那么,我们已知,在类3的方法3里调用了方法2,可是,方法3的代码可能有非常多,我怎么知道它在哪里调用了方法2呢?
那么这时候行数的重要性就显示出来了,通过行数可以看到,在类3的76行,调用了方法2
还是刚刚的例子,弹窗定位的日志信息,一般情况下,我们只需要看最后几行就可以了
LspHooker_.makeText(Unknown Source:18)com.junge.test.MainActivity.onResume(MainActivity.java:24)android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1454)android.app.Activity.performResume(Activity.java:8050)
最后2行,是android系统类,我们用不到,也不需要去看
从前2行看,我们可以看到,在MainActivity的onResume方法里调用了makeText,通过(MainActivity.java:24),可以看出MainActivity类的24行中调用了makeText
接下来我们反编译app,验证一下,我们在smali代码中找到MainActivity类搜索.line 24
使用Jadx查看java代码,也可以看到24行调用了makeText
Tips:目前MT管理器转为java代码是无法自动识别行号的
Tips:有许多app在编译后,会抹去源文件名,以及行数信息,所以堆栈分析只能当成辅助工具,不必过度依赖,学会怎么通过代码逻辑去分析代码才是重点
进阶使用教程:自定义Hook的使用
Hook,其实可以理解为拦截函数,拦截到函数以后,你想修改返回值,或者不让他执行,都可以 。
在算法助手选择app以后,在功能列表拉到最后,有个'添加自定义'按钮,点进去以后,进入到配置界面,然后进行hook配置
package com.junge.test;import android.os.Bundle;import android.widget.Toast;import androidx.appcompat.app.AppCompatActivity;public class MainActivity extends AppCompatActivity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public String test(String name) { return '你好:' + name; } public void onResume() { super.onResume(); Toast.makeText(this, test('张三'), 1).show(); }}
还是以这个代码为例子,进入该Activity后,会调用test函数,并传入'张三',并弹出提示,而test函数,返回的是'你好+姓名',我想通过hook,去修改它的返回值,改为'hook返回值成功',怎么做?
配置如下:
java格式:
类名:com.junge.test.MainActivity方法名:test参数类型:java.lang.String返回值:hook返回值成功
smali格式:
类名:Lcom/junge/test/MainActivity方法名:test参数类型:Ljava/lang/String;返回值:hook返回值成功
Tips:使用smali格式的时候,参数类型务填写完整,包括分号。
经常逆向安卓软件的朋友。经常需要分析各种加密算法,还有数据的sign算法,由于静态分析效率太低,起初使用的是logcat打印日志,将密文,密钥,明文,md5前的信息,MD5后的信息等信息打印出来,但是很快发现了一个问题,在数据量大的时候,密文很多,密钥也很多,打印信息太乱,经常会出现密文不知道对应哪个密钥,而且如果是动态秘钥,单纯的打印秘钥就显得没有意义了。算法助手能够将秘钥,密文,明文,联系起来,并打印出调用堆栈。使用切简单方便。喜欢逆向的朋友下载使用吧。
算法助手是我们开发的一款运行在Android平台上的基于Xposed的安卓调试工具。用于Android软件开发和测试人员(但不限于)进行应用分析调试、安全测试和Bug分析。本应用某些场景下可能具有修改和调试应用业务逻辑的功能,如果要修改和调试第三方的应用,必须取得所属方的官方授权;如果在未授权的情况下擅自修改和调试,所造成的任何问题和责任(包括资金损失、法律风险等)均与我们无关。
支持Android14
支持运行Frida脚本
新增web算法自吐
支持通过选择函数进行Hook
Reqable联动
算法助手Pro的开关同步到Lsposed
增加注入成功提示(可在设置中关闭)
日志的调用堆栈中支持快速添加Hook
修复RSA签名数据、加密数据重复的bug
修复导出的日志中无调用堆栈的bug
其他bug修复
支持Android14
下载
算法助手最新版
6.8M /
小编简评:算法助手是
下载
秒速文件助手app
46.1M /
小编简评:秒速文件助
下载
免费读小说最新版
15.8M /
小编简评:免费读小说
下载
京机慧最新版
77.4M /
小编简评:京机慧是北
下载
防偷拍探测器最新版
28.6M /
小编简评:防偷拍探测
下载
学霸盘最新版
541KB /
小编简评:学霸盘是一
下载
防守之王内置菜单最新版(King of Defense Premium)
147.3M /
小编简评:防守之王游
下载
角落生物消消乐最新版(Sumikko gurashi)
117.5M /
小编简评:角落生物消
下载
Magic助手
27.5M /
小编简评:Magic是一款
赚点集思吧平台
34.5M
4.7.0 官方版
应用商店(小米自带)app
33.1M
5.4.3 官方版
nubia应用中心最新版
15.9M
4.3.0.062814 官方手机版
双开助手微分身版
17.6M
10.2.6.0 官方正式版
互传vivo一键换机app
39.2M
6.5.2.19 官方最新版
华为应用市场2025最新版
51.2M
14.0.1.300 官方版
q绑查询手机号免费网站
4.2M
2.0 免费版
葫芦侠最新版本
34.8M
v4.3.1.8 安卓版
华为应用市场2025最新版
51.2M
14.0.1.300 官方版
冷眸软件库新版
1.3M
10.0 最新版
p搜官网下载
6.7M
8.1 安卓版
joiplay三件套汉化版
23.5M
1.20.023 官方版
网友评论