java代码审计 efo cms
2023-6-13 12:33:28 Author: moonsec(查看原文) 阅读量:16 收藏

免责声明:本公众号所提供的文字和信息仅供学习和研究使用,不得用于任何非法用途。我们强烈谴责任何非法活动,并严格遵守法律法规。读者应该自觉遵守法律法规,不得利用本公众号所提供的信息从事任何违法活动。本公众号不对读者的任何违法行为承担任何责任。

最近暗月弄了数个安全圈交流的群 欢迎前来加入 有需要好友添加微信发送 进群

首先去修改源码中的配置文件,修改为你本地的用户名和密码。

然后启动环境之后,就进入了登录界面。

1.SQL注入漏洞

全局搜索关键字,然后去找到DAO⽂件,发现存在search用法。

跟进它。

然后再跟进listUserUploaded⽅法

但fileDAO接⼝只有三个参数,主要查询代码,映射FileSqlProvider这个类的getUserUploaded⽅法。

接着调⽤了getSqlEnds⽅法

最后调⽤getSearch⽅法,然后结束流程。

漏洞复现:

进入我的资源功能处,然后点击获取更多。

然后输入单引号,出现报错注入,证明此处确实存在SQL注入漏洞。

输入"进行验证。

成功看到报错注入。

使用sqlmap进行验证。

2.sql注入漏洞2

全局搜索关键字,然后定位到更新用户权限功能处。

然后跟进upadtePermission这个函数。

然后进入UserDAO层。

发现其未对用户的输入进行过滤,直接进行SQL查询。

漏洞复现:

进入系统设置功能处,然后点击获取更多。

发现该处存在时间盲注

也存在报错注入。

3.sql注入漏洞3

全局搜索关键字,接着进入AuthDAO层,

跟进它。

然后继续往下走。

发现未对用户输入进行处理,导致其存在SQL注入漏洞。

漏洞复现:

进入权限管理功能处,然后点击新增,然后使用burp抓包。

然后进行报错注入尝试,发现其存在报错注入。

也可以使用SQLMAP进行验证的。

4.sql注入漏洞4:

进入/file/all,在列出所有文件的地方传入参数 order by,并且没有做过滤,导致产生SQL注入漏洞,接口信息如下

发现orderBy 参数都是字符串,无过滤且是通过字符串拼接方式进行的传参

漏洞复现:

访问url地址。

发现其存在报错注入。

使用SQLMAP进行验证。

5、敏感信息泄露泄露

发现多个类中的 jsonObject 对象(一个用来按照json格式保存结果的变量)是共用的,导致认证后的 token 会在访问返回该对象的 未认证接口时泄露,就会成功进行返回。

漏洞复现:

成功获取随机生成的cookie。

6.未认证任意密码重置

进入重置密码验证码的接口 /common/{email}/code

然后测试功能需要先修改下配置中的邮箱数据, 邮箱的 smtp 服务器是 smtp.qq.com

这里向对应邮箱发送了一个验证码,并将其设置发送到对应的session中

漏洞复现

进入重置密码处。

然后获取cookie

然后利用返回的jessionid配合之前的SQL注入漏洞来修改密码。

关注公众号

公众号长期更新安全类文章,关注公众号,以便下次轻松查阅

觉得文章对你有帮助 请转发 点赞 收藏


文章来源: http://mp.weixin.qq.com/s?__biz=MzAwMjc0NTEzMw==&mid=2653587498&idx=1&sn=aa410f0e57dbd1c30fdb9cfc99058ad8&chksm=811b9e68b66c177ef02e1b3ed40efdfabb57b6aba664eb7beee772885efcdb61f1e7ab9e28b8#rd
如有侵权请联系:admin#unsafe.sh