網絡爬蟲-cnzz網站統計(umuuid參數加密破解)

總體來說算是比較easy的js加密 由於涉及到部分隱私 就簡單說下該參數的加密思路

馬蜂窩爲例 該網站使用的是CNZZ統計流量


首先抓包看參數,如圖

在這裏插入圖片描述

可以比較清晰地看到 cnzz的統計是發起的這個get請求
然後看下這些參數 我們不確定的參數有 id / cnzz_eid / umuuid / rnd ,除了這幾個 其他的應該都是常量或者可以輕易僞造的 如時間戳以及屏幕大小等
爲了搞清楚這幾個參數的來由 我們可以再次刷新頁面重新抓一次包(可以換個瀏覽器)看看有什麼變化

在這裏插入圖片描述

可以看到 變化的有 cnzz_eid / umuuid / rnd 這幾個參數 其他的都是不變的常量了(時間戳那個有變化 可以不用管 比較明顯的) 於是接下來需要做的就去網站上看js看源碼 逆向解析這幾個參數!

cnzz_eid:

在這裏插入圖片描述

rnd:

在這裏插入圖片描述

umuuid:

在這裏插入圖片描述

可以在網頁的js源碼裏輕易地找到這幾個參數生成的方式,這裏重點講一下umuuid,其他兩個參數都比較容易地直接用python重寫,這個參數需要用到pyexecjs來模擬,並且經過測試,主要也是由這個參數來決定你的這次僞造是否有效。

在這裏插入圖片描述

先下個斷點,可以看到this.a.R這個參數就是我們要的umuuid,然後去追溯它的來源

在這裏插入圖片描述

這裏可以看到a一開始是一個空的集合,它的值是後續的js賦值上去的,繼續找a.R

在這裏插入圖片描述

這裏可以看見a.R是通過Ba這個方法生成的,我們用node.js模擬運行一遍,把該複用的方法全部剔出來,把document和window操作全部替換調即可。

在這裏插入圖片描述

OK 大功告成

Ending

Github傳送門

持續更新ing (歡迎各種star與fork)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章