免责声明:任何未经授权的黑客行为都是违法的。该文章仅用于网络安全教学,以便我们可以保护自己免受真正的黑客攻击。请遵守相关法律法规,严禁用于非法途径。
简要分析
-
定位源码
全局搜索LinkFilterService
,在web.xml中找到它的定义。
代码路径在这里:com/esafenet/filter/LinkFilter.class
-
分析源码
在service中获取四个参数:path、userId、cur和language。其中,language为空的时候可以自动赋值,因此可以忽略此参数。
接下来针对path有一个简单判断,判断它是否包含给定的路径,这里不包含该路径就可以跳过判断。
然后,对时间进行判断,并调用isOverTime方法。实际上,这个方法就是用来判断当前时间是否超过设定的时间限制。要绕过这个限制,只需要传入一个比当前时间更大的时间值即可。
最终到达最关键的方法buildSessionId
,将userId传入到此方法中。在此方法中,通过数据库查询传入的userId值。
跟进findUserById方法,将userId作为参数传递给数据库进行查询。这里没有设置任何过滤或限制条件,只需要数据库中存在该用户即可。
最后调用login方法给loginMng
属性赋值。
在buildSessionId方法执行完成后,就已经生成了对应用户的cookie值。随后调用了buildLinkURL方法,此方法作用不大,只是根据path的值返回一个路径并在最后自动跳转。
所以这里绕过的思路就出来了,只需要数据库中有对应用户的值(亿赛通默认系统管理员为systemadmin
),且传入的时间未超时即可生成对应用户的cookie值;至于path,可有可无,只是一个跳转而已。
漏洞复现
1.生成用户名和时间
2.获取cookie
3.登录后台
亿赛通任意用户登录漏洞是一种严重的安全问题,可能导致未经授权的用户访问和操作敏感数据。以下是对该漏洞的简要分析:
-
漏洞描述:该漏洞允许攻击者使用任意用户凭据进行登录,从而获得对系统的访问权限。这意味着攻击者可以冒充任何用户,包括管理员和特权用户,以执行恶意操作。
-
影响范围:该漏洞可能影响亿赛通系统的所有用户,包括管理员、特权用户和普通用户。攻击者可以利用该漏洞获取敏感数据、篡改数据或执行其他恶意操作。
-
漏洞原因:该漏洞可能是由于系统身份验证机制存在缺陷或漏洞引起的。攻击者可以利用这些缺陷,绕过身份验证机制,使用任意用户凭据进行登录。
-
修复建议:为了修复该漏洞,亿赛通应该加强身份验证机制,确保只有授权用户才能访问系统。同时,应该定期更新系统软件,以修复已知漏洞。此外,应该加强对用户的培训和教育,提高他们对安全问题的认识和防范意识。
-
防范措施:为了防止该漏洞被利用,亿赛通应该采取以下措施:
(1)限制对系统的访问权限,确保只有授权用户才能访问敏感数据和执行相关操作。
(2)加强身份验证机制,采用多因素身份验证或强密码策略,提高登录的安全性。
(3)定期更新系统软件和安全补丁,以修复已知漏洞。
(4)加强对用户的培训和教育,提高他们对安全问题的认识和防范意识。
原文始发于微信公众号(雾都的猫):亿赛通任意用户登录分析
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论