本文僅供研究學習使用,請勿用於非法用途!node
aHR0cHM6Ly9hdXRoLmFsaXBheS5jb20vbG9naW4vaW5kZXguaHRt編程
今日目標網站是某知名支付網站,感受本身有點飄了~~瀏覽器
這裏只解密密碼的加密方式函數
先看請求,輸入帳號,密碼後點擊登陸,記得提早瀏覽器打開 F12工具
這裏注意輸入錯誤的密碼,方便咱們查看請求數據包學習
在瀏覽器的開發者工具界面,快捷鍵 Crtl+Shift+F 直接打開全局搜索,網站
根據上面的搜索關鍵詞 password= ,我在 index.js 文件種定位到了加密位置 getPassword,熟悉的 RSA 加密this
打上斷點後,從新發請求,果不其然,在斷點處停下來了!加密
以前有講過一篇有關 RSA 加密的專題,這裏能夠直接將 RSA 相關的代碼拷貝下來。咱們主要來改寫這個 getPassword 加密函數, 原函數以下,其中 n = e.alipayEncrypt(2, i, t) 是最後要返回的結果!code
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編程與實戰