当前位置:网站首页>JS reverse | m3u8 data decryption of a spring and autumn network
JS reverse | m3u8 data decryption of a spring and autumn network
2022-07-01 12:07:00 【One room】
Statement : This article is for study only , It is forbidden to be used for illegal purposes , Otherwise, we will be responsible for the consequences . If your rights and interests are infringed , Please contact me immediately to delete !
Preface
This is a group friendly demand , Back to m3u8 Data is encrypted , Based on the principle of mutual help , It's easy for him , Also write ( water ) An article .
The target site :
Grab the bag
Old rules , First grab a bag and have a look .
You can see ,m3u8 In this bag data It's encrypted. , Next, let's do it .
Find the encrypted location
Response data like this is encrypted , You can search for .decrypt perhaps .decyrpt( This word is used to locate the location of encryption , This time is also relatively lucky , The search results are relatively few , It's easy to find the corresponding position .
This n.data.data It's the previous ciphertext .
Encryption logic analysis
Statement to restore data :
r = xxtea.toString(xxtea.decrypt(n.data.data, xxtea.toBytes(i + sectionID)))
This i It's a bunch of hash value , Generated by the following code :
e = new Rusha
t = sectionID + "icq"
i = e.digest(t).substr(0, 32)
hold Rusha Just button it out .
Then separate xxtea.decrypt and xxtea.toString Buckle it out , It's not hard , Deduct whatever you lack .
It is worth mentioning that , Need to use atob Method , It can be used Buffer.from replace :
var atob = function(a){
return Buffer.from(a, 'base64').toString('binary')
}
The operation effect is as follows :
Finished writing , It seems a little short
Love & Peace, See you later .
边栏推荐
- How does Nike dominate the list all the year round? Here comes the answer to the latest financial report
- Neo4j Chinese developer monthly - issue 202206
- The Missing Semester
- 力扣首页简介动画
- Value/string in redis
- Use set_ Handler filters out specific SystemC wrapping & error messages
- [Yunju entrepreneurial foundation notes] Chapter 7 Entrepreneurial Resource test 5
- Exploration and practice of inress in kubernetes
- Exposure: a white box photo post processing framework reading notes
- Understanding of MVVM and MVC
猜你喜欢

Acly and metabolic diseases

Adjacency matrix undirected graph (I) - basic concepts and C language

Learning summary on June 29, 2022
![[Yunju entrepreneurial foundation notes] Chapter 7 Entrepreneurial Resource test 8](/img/16/e1a0a52964c8a55eb729469114fc60.jpg)
[Yunju entrepreneurial foundation notes] Chapter 7 Entrepreneurial Resource test 8

Theoretical basis of graph
![[classic example] classic list questions @ list](/img/d8/a259e5f9d08eacbef31254d1bc3304.jpg)
[classic example] classic list questions @ list

Use of easyexcel

深入理解 grpc part1

Mechanism and type of CPU context switch

Chen Gong: Micro service, is it still so pure?
随机推荐
【datawhale202206】pyTorch推荐系统:精排模型 DeepFM&DIN
Custom grpc plug-in
Leetcode force buckle (Sword finger offer 31-35) 31 Stack push pop-up sequence 32i II. 3. Print binary tree from top to bottom 33 Post order traversal sequence 34 of binary search tree The path with a
sshd_ Discussion on permitrotlogin in config
Why does the JVM heap memory exceed 32g and pointer compression fail?
自定义 grpc 插件
C # dependency injection (straight to the point) will be explained as soon as you see the series
Machine learning - Data Science Library - day two
指纹浏览器工作原理、使用场景以及重要性简单讲解
【datawhale202206】pyTorch推荐系统:召回模型 DSSM&YoutubeDNN
Huawei HMS core joins hands with hypergraph to inject new momentum into 3D GIS
C#依赖注入(直白明了)讲解 一看就会系列
uniapp 使用 uni-upgrade-center
The Missing Semester
Message queue monitoring refund task batch process
Interpretation of R & D effectiveness measurement framework
用于分类任务的数据集划分脚本
LeetCode 454. Add four numbers II
Botu V15 add GSD file
Joint Time-Frequency and Time Domain Learning for Speech Enhancement