关于LinkWeChat的一次代码审计记录
本文由
创作,已纳入「FreeBuf原创奖励计划」,未授权禁止转载
免责声明
本帖旨在于技术交流,请勿用于任何不当用途!由此而引起的一切不良后果均与本人无关。
一、项目简介
项目名:LinkWeChat
gitee:https://gitee.com/LinkWeChat/link-wechat.git
LinkWeChat 是基于企业微信的开源 SCRM 系统,主要运用于电商、零售、教育、金融、政务等服务行业领域。
二、认证鉴权漏洞
通过对系统架构图的分析可知认证鉴权的第一道防线主要在网关lw-gateway,核心在lw-auth
通过分析gateway的有关过滤器,如AuthFilter,并未发现绕过可能。
曾尝试利用白名单加 ../的方式,但并未成功,但是通过对另外部分代码的分析发现了其它一些问题。
com/linkwechat/gateway/filter/AuthFilter.java:52
1.jwtToken伪造
通过代码审计发现系统硬编码了密钥secret,这将导致众多客户默认使用该密钥,攻击者可利用该密钥伪造出任意用户的认证信息,包括管理员。
com/linkwechat/common/utils/JwtUtils.java:27
我们通过相同的jwt算法即可生成对应目标的认证信息并成功调用接口
2.普通用户提权为系统管理员
我们首先发现了一个重置密码的接口/resetPwd
com/linkwechat/web/controller/system/SysUserController.java:276
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
文章目录