JS逆向 -- 某新闻数据包中sign值加密分析

[复制链接]
查看9692 | 回复1 | 2023-6-10 16:55:20 | 显示全部楼层 |阅读模式
一、今日目标
! i3 P% Z4 N* k9 F0 Z) p- ^
某新闻板块,往下拉,会自动加载新闻内容,然后数据全部在一个feed包里面,这个数据包提交的参数里面有个_signature值是加密的,这就是我们今天要分析的内容_signature
: k$ k+ C& h  E
, ?% n  T+ H" S3 {0 |
JS逆向 -- 某新闻数据包中sign值加密分析-1.jpg
! \4 ^% A# r/ f7 e( A2 U: {$ L
二、开始分析
; T+ u, M9 }' e1、全局搜索_signature
5 t0 H  J6 y% J: ?; t4 e; Z% z1 {8 @7 t; ~' z' q2 P1 F' g$ N
JS逆向 -- 某新闻数据包中sign值加密分析-2.jpg
. w$ l2 h3 `2 B1 x7 e, @8 p
2、在关键处下断,刷新页面,断了下来,主要代码如下$ M  l* N* b4 M

, ~$ n# W# ^( l) u
JS逆向 -- 某新闻数据包中sign值加密分析-3.jpg
5 o0 r  @, z& ?( L
var n = I(F.getUri(e), e)3、进入I函数进行分析
! W2 E: L; D0 h) i( D8 w
9 P1 f9 b( V$ b% X0 n* T) ?
JS逆向 -- 某新闻数据包中sign值加密分析-4.jpg
( a( y% s* e) k5 h# q
4、单步调试,最后发现返回值为a.call(n,o)就是我们要找的数据,a=n.sign,n=window.byted_acrawler,所以最后调用的函数是window.byted_acrawler.sign(o)
9 d( @/ w' z! t2 i" N9 a/ ~
% c4 V9 [6 v: Z  f" o4 E  M; K
JS逆向 -- 某新闻数据包中sign值加密分析-5.jpg
" X: L) E( d+ n: {2 }
其中; N3 i- k* J4 W8 S' w
o={url:'https://www.toutiao.com/api/pc/list/feed?offset=0&channel_id=94349549395&max_behot_time=0&category=pc_profile_channel&disable_raw_data=true&aid=24&app_name=toutiao_web'}5、开始分析sign函数,e.y始终大于1的,所以最后要分析的是下面的代码
# W4 e! p3 P2 k( M8 @K(b, e.c, e.l, f, e.z, this, null, 0)# N( _5 g. \/ M( B
JS逆向 -- 某新闻数据包中sign值加密分析-6.jpg

, j4 T+ }' x9 i; B! c5 B6、进入到K函数所在js文件,发现代码不是很长,所以全部复制出来,并保存一个新建的js文件# x' \% r' x2 I: R6 s& q9 c
7、新建一个html文件,调用上面的js文件,然后在调用sign函数,传入参数,得到如下值,可以说明该加密文件是可以用的,下节继续讲解如何补环境实现。
1 d' N- ?0 P3 z  e, P  }<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title>    <script src="test.js"></script></head><body></body></html>6 T: |2 K6 I, r) B, K
JS逆向 -- 某新闻数据包中sign值加密分析-7.jpg
钻石糖闪石v | 2023-6-11 01:06:17 | 显示全部楼层
前几年爬头条不需要这些token
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

10

金钱

0

收听

0

听众
性别

新手上路

金钱
10 元