最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

JS逆向之webpack 通用扣取思路

2022-12-07 12:35 作者:拉燈的小手  | 我要投稿

本文所有教程及源碼、軟件僅為技術(shù)研究。不涉及計算機(jī)信息系統(tǒng)功能的刪除、修改、增加、干擾,更不會影響計算機(jī)信息系統(tǒng)的正常運行。不得將代碼用于非法用途,如侵立刪!

標(biāo)題

環(huán)境

  • win10

  • chrome106

目標(biāo)站:aHR0cHM6Ly93d3cuZ205OS5jb20v 加密參數(shù) password: K6YEmQrNy%2FQgdnacXhdIZ1upCj4UU562IW89oOZquLkZ%2F16JDNyMqEU7pGVemvQzjfAlOzh7nSOLPkJp3kxbTm8XtWrHp9K%2BmMClOmmhkbdjAyax5xLBWC6PJiD6o8H

隨便輸入一些信息,觸發(fā)登錄,抓包找到接口

在這里插入圖片描述

全局搜索password,沒有找到明顯的有用信息,使用xhr堆棧隨便找個疑似位置打個斷點跟進(jìn)去

在這里插入圖片描述

明顯分析出a.encode就是加密方法 ,查看結(jié)構(gòu)可以看出是webpack結(jié)構(gòu)

在這里插入圖片描述

1.定位加載模塊的方法(加載器)

webpack必有一個加載模塊的方法:call或apply,找到加載器先摳出來

在這里插入圖片描述

function e(s) {
? ?if (i[s])
? ? ? ?return i[s].exports;
? ?var n = i[s] = {
? ? ? ?exports: {},
? ? ? ?id: s,
? ? ? ?loaded: !1
? ?};
? ?return t[s].call(n.exports, n, n.exports, e),
}

2.構(gòu)造成自執(zhí)行方法

在控制臺調(diào)試一下缺什么補(bǔ)什么

!function(t) {
? ?function e(s) {
? ? var i = {};
? ? ? ?if (i[s])
? ? ? ? ? ?return i[s].exports;
? ? ? ?var n = i[s] = {
? ? ? ? ? ?exports: {},
? ? ? ? ? ?id: s,
? ? ? ? ? ?loaded: !1
? ? ? ?};
? ? ? ?return t[s].call(n.exports, n, n.exports, e),
? ?}
}()

3.定位并扣除調(diào)用的加密方法

在a.encode處下斷點,跟進(jìn)去找到最終的加密方法 分析得知jsencrypt.encrypt就是最終的加密方法

在這里插入圖片描述

將jsencrypt.encrypt的方法整段扣出來,然后作為參數(shù)填入自執(zhí)行加載器中,然后在將調(diào)用jsencrypt.encrypt的方法也摳出來

在這里插入圖片描述

代碼太長就不貼了,最終的格式就是下面的樣子,

!(function(t) {
? ?var i = {};
? ?function e(s) {
? ? ? ?if (i[s]) return i[s].exports;
? ? ? ?var n = i[s] = {
? ? ? ? ? ?exports: {},
? ? ? ? ? ?id: s,
? ? ? ? ? ?loaded: !1
? ? ? ?};
? ? ? ?return t[s].call(n.exports, n, n.exports, e), n.loaded = !0, n.exports
? ?}
? ?_e = e;
})({
? ?encrypt: function(t, e, i) {},
? ?diaoyong: function(t, e, i) {}
});

4.導(dǎo)出加密方法

var _e;
!(function(t) {
? ?var i = {};
? ?function e(s) {
? ? ? ?if (i[s]) return i[s].exports;
? ? ? ?var n = i[s] = {
? ? ? ? ? ?exports: {},
? ? ? ? ? ?id: s,
? ? ? ? ? ?loaded: !1
? ? ? ?};
? ? ? ?return t[s].call(n.exports, n, n.exports, e), n.loaded = !0, n.exports
? ?}
? ?_e = e;
})({
encrypt: function(t, e, i) {},
? ?diaoyong: function(t, e, i) {}
});

5.編寫自定義方法 按照流程加密

function getkey(pass, time) {
? ?var diaoyong= _e("diaoyong");
? ?//這兒需要new一下調(diào)用方法,不然獲取不到方法屬性
? ?var new_diaoyong = (new diaoyong);
? ?return new_diaoyong.encode(pass, time)
}

效果

在這里插入圖片描述

資源下載

https://download.csdn.net/download/qq_38154948/87253109

本文僅供學(xué)習(xí)交流使用,如侵立刪!


JS逆向之webpack 通用扣取思路的評論 (共 條)

分享到微博請遵守國家法律
兰州市| 洞口县| 麻城市| 崇礼县| 德惠市| 邵东县| 平阴县| 太原市| 内丘县| 读书| 福泉市| 台前县| 运城市| 米易县| 砀山县| 闸北区| 化德县| 炎陵县| 临泉县| 盘锦市| 化州市| 定州市| 偃师市| 九龙城区| 多伦县| 石首市| 固原市| 龙江县| 彭阳县| 三原县| 宣武区| 平和县| 桓仁| 双辽市| 乐陵市| 四会市| 黔西县| 车险| 赤城县| 盖州市| 收藏|