溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析

發(fā)布時(shí)間:2021-10-09 16:54:44 來源:億速云 閱讀:154 作者:柒染 欄目:編程語言

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

今日網(wǎng)站

這個(gè)網(wǎng)站同樣來自群友投稿

aHR0cDovL ViMy5pZ3V aS5jb20vIy8=

需要分析的是刷新驗(yàn)證碼提交的 data 參數(shù)

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  
 

加密定位

先搜索 data 參數(shù),結(jié)果里檢索的到 200+ 的匹配項(xiàng),所以暫時(shí)跳過這種定位方式

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

不過這個(gè)頁面的請(qǐng)求是 xhr 請(qǐng)求,所以還是用老方法 xhr 斷點(diǎn)看看

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

打上斷點(diǎn)之后重新刷新頁面

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

斷點(diǎn)是斷在y.send的位置,這個(gè)是請(qǐng)求發(fā)出的地方,網(wǎng)上看堆棧可以看到堆棧里大多都是angular.js相關(guān)的內(nèi)容

“  

Angular 是一款十分流行且好用的 Web 前端框架,目前由 Google 維護(hù)

既然是框架內(nèi)容,先暫時(shí)不看繼續(xù)向上看,可以看到下面幾個(gè)需要注意的堆棧

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

這里有好幾個(gè)vm,點(diǎn)擊eval對(duì)應(yīng)的堆棧點(diǎn)進(jìn)去可以看到下面這樣的代碼

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

雖然這樣里的代碼經(jīng)過了混淆,不過還是可以通過關(guān)鍵字,分析出這里是一個(gè)post 請(qǐng)求構(gòu)造的代碼

1 的位置可以看出這是一個(gè) post 方法

2 的位置是構(gòu)建參數(shù) packet

3 的位置可以看出是完成上面packet參數(shù)提交并完成請(qǐng)求提交,回調(diào)的地方

分析到這,打上斷點(diǎn)重新刷新看看

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

url 不是驗(yàn)證碼請(qǐng)求的鏈接就放過

ps:其他請(qǐng)求可能也會(huì)走這個(gè)接口,為了準(zhǔn)確性我們只分析需要的鏈接

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

直到這個(gè)位置的 url 顯示的是我們需要的鏈接

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

可以看到這里的參數(shù) packet 是下面這樣的

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

經(jīng)過cp之后,經(jīng)過幾層邏輯

傳到下面的結(jié)果和前面分析的請(qǐng)求提交的是類似的

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  
python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

這樣我們就找到了加密的位置了。

 

加密分析

根據(jù)上面的操作找到加密的位置了,就繼續(xù)放過全部斷點(diǎn)重新進(jìn)一次加密邏輯

這次要跟一次邏輯,看看經(jīng)過 cp之后都經(jīng)過了什么操作,全部摳出來就完事了

先看cp

cp這個(gè)方法里先做了一次判斷,進(jìn)到JSON.stringify

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

之后傳入到下面的邏輯中

lz[_$_480d[1704]](data_to_cp, 3, on_finish, on_progress)
 
python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

這里的lz[_$_480d[1704]]yt函數(shù),經(jīng)過yt函數(shù)之后得到的結(jié)果是bit array

之后又進(jìn)入到bth這個(gè)方法中

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析  

得到bth的結(jié)果后,將這個(gè)結(jié)果hash然后將hash的結(jié)果與原結(jié)果拼接

var data = hex + md5(hex)
 

這樣我們就要扣出ytbth即可,得出運(yùn)行的結(jié)果如下

python如何進(jìn)行菠菜網(wǎng)站請(qǐng)求驗(yàn)證碼的data參數(shù)加密邏輯分析

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI