问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
悦库企业网盘 userlogin.html SQL注入漏洞
漏洞分析
悦库企业网盘是一款专为满足企业文件管理,协同办公、文件共享需求而设计的私有部署安全、简单的企业文件管理系统。 登录框接口`/user/login/.html`处存在SQL注入漏洞,未经身份验证的远程攻击者除了可以利用SQL注入漏洞获取数据库的数据,还可以写入木马,控制服务器。 ## 二、影响版本
一、漏洞简介 ------ 悦库企业网盘是一款专为满足企业文件管理,协同办公、文件共享需求而设计的私有部署安全、简单的企业文件管理系统。 登录框接口`/user/login/.html`处存在SQL注入漏洞,未经身份验证的远程攻击者除了可以利用SQL注入漏洞获取数据库的数据,还可以写入木马,控制服务器。 二、影响版本 ------ 版本 < 5.6.8 三、漏洞原理分析 -------- 漏洞是在登录的地方,登录参数处未进行过滤,直接进行SQL语句拼接,导致SQL注入漏洞。 ![image-20240802154145234.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-593b1207d109fba759fc3b76b9ff1db9681d5595.png) 随便输入账号、密码,进行登录,然后抓包。可以看到接口地址: `user/login/.html`,请求方法为`POST`,有如下几个参数`account、password、clientId、referer、keepLogin`。下边进入代码进行跟踪调试。 ![image-20240802154233593.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-cabae732da1942e930508962e94dc926c9e00220.png) 找到登录处理函数,在入口处设置断点 ![image-20240802165206288.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-302a756ec05f529f4b2fad1ad20fad57e7ca1edc.png) 可以看到,我们请求的几个参数 ![image-20240802165420492.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-c336319adc68b37b737321974d0ec277434ee056.png) 在`OrganizationManager::CheckAccountPassword`处,会对认证账号和密码进行检查,我们思考下一般怎么检查? 大部分会拿着web端提交的账号密码,和数据库中保存的账号密码做比较。那么这里就会和数据库进行交互,很有可能就存在sql注入漏洞。 进一步跟踪调试,这里直接把用户,未进行任何处理,直接拼接进sql语句。 ![image-20240802165659528.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-2d4d64859b5b57444c7be638aefa7b49a73ca0df.png) 进入`whereRaw`查看拼接后的`where`语句。 ![image-20240802170128411.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-bb0367dcb30c2de5133f901c1eef070a84731591.png) 最终的完整SQL语句如下。 ![image-20240802170357216.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-82f398e5d8dab9c92a7ff660c689808f1fa8f423.png) 尝试构造SQL注入PAYLAOD "SELECT `password` FROM `ydisk\_user` WHERE ( `account` = BINARY ' // 可控部分 admin') AND GTID\_SUBSET(CONCAT(0x7e,(SELECT (ELT(666=666,user()))),0x7e),666)-- la0gke ' ) LIMIT 1 " 其他几个参数并未参与漏洞利用,也不是必须参数,验证的时候直接忽略即可。 四、环境搭建 ------ 查看官方文档,有详细的环境搭建步骤 <https://demo.ydisk.cn:1443/manual/docs/manager/installServer/windows> ![image-20240802171506748.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-039243b0b2fcd0db2c3112dc9e279c021839984c.png) 五、漏洞复现 ------ 输入payload`account=admin') AND GTID_SUBSET(CONCAT(0x7e,(SELECT (ELT(666=666,user()))),0x7e),666)-- la0gke`用来获取数据库当前用户 ![image-20240802170909080.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-9cf2a5bcdf9e41f2cb27bf9f65664fb2b5370ade.png) 成功复现 ![image-20240802171048169.png](https://shs3.b.qianxin.com/attack_forum/2024/08/attach-5b4425dcb255de4d227cffc676a4bde33fbd11cf.png) 六、总结 ---- 该漏洞主要是未对登录的用户名进行严格过滤,导致SQL注入的产生。可以采用占位符的方式进行查询,即可修改SQL注入漏洞。
发表于 2024-08-09 09:55:41
阅读 ( 3080 )
分类:
Web应用
0 推荐
收藏
0 条评论
请先
登录
后评论
Harper Scott
6 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!