Python爬蟲進階 | 某貝網加密分析

又來練手了,需求在這:算法

想一想有點激動:瀏覽器

分析請求

用瀏覽器抓一波登錄包:編輯器

能夠看到有 _abr_beibeitoken 兩個加密參數。加密

咱們再找找發現beibeitoken是上一個請求返回的:spa

好像難度一下減小了一半。3d

定位加密位置

仍是老套路,搜就完事了:code

經過關鍵字就找到一個相關文件,先進去看看。cdn



先打上斷點,從新登陸一下,成功進入斷點說明位置十有八九是找到了,F11進去看看裏面的加密邏輯是什麼樣的。blog

看上去邏輯還蠻簡單的,就是先這樣再那樣而後拼接在一塊兒返回回來,完事兒~token

分析加密

咱們一個個跟進去研究下:

u,d,a,e,s這幾個加密均可以經過上圖的方法追蹤到對應的加密。

這裏咱們主要研究fm的加密邏輯。

先看看f的加密邏輯:

var f = d.length ? (0,l["default"])(d.join("&")) : ""
複製代碼

這裏跟進去看看l["default"]是什麼:

這裏的e是初始化加密算法,咱們再跟進去看看:

到這裏就能夠看到比較有標誌性的內容了,包括下面的m變量均可以參考這樣追進去的操做,一直定位到加密定義的地方。

不少新手朋友是不太能追到上面這個位置,因此我有一個摸魚的辦法,把大體的代碼複製到編輯器裏,用編輯器自帶的提示功能幫助咱們快速定位這個是什麼加密。

取巧的方法(不適用於其餘的加密)

上面的代碼是否是長得有點像,爲了驗證這個想法我把js裏關於加密的代碼扣下來look look

不得不說好的編輯器可讓你事半功倍,看到圖中劃線的地方這個參數的加密方法就一目瞭然了。

接下來繼續分析m的加密方法

m = (0,c["default"])(g, "ytU7vwqIx2UXQNsi");
複製代碼

有了上面的鋪墊,咱們繼續追進去分析一波:

 接下里就是編輯器表演的時候了

好了,到這裏就破案了。

其實上面使用編輯器提示的方法只能算是一種取巧,在簡單的加密裏使用是能夠起到一丟丟的做用,可是仍是建議你本身追到目標位置去發現加密算法究竟是什麼。

相關文章
相關標籤/搜索