潇洒的吸血鬼 发表于 2021-8-11 12:25

爬虫研究分析-请求包含验证参数

# 爬虫-请求包含验证参数

### 目标网站

某修改运动步数网站

### 目的

使用接口发送请求或者自动化

(暂不清楚)

### 分析网络请求

打开Network视图

找到请求修改步数接口



请求包含sing字段,应该是用作验证请求是否合法

### 定位加密方法

首先定位到发送请求的JS文件



点击左下角大括号,格式化JS文件



定位到加密方法



### 解析加密方法

稍微格式化一下加密方法

```JavaScript
_0x4dd058(
md5,
_0x4dd058(
    _0x4dd058(
      String(_0x4dd058(_0x4dd058(parseInt, _0x136350, '10'), 0x16)) +
      _0x4dd058(String, _0x3f5e81) +
      String(_0x5c2e93),
      _0x4dd058(String, _0x4dd058(_0x5ea5ce, 0x3e8))
    ),
    _0x4dd058['Eygbd']
)
)
```


经过分析,首先要确认如下变量

```JavaScript
_0x3122('0xb1')
_0x3122('0xf3')
...
```


在console执行命令



发现结果都是字符串,那么猜测_0x4dd058应该是一个object,根据这里的key取对应的方法

同样在console中执行_0x4dd058,结果为未定义

全局检索_0x4dd058 = 寻找在何处进行定义



继续检索_0x260d9f =



至此,已经非常清晰了,再看一遍加密方法

```JavaScript
_0x4dd058(
md5,
_0x4dd058(
    _0x4dd058(
      String(_0x4dd058(_0x4dd058(parseInt, _0x136350, '10'), 0x16)) +
      _0x4dd058(String, _0x3f5e81) +
      String(_0x5c2e93),
      _0x4dd058(String, _0x4dd058(_0x5ea5ce, 0x3e8))
    ),
    _0x4dd058['Eygbd']
)
)
```


将_0x4dd058替换为_0x260d9f进行检索即可得到每一层的方法逻辑

例如

从最外层方法_0x4dd058替换为_0x260d9f。得到方法逻辑如图



据此,替换每一层方法,得到化简后的加密方法如下

```JavaScript
const account = "账号"
const password = "密码"
const step = "步数"
const time = Date["parse"](new Date())
md5(String(parseInt(account, 10) + 0x16) + String(password) + String(step) + String(time / 0x3e8) + "422")
```


### 测试

输入如下信息后发送请求

账号:18888888888

密码:18888888888

步数:999999

查看Network面板得到

时间戳:1628655276

sing:5eba2de213710d18d51e22db732b0674

构造加密函数

```JavaScript
md5(String(parseInt("18888888888", 10) + 0x16) + String("18888888888") + String("999999") + String(1628655276000 / 0x3e8) + "422")
```


在浏览器console面板中计算结果和sing字段结果一致



结束

潇洒的吸血鬼 发表于 2021-8-12 09:54

我的爬虫教程永远不会说明是哪个网站,所以不要问了

shayu2021 发表于 2021-8-11 13:17

shayu2021 发表于 2021-8-11 12:47

shayu2021 发表于 2021-8-11 12:37

潇洒的吸血鬼 发表于 2021-8-11 12:45

shayu2021 发表于 2021-8-11 12:37
谢谢大神,这个用易语言怎么整

不会易语言,不过已经分析到这个地步了,剩下就很简单了

gzh820101 发表于 2021-8-11 13:08

想要一个爬虫招投标网站信息的,呵呵

潇洒的吸血鬼 发表于 2021-8-11 13:10

shayu2021 发表于 2021-8-11 12:47
php我能看懂,能不能简单的写一下啊

这个加密方法,哪步你不明白啊?

shayu2021 发表于 2021-8-11 13:43

RoyPenn 发表于 2021-8-11 14:15

厉害,写的很详细,感谢

861078848 发表于 2021-8-11 15:19

哪个网站
页: [1] 2 3
查看完整版本: 爬虫研究分析-请求包含验证参数