JS逆向某網站登錄密碼分析


聲明:

本文僅供研究學習使用,請勿用於非法用途!

目標網站

aHR0cHM6Ly9hdXRoLmFsaXBheS5jb20vbG9naW4vaW5kZXguaHRt

今日目標網站是某知名支付網站,感覺自己有點飄了~~

這里只解密密碼的加密方式

請求分析

先看請求,輸入賬號,密碼后點擊登錄,記得提前瀏覽器打開 F12

這里注意輸入錯誤的密碼,方便我們查看請求數據包

password

在瀏覽器的開發者工具界面,快捷鍵 Crtl+Shift+F 直接打開全局搜索,

定位加密

根據上面的搜索關鍵詞 password= ,我在 index.js 文件種定位到了加密位置 getPassword,熟悉的 RSA 加密

打上斷點后,重新發請求,果不其然,在斷點處停下來了!

解密

之前有講過一篇有關 RSA 加密的專題,這里可以直接將 RSA 相關的代碼拷貝下來。我們主要來改寫這個 getPassword 加密函數, 原函數如下,其中 n = e.alipayEncrypt(2, i, t) 是最后要返回的結果!

function getPassword(t) {
    var e = new s.RSA;
    i = s.Base64.decode(this.options.TS)
    e.setPublicKey(this.options.PK);
    return e.alipayEncrypt(2, i, t);

我們很容易能獲取到 i 和 公鑰的值,這兩個值都是寫死的

i 是將里面的參數經過 base64 解碼后的結果,在node 中也有直接的庫來搞定,就像你在 Python 中調用一樣,並不需要再去扣代碼!

然后再補上 s.RSA 相關代碼,即解密成功,具體扣代碼細節,就不詳述了

了解更多內容,煩請關注本人公眾號, Python編程與實戰


免責聲明!

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



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