前言
在做渗透测试项目时,尤其是金融方面,经常会遇到前端JS加解密技术,看着一堆堆密密麻麻的密文,会给人一种无力感。Hook技术则会帮助我们无需获取加解密密钥的前提下,获取明文进行渗透测试
环境准备
JS-Forward
Burpsuite
Fiddler
网上公开的加解密逻辑漏洞的靶场源码
某大佬搭建的公网测试环境(请礼貌使用):http://39.98.108.20:8085/
Hook - JS技术详解
正常访问抓包,看到数据包内容被加密,一般的话,可以通过在JS寻找密钥进行加解密,但这种方法对于渗透测试来说太消耗时间和精力。因此,hook技术能够很好的运用在JS加解密中
不多赘述如何确认明文点了,本文主要讲述JSForward的用法
生成hook参数n的payload
将浏览器对应的js文件下载下来,payload放在相应参数后面
一般浏览器替换js文件有两种方式,第一种是浏览器直接替换,简单省事,但有些时候,比如我之前参加的一个银行项目,就不允许浏览器替换js文件,就可以采用第二种方式,fiddler直接流量替换,要求清除浏览器缓存,重新加载js文件进来的同时进行替换
替换后为这样
Burp抓包,数据包变成明文,但缺点很明显,失去了真实的URL
备注:
Fiddler正常开启全局代理,不需要端口转发,JSForward会自动转发到8080端口,Burpsuite监听8080端口即可