1. 程式人生 > 實用技巧 >python爬蟲進階 | JS逆向某驗滑動加密分析(第二篇)

python爬蟲進階 | JS逆向某驗滑動加密分析(第二篇)

本文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯絡我們以作處理

以下文章來源於騰訊雲 作者:Python程式設計與實戰

( 想要學習Python?Python學習交流群:1039649593,滿足你的需求,資料都已經上傳群檔案流,可以自行下載!還有海量最新2020python學習資料。 )

上篇文章給大家分析還原了某驗滑動的混淆程式碼,然後後臺很多人在問後面的加密以及整個流程是啥,所以今天索性就把整個加密都弄出來吧!

話不多說,時間寶貴,開幹!

回到之前 w 的加密處

可以看到該函式接收了三個引數。呼叫棧往上追一下

還原後的程式碼非常清晰,這三個引數就是 c, l, n["$_DAAD"], 仔細看程式碼

 _ = e ? n["lastPoint"]["x"] : t["$_CCAY"]() / a - n["$_DDHB"]
u = e ? n["lastPoint"]["y"] : n["$_DDIm"] - t["$_CCBw"]() / a;

不難猜出,這個 _, u 分別對應我們滑動時候的 x, y 軸的座標。

你要是不相信,可以拿個尺子量一下(手動狗頭)

第三個引數,是滑動的時間。所以關鍵在第二個引數 l…

控制檯分別輸出看下是什麼東東

後面兩個有木有很眼熟啊。就是前面請求返回的 data

那麼關鍵點就剩下一個了,進去瞅瞅

點選進去,就能進入該函式, 打上斷點,重發請求

這個 t 就是我們滑動的一個軌跡…,通過這個函式將軌跡陣列變成了一個字串。

將函式扣下來,前面那一坨陣列賦值的可以刪掉,因為我們已經還原了,看著礙事

函式扣下來後試著執行一下,缺啥補啥。萬年不變的原則

繼續回到 l 的加密處。接下來是最外層的函數了,同樣的方法把加密函式拿下來.


上面完成之後,W 加密函式的三個引數就湊齊了!

繼續後面的流程…都沒什麼難度了,

把那幾個加密的函式拿出來就行了。

再把那些什麼 AES Base64 都扣出來就完事了!

Js 加密部分基本上就都完成了,剩下的就是根據 Network 中的請求流發請求就好了。

以上就是某驗滑動的整個流程了,是不是 so easy !