JS逆向猿人學十九題


寫得不全 敬請諒解!開始吧

 

 

 

說實話,其實當我看猿人學十九題得時候, 其實解決了但是沒有理解它得原理,直到我昨天看了一篇大佬得文章,得到了它得原理。

鏈接 https://www.cnblogs.com/Eeyhan/p/15662849.html

它是檢測了指紋,tls指紋。這里是ja3指紋

關於指紋得文章可以看 https://mp.weixin.qq.com/s/Qx7PjnBgrTR30oCurU6CGw

其實不管是 還是fillder抓包 還是Charles  都是會被檢測到得。

 

 

 

這里推薦 wireshark抓包:

   需要用最新版的wireshark才能看到ja3指紋,因為ja3指紋是基於tls1.3的,舊版的wireshark只能看到tls1.2及以下的

  最新版下載地址:https://www.wireshark.org/download.html

 

 

 通過看protocol可以看到它是tls, 然后我們點開client hello那個包

 

 

 滑倒最后可以看到它是ja3指紋檢測

 

 

 關於ja3指紋 在上面我也提到過,大家可以去看下那篇文章。

我們知道requests 是基於 urllib3 實現的。要修改 JA3 相關的底層參數,所以我們今天要修改 urllib3 里面的東西。

我們知道 JA3 指紋里面,很大的一塊就是 Cipher Suits,也就是加密算法。而 requests 里面默認的加密算法如下:

ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+HIGH:DH+HIGH:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+HIGH:RSA+3DES:!aNULL:!eNULL:!MD5

 

 

我們可以通過修改request里面得默認算法來進行繞過 讓我們得指紋長度小於等於瀏覽器指紋得長度就可以了

在 requests 里面,要修改 Cipher Suits 中的加密算法,需要修改 urllib3 里面的 ssl 上下文,並實現一個新的 HTTP 適配器 (HTTPAdapter)。在這個適配器里面,我們在每次請求的時候,隨機更換加密算法。但需要注意的是!aNULL:!eNULL:!MD5就不用修改了,讓他們保持在最后。但是這里不需要那么得麻煩,直接在寫代碼得時候標注一下,貼上我得代碼 其實原理跟我看得大佬那篇原理是差不多得,都是讓生成得指紋長度小於瀏覽器得長度。

 

 其實原理都大徑相同,可能寫得不是很全,忘理解 不過我該解釋也解釋到了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM