天天看點

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

好久沒更新了。

這次我們來簡單說一下boss直聘的cookie中的token關鍵字吧。

(有不足之處歡迎大家指正)

1.分析請求。

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

可以知道,職位詳情頁産生了一個跳轉,狀态碼是302.

再接下來的請求中可以得到正确的内容,對比下兩次請求的cookie

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

通過對比,可以知道是cookie發生了改變,調試得知,這個token就是驗證的關鍵。

我們來分析第一次請求的内容。

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

這三個地方就是關鍵了。

可以看到這個__zp_stoken__參數是通過code指派的,code是通過ABC這個函數生成的,參數有兩個,一個ts,一個seed.

這兩個參數都是通過跳轉url得到的。(第一個箭頭調試可以知道)

現在可以來看看ABC這個函數是什麼玩意兒。

斷點調試。

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

ABC跟蹤到了a0a762fa.js這段js中。

乍一看這個檔案。

我去,3000多行代碼,怎麼玩。

慢慢調試呗。

大緻說一下這個js的運作邏輯吧。

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

加密函數調用的這個z函數。通過傳參seed,ts。然後到了這裡

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

這個函數傳入的是這個ABC的一個對象還有一個this.這就代表這個文本的js基本都是要扣完的,本地環境的話也必須按照這個檔案的運作方式走。

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

其實跟到這裡就夠了

然後運作的是這個函數。有興趣的再然後一步一步往裡跟。

然後再說一下這個js裡還有一個坑。

js url加密_反反爬蟲之你必須要會的js逆向之路(2)

就是這個函數,你格式化之後這個函數傳回false,就會陷入無窮無盡的循環中。

其他的就沒什麼好說的了,依舊還需要聲明docment,window等變量(用jsdom就可以了)

大緻就是這個思路了,多的也就不說了。有需要的小夥伴多去調試調試吧,記得千萬要有耐心。

這個token比起攜程的eleven參數還是要簡單很多的,說起攜程又開始掉頭發了。

經實測過js得到的token可以通過驗證。

(記錄了一下思路,細節希望各位自己去實作哦)