在野0day | 亿赛通任意用户登录分析
2023-12-21 10:33:1 Author: 藏剑安全(查看原文) 阅读量:52 收藏

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。本次测试仅供学习使用,如若非法他用,与平台和本文作者无关,需自行负责。

简要分析

  1. 定位源码

全局搜索LinkFilterService,在web.xml中找到其定义。

代码路径:com/esafenet/filter/LinkFilter.class

  1. 分析源码

在service中获取四个参数(path、userId、cur、language),其中language为空时可以自动赋值,所以可忽略此参数。

接下来对于path有一个简单判断,判断是否包含给定的路径,这里不包含此路径即可跳过判断往下走。

再然后对time有一个判断,跟进isOverTime方法,其实就是判断当前是否超时,这里绕过只需要传入的时间比现在大即可。

最终到达最关键的方法buildSessionId,将userId传入到此方法中。在此方法中,通过数据库查询传入的userId值。

跟进findUserById方法,将userId传入到数据库中进行查询,没有任何的过滤和限制,只需要数据库存在此用户即可。

最后调用login方法给loginMng属性赋值。

在buildSessionId方法执行完成后,就已经生成了对应用户的cookie值。随后调用了buildLinkURL方法,此方法作用不大,只是根据path的值返回一个路径并在最后自动跳转。

所以这里绕过的思路就出来了,只需要数据库中有对应用户的值(亿赛通默认系统管理员为systemadmin),且传入的时间未超时即可生成对应用户的cookie值;至于path,可有可无,只是一个跳转而已。

漏洞复现

  1. 生成用户名和时间

  1. 获取cookie

  1. 登录后台

4.ZoomEye语法

app:"亿赛通电子文档安全管理系统"


内推|长亭科技2024届秋招开启,附内推码~

你能拿她学校的shell,但永远拿不了她的shell

渗透实战|记一次简单的Docker逃逸+反编译jar接管云主机

渗透实战|NPS反制之绕过登陆验证

渗透实战|记一次曲折的EDU通杀漏洞挖掘

免责声明
由于传播、利用本公众号藏剑安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号藏剑安全及作者不为承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
好文分享收藏赞一下最美点在看哦

文章来源: http://mp.weixin.qq.com/s?__biz=Mzg5MDA5NzUzNA==&mid=2247485784&idx=1&sn=f8933797ee09f55f033652f95a173d54&chksm=ceef4a1289c2b93dbfd82f02c5c3b064789690ebea401d1fd0068bb5ae18d81cf30168d505d8&scene=0&xtrack=1#rd
如有侵权请联系:admin#unsafe.sh