freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

关于LinkWeChat的一次代码审计记录
2023-12-04 12:01:38

免责声明

本帖旨在于技术交流,请勿用于任何不当用途!由此而引起的一切不良后果均与本人无关。

一、项目简介

项目名:LinkWeChat

gitee:https://gitee.com/LinkWeChat/link-wechat.git

LinkWeChat 是基于企业微信的开源 SCRM 系统,主要运用于电商、零售、教育、金融、政务等服务行业领域。

二、认证鉴权漏洞

通过对系统架构图的分析可知认证鉴权的第一道防线主要在网关lw-gateway,核心在lw-auth

通过分析gateway的有关过滤器,如AuthFilter,并未发现绕过可能。

曾尝试利用白名单加 ../的方式,但并未成功,但是通过对另外部分代码的分析发现了其它一些问题。

com/linkwechat/gateway/filter/AuthFilter.java:52

1701524830_656b355e4c8356d7a8b8a.png!small?1701524831012

1701524936_656b35c8db0602b6055f2.png!small?1701524937450

1701525045_656b36355d6f681773b4d.png!small?1701525046657


1.jwtToken伪造

通过代码审计发现系统硬编码了密钥secret,这将导致众多客户默认使用该密钥,攻击者可利用该密钥伪造出任意用户的认证信息,包括管理员。

com/linkwechat/common/utils/JwtUtils.java:27

1701525267_656b3713442c4f4372cf0.png!small?1701525268001

1701525575_656b3847cd86fed8d063d.png!small?1701525576219

我们通过相同的jwt算法即可生成对应目标的认证信息并成功调用接口

1701525869_656b396d30841a4fe03db.png!small?1701525870245

1701527232_656b3ec02e6e79f6c6892.png!small?1701527233024

2.普通用户提权为系统管理员

我们首先发现了一个重置密码的接口/resetPwd

com/linkwechat/web/controller/system/SysUserController.java:276

1701526554_656b3c1ae6ddde965

# 渗透测试 # 网络安全 # web安全 # 漏洞分析 # 网络安全技术
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录