5 种常见的前端加密渗透场景及案例

阅读量47996

发布时间 : 2022-09-21 12:00:24

 

作者:雪诺凛冬实验室 · kitezzzGrim

前端的加解密是比较常见的,无论是 web 后台还是小程序,都常常存在加解密传输,签名防篡改等机制,会使很多渗透人员没有办法直接对参数的值进行更改,大大增加了攻击者的攻击成本。

本文将结合一些实践案例,总结一些常见的前端加密场景与大家分享。

 

MD5 案例

很常规的一个登录页面,抓包查看登录请求,可以发现 password 字段被加密处理

通过搜索登录路径,定位到加密函数,可以看出调用了 JS-MD5

password 字段的处理相当于 md5(md5()) ,二次 md5

在控制台,对js中的函数和值进行输出,看是否可以得到我们需要的结果

接下来在 burp 中的 payload processing , hash 2 次即可

 

DES 案例

抓包查看登录请求

可以看到目标站点对 usernamepassword 字段都进行了加密

查看调用的js代码

可以发现是 des 加密,调用 des.js 这个js文件

在控制台可以直接调用这个加密函数

DES.Encrypt("admin")

查看 des.js 文件

做了混淆,搜了下,是类似 eval(function(p,a,c,k,e,r){}) 的加密,有在线还原的站点

得到 DES 的密钥值

 

AES 案例

抓包查看登录请求

可以看到目标站点对 usernamepassword 字段都进行了加密

查看调用的 js 代码

从以上代码可以看出 userLogin() 函数中调用 encrypt() 函数对用户名和进行了加密,接下来全局追踪并查看 encrypt() 函数

可以看出使用了 AES 加密,ECB 模式,填充模式 pkcs7padding,密钥 key=1234567887654321

同时,控制台也可调函数进行加密

encrypt('admin')

也可以结合 BurpCrypto 插件爆破账号密码

填写key,按指定的格式添加 processor

在加载 payload processing 时可选择 invoke burp extension 里添加的 processor

 

RSA 案例

抓包查看登录请求

可以看到目标站点对 usernamepassword 字段都进行了加密, 并且结果很长,很大可能是 rsa 加密

查看调用的 js 代码

可以看到 publickeyencodeRSA 关键字,目标站点对用户和密码都进行了 rsa 加密

此时,控制台可调函数进行加密

var publicKey = 'xxxxx';
encodeRSA('admin', publicKey)

JSEncrypt 的默认 RSA 加密机制是 RSAES-PKCS1-V1_5,而且还会进行 base64 编码

 

签名

在很多业务中,签名的作用是防止请求包被篡改

目标小程序存在签名,需要伪造进行越权测试

反编译审计代码,搜索 sign 签名算法

关键字:sign signature

a.data 判断有没有 post 内容,有就第一个表达式,没有则第二个表达式, i 是 xxxx123456 u 是 url.substr(1) 后面加 post 的内容 i 是时间 算个 md5 后面的表达式 xxxx 拼接 xxxx123456 url 以及时间戳

本地调用 js,生成任意手机号签名

通过伪造的签名,可具备任意用户权限,可查看、修改任意用户信息

 

总结

前端加密用 JSEncrypt 库的很多,为了节省时间,可以直接试试搜一些 jsencrypt 相关的方法名,如 setPublicKeyencrypt 等, 定位加密函数

关键字:Crypto AES DES RSA key password encrypt

前端加密作为在用户侧的防御手段,既增加攻击成本,又不影响业务,可谓是一种符合所有场景的防御办法,但前端传递参数的加密也需要配合js代码的混淆,否则攻击者依然可以轻易的绕过。

 

雪诺凛冬实验室


雪诺凛冬实验室,隶属于北京雪诺科技,聚焦零信任赛道。主要职能包括红队技术、安全狩猎等前瞻攻防技术预研、工具平台孵化。

团队成员曾多次参与大型攻防演练并获得优异名次,在渗透测试、红蓝对抗、应急响应等服务方向拥有丰富的实战经验。

本文由雪诺凛冬实验室原创发布

转载,请参考转载声明,注明出处: https://www.anquanke.com/post/id/280470

安全客 - 有思想的安全新媒体

分享到:微信
+14赞
收藏
雪诺凛冬实验室
分享到:微信

发表评论

雪诺凛冬实验室

雪诺凛冬实验室,隶属于北京雪诺科技,聚焦零信任赛道。主要职能包括红队技术、安全狩猎等前瞻攻防技术预研、工具平台孵化。

  • 文章
  • 2
  • 粉丝
  • 1

热门推荐

内容需知
  • 投稿须知
  • 转载须知
  • 官网QQ群8:819797106
  • 官网QQ群3:830462644(已满)
  • 官网QQ群2:814450983(已满)
  • 官网QQ群1:702511263(已满)
合作单位
  • 安全客
  • 安全客
Copyright © 北京奇虎科技有限公司 360网络攻防实验室 安全客 All Rights Reserved 京ICP备08010314号-66