freeBuf
主站

分类

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

特色

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

点我创作

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

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

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

FreeBuf+小程序

FreeBuf+小程序

Java代码审计 | 某电商系统 漏洞分析
2025-03-12 11:27:56
所属地 山西省
存在漏洞情况1.水平越权
2.订单状态修改
3.任意文件上传
4.xss漏洞

一、说明

starsea-mall 项目是一套电商系统,包括 starsea-mall 商城前台系统及商城后台系统,基于 Spring Boot 2.X 及相关技术栈开发。 前台商城系统包含首页登录、商品分类、新品上线、首页轮播、商品推荐、商品搜索、商品展示、购物车、订单结算、订单流程、个人订单管理、会员中心、帮助中心等模块。 后台管理系统包含数据面板、轮播图管理、商品管理、订单管理、会员管理、分类管理、设置等模块。
项目地址https://github.com/StarSea99/starsea-mall

二、项目搭建

下载源码,使用idea导入

创建相应的数据库,更改配置信息

项目访问地址如下: 后台地址: http://127.0.0.1:8080


三、组件漏洞审计

我们对系统的组件先进行统计看看有没有历史漏洞

组件名称

组件版本

是否存在漏洞

mybatis

2.1.3

不存在

springfox-swagger2

2.7.0

不存在

springfox-swagger-ui

2.7.0

不存在

commons-fileupload

1.6

不存在

没有发现组件存在漏洞

四、单点漏洞审计

1.水平越权

我们在更改信息的时候发现数据包参数有id值,于是就尝试修改了一下id值看看能不能接管其他id的账户


这是我们直接抓的默认数据包


我们直接将userId值改一下,我们从数据库看到的这些值


将userid改为1发现成功接管了它的账户


我们从代码方面进行分析

跟踪这个接口的路由/personal/updateInfo


传进来的参数为用户信息和用户的身份验证,之后调用了updateUserInfo这个方法

我们跟踪一下updateUserInfo这个方法


继续跟


此方法首先从HTTP会话中获取当前用户的临时信息,然后根据提供的新信息更新数据库中的用户信息

更新成功后,将新的用户信息更新到HTTP会话中


主要是这部分存在漏洞缺陷,它只判断了用户id是否存在在数据库中,却不校验是不是我们登录用户的这个id值,这样我们就可以通过修改id值去接管该id值的用户了。

2.订单状态修改

我们从数据库中可以看到支付状态的校验仅仅只用0和1来判断


我们正常支付抓一下支付成功的数据包


跟踪一下/paySuccess这个路径


发现它只根据订单号和支付状态去判断,所以我们这里只要修改一下支付状态就可以进行支付绕过了

我们验证一下


这是一个未支付的订单号,我们改一下数据包发送看看可以成功吗


发现确实存在该逻辑漏洞

3.任意文件上传


上传图片进行抓包


修改后缀看可不可以上传


发现可以上传说明存在任意文件上传漏洞

我们进入代码层面看看

跟踪路径/upload/file


发现这段代码并没有对文件后缀校验,但我们前端不能直接上传jsp类的特殊文件,说明该系统的文件上传过滤仅仅只是前端过滤。所以我们可以进行抓数据包修改来绕过

4.xss漏洞

我们在修改商品信息的参数中发现xss漏洞


我们去代码层面分析一下

定位到该路径/admin/goods/update

发现这里没有进行任何过滤,就直接执行了data里面的信息,我们也没有在拦截器和过滤器里面发现关于xss漏洞的过滤情况,所以存在xss漏洞。

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