天天看點

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

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

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

首先抓包看參數,如圖
網絡爬蟲-cnzz網站統計(umuuid參數加密破解)EndingGithub傳送門
可以比較清晰地看到 cnzz的統計是發起的這個get請求
然後看下這些參數 我們不确定的參數有 id / cnzz_eid / umuuid / rnd ,除了這幾個 其他的應該都是常量或者可以輕易僞造的 如時間戳以及螢幕大小等
為了搞清楚這幾個參數的來由 我們可以再次重新整理頁面重新抓一次包(可以換個浏覽器)看看有什麼變化
網絡爬蟲-cnzz網站統計(umuuid參數加密破解)EndingGithub傳送門
可以看到 變化的有 cnzz_eid / umuuid / rnd 這幾個參數 其他的都是不變的常量了(時間戳那個有變化 可以不用管 比較明顯的) 于是接下來需要做的就去網站上看js看源碼 逆向解析這幾個參數!

cnzz_eid:

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

rnd:

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

umuuid:

網絡爬蟲-cnzz網站統計(umuuid參數加密破解)EndingGithub傳送門
可以在網頁的js源碼裡輕易地找到這幾個參數生成的方式,這裡重點講一下umuuid,其他兩個參數都比較容易地直接用python重寫,這個參數需要用到pyexecjs來模拟,并且經過測試,主要也是由這個參數來決定你的這次僞造是否有效。
網絡爬蟲-cnzz網站統計(umuuid參數加密破解)EndingGithub傳送門
先下個斷點,可以看到this.a.R這個參數就是我們要的umuuid,然後去追溯它的來源
網絡爬蟲-cnzz網站統計(umuuid參數加密破解)EndingGithub傳送門
這裡可以看到a一開始是一個空的集合,它的值是後續的js指派上去的,繼續找a.R
網絡爬蟲-cnzz網站統計(umuuid參數加密破解)EndingGithub傳送門
這裡可以看見a.R是通過Ba這個方法生成的,我們用node.js模拟運作一遍,把該複用的方法全部剔出來,把document和window操作全部替換調即可。
網絡爬蟲-cnzz網站統計(umuuid參數加密破解)EndingGithub傳送門
OK 大功告成

Ending

Github傳送門

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

聯系方式: 442891187(QQ)

如有權益問題可以發私信聯系我删除

繼續閱讀