愉快的调试JS代码-Charles替换JS文件

愉快的调试JS代码-Charles替换JS文件

在做 js 逆向的时候,为了方便调试和分析 js 文件,一般我们将js请求替换为我们本地自己优化好的 js 文件。

本文使用的是比较通用方式通过抓包工具 Charles 进行,请求的替换。我们的测试网站是 aHR0cHM6Ly93d3cuZG91eWluLmNvbQ==

0x1 配置Charles

关于Charles的基本配置,网上很多文章写了,我就不详细去说了,配置路径如下 Proxy->SSL Proxying Settings->SSL Proxying 勾选 Enable SSL Proxying 点击 ADD 其中 host 填写*,port 填写443。

因为我们希望使用Charles替换js文件。然后,您需要请求Charles可以捕获网页。

[En]

Since we want to use charles to replace the js file. Then you need the request that charles can catch the web page.

我们可以通过以下配置抓取系统中的请求:Proxy->MacOS Proxy

[En]

We can grab the requests made in the system through the following configuration: Proxy- > macOS Proxy

愉快的调试JS代码-Charles替换JS文件

0x2 定位目标js并替换成本地文件

在使用 Charles 抓取请求的过程中,发现浏览器 NetWork 的面板可以抓取到我们想要的请求,但是 Charles 中确搜不到,经过确认发现,当前的请求走了浏览器的缓存,所以为了避免这种现象,推荐使用谷歌浏览器的访客模式进行访问。

通过访客模式,我们成功获取了目标js的请求信息。Filter要查找目标请求,请右键单击该请求并选择Map Local,将出现下面的框。

[En]

Through the guest mode, we successfully obtain the request information of the target js. Filter to find the target request, right-click the request and select Map Local, the box below appears.

愉快的调试JS代码-Charles替换JS文件

这里是我们用本地JS替换请求的地方,在本地JS中,Map from部件由软件自动完成。我们只需要注意Map to部分,点击Choose选择我们本地优化的JS文件,然后点击OK完成替换。

[En]

Here is where we replace the request with the local JS, in which the Map From part is automatically completed by the software. We only need to pay attention to the Map To section, click Choose to select our locally optimized JS file, and then click OK to complete the replacement.

0x3 解决跨域错误的问题

为了确认我们文件是否正的替换了,可以在文件的首行添加个 alert(123)

再次打开访客请求后,观察123是否会弹出,结果没有弹出窗口。

[En]

After opening the visitor request again, watch to see if 123 pops up, and it turns out there is no pop-up window.

检查请求,发现我们的目标请求是红色的。显然,这是一条错误消息。错误类型为CORS。很明显,这个网站不支持跨域请求。

[En]

Check the request and find that our target request is red. Obviously, this is an error message. The error type is CORS. It is obvious that this website does not support cross-domain requests.

愉快的调试JS代码-Charles替换JS文件
愉快的调试JS代码-Charles替换JS文件

charles 提供的 rewrite 功能,菜单栏 的Tools 里面有个rewrite的功能,可以帮助我们修改请求信息

愉快的调试JS代码-Charles替换JS文件

打击Rewrite出现如下窗口,填入的内容如下

☑️Enable Rewrite

点击 Add 输入规则名称比如我这里叫 ALLOW_CORS。

之后填写 Location的部分,内容如下

愉快的调试JS代码-Charles替换JS文件

然后填写以下内容

[En]

Then fill in the following

愉快的调试JS代码-Charles替换JS文件

最后,总体信息如下

[En]

Finally, the overall information is as follows

愉快的调试JS代码-Charles替换JS文件

至此,整个替换过程就完成了,可以愉快调试了。

Original: https://www.cnblogs.com/c-x-a/p/16398770.html
Author: 公众号python学习开发
Title: 愉快的调试JS代码-Charles替换JS文件

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/7342/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

最近整理资源【免费获取】:   👉 程序员最新必读书单  | 👏 互联网各方向面试题下载 | ✌️计算机核心资源汇总