当前位置:网站首页>Signature analysis of app x-zse-96 in a Q & a community
Signature analysis of app x-zse-96 in a Q & a community
2022-06-23 11:29:00 【fenfei331】
One 、 The goal is
Our goal today is a Q & a community App Of x-zse-96
1:main
edition : v8.21.1
Two 、 step
search x-zse-96
The normal practice is jadx open apk, And then the search x-zse-96.
The magic is , There was no result , It's kind of interesting ,App Added drama to us , Some obvious strings are encrypted and hidden .
Observe commonalities
Observe , Signatures have two things in common
1、 All are 1.0_ start
2、 What follows is very similar Base64
Then first hook Let's start . Continue to search for a needle in a haystack to find the beginning .
// Locate by string
var strCls = Java.use("java.lang.StringBuilder");
strCls.toString.implementation = function(){
var result = this.toString();
// console.log(result.toString());
if(result.toString().indexOf("1.0_") >= 0 )
{
console.log(result.toString());
var stack = threadinstance.currentThread().getStackTrace();
console.log("Rc Full call stack:" + Where(stack));
}
return result;
}Let's run .
Fortunately, , We guessed the right beginning this time , You guessed the right result .
This is the goal below com.zxxxu.android.net.d.i.e 了
Order this encryp Function in
public interface b {
byte[] encrypt(byte[] bArr);
}Find out b A variable is an interface type , So we have to know what type of variable it is actually assigned to .
Print class member variables
We will http://91fans.com.cn/post/idlesignone/ The member variables of the print class have been introduced before .
var requestCls = Java.use("com.zxxxu.android.net.d.i");
requestCls.e.implementation = function(a){
console.log(" ========== ");
var fields = Java.cast(this.getClass(),Java.use('java.lang.Class')).getDeclaredFields();
//console.log(fields);
for (var i = 0; i < fields.length; i++) {
var field = fields[i];
field.setAccessible(true);
var name = field.getName();
var value =field.get(this)
console.log("name:"+name+"\tvalue:"+value);
}
console.log(" ========== ");
var result = this.e(a);
return result;
}And here it is
1:rc1
The class name comes out -$$Lambda$AshC3KZBWneDDB5y10Ccx5ghIWw It looks more complicated
1:rc2
This a.a Function continues to look down , Finally I found it here
1:rc3
You can write code to hook 了 , From the name, the probability is aes Algorithm . Besides the plaintext, there are two parameters , So the probability is key and iv 了 .
3、 ... and 、 summary
App Starting to be cunning , The obvious string is encrypted , It's not so convenient for us to find it .
The key point is commonality , As long as there are commonalities , There is a clue .
com.secneo.apkwrapper.H.d You can analyze this function , It should be the one that encrypts the obvious string . It can reveal x-zse-96.
No one asked , But the turbid wine calls out to each other , Sparse curtain self rolling , The moon shines and the water is clear .
Tip:
: The only purpose of this paper is to learn more reverse skills and ideas , If someone uses this technology to carry out illegal business, the legal responsibility brought by the profit is borne by the operator himself , It has nothing to do with this article and the author , The code projects involved in this article can go to Feifei friends The planet of knowledge takes itself .
边栏推荐
- 强化责任意识和底线思维 全力筑牢抗洪抢险“安全堤”
- Attack and defense drill collection | 3 stages, 4 key points, interpretation of the blue team defense whole process outline
- Daily question 7-1652 Defuse the bomb
- Win10 微软输入法(微软拼音) 不显示 选字栏(无法选字) 解决方法
- Openharmony application development [01]
- Esp32-cam, esp8266, WiFi, Bluetooth, MCU, hotspot create embedded DNS server
- Esp32-cam high cost performance temperature and humidity monitoring system
- The simplest DIY actuator cluster control program based on 51 single chip microcomputer, pca9685, IIC and PTZ
- Rancher 2.6 全新 Monitoring 快速入门
- 程序中创建一个子进程,然后父子进程各自独自运行,父进程在标准输入设备上读入小写字母,写入管道。子进程从管道读取字符并转化为大写字母。读到x结束
猜你喜欢

Win10 Microsoft input method (Microsoft Pinyin) does not display the word selection column (unable to select words) solution

六张图详解LinkedList 源码解析

How to implement a distributed lock with redis

2光2电级联型光纤收发器千兆2光2电光纤收发器迷你嵌入式工业矿用本安型光纤收发器

连番承压之后,苹果或将大幅提高iPhone14的售价

直播带货app源码搭建中,直播CDN的原理是什么?

Simplest DIY mpu6050 gyroscope attitude control actuator program based on stm32f407 Explorer development board

“互联网+”大赛命题火热对接中 | 一图读懂百度38道命题

Gradienttape of tensorflow2

Design and implementation of stm32f103zet6 single chip microcomputer dual serial port mutual sending program
随机推荐
Gradienttape of tensorflow2
Not satisfied with the effect of the smart park? Please accept this secret script of thingjs
如何用 Redis 实现一个分布式锁
华为云如何实现实时音视频全球低时延网络架构
[use of Matlab graphical user interface controls]
[cloud resident co creation] in the code free era, how does software development go to everyone?
坦然面对未来,努力提升自我
From 0 to 1, how does the IDE improve the efficiency of end-to-end R & D| DX R & D mode
php 手写一个完美的守护进程
今天14:00 | 12位一作华人学者开启 ICLR 2022
Win10 wireless network. If the system cannot search WLAN, the solution (and VMnet1, 8)
一般的理财产品期限是几天啊?
从0到1,IDE如何提升端侧研发效率?| DX研发模式
1154. day of the year
Vone新闻 | 旺链科技赋能众享链网自组织管理,打造企业级联盟DAO
2光2电级联型光纤收发器千兆2光2电光纤收发器迷你嵌入式工业矿用本安型光纤收发器
Deep analysis and Simulation of list
Win10 无线网络,系统搜索不到WLAN的,解决办法 (以及 VMnet1,8)
Attack and defense drill collection | 3 stages, 4 key points, interpretation of the blue team defense whole process outline
广播级E1转AES-EBU音频编解码器 E1转立体声音频卡侬头(XLR)编解码器