CVE-2020-26935 phpMyAdmin SQL注入漏洞

简介: CVE-2020-26935 phpMyAdmin SQL注入漏洞

漏洞点发掘


首先通过CVE官方搜索列表,搜索相关CVE细节,如下图所示:


50bdb6812a75d00df716d89dfdccbf8c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


找到官方security修复通告,根据官方通告,找到对应Patches,如下图所示:


e80716c49930bb981642cbb1b3b60cde_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


根据Patches与CVE描述,找到对应漏洞点,如下图所示:


69afe71c01ea4d56a6314072cb17f433_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png



分析漏洞调用


分析源码框架


PhpMyadmin拥有libraries、sql、vendor和templates等文件夹,libraries文件夹下大多为controller模块,采用空间命名的方式,调用方法与类


588f87fb0589b90392b1d42cedc4c1a1_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


已知漏洞点在controller模块中,那么需要找到对应的调用controller的位置,可以找到三个文件调用了漏洞模块,如下图所示:


7079dab07c41f004706d7430fb06a383_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


观察图中文件,发现共同调用了其中的一个方法indexAction,对应分析indexAction方法,indexAction方法中对searchType进行了判断,对应三个文件为replace、zoom和Normal。分析补丁中的修改方法,首先分析zoomSubmitAction方法


3a280be08d14cee06d68f4498ece1810_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


可以看到在tmpData赋值后无查询语句,分析getDataRowAction方法


ca0fcf3e0f322b8a5bb48be5ab4d37da_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


可以看到方法中运行了sql语句,并且对where_clause未做任何防护措施,结合patches,断定漏洞点触发位置。

直接访问tbl_zoom_select.php?db=test&table=test,携带恶意数据即可复现漏洞。在漏洞复现时要注意选定db和table,在tbl_zoom_select.php在tbl_common.inc.php中会检测db与table是否存在,不存在则exit。


相关文章
|
1天前
|
SQL 安全
jeecg-boot sql注入漏洞解决
jeecg-boot sql注入漏洞解决
|
2天前
|
SQL 测试技术 网络安全
Python之SQLMap:自动SQL注入和渗透测试工具示例详解
Python之SQLMap:自动SQL注入和渗透测试工具示例详解
11 0
|
5天前
|
SQL 安全 关系型数据库
SQL 注入神器:SQLMap 参数详解
SQL 注入神器:SQLMap 参数详解
|
10天前
|
SQL 存储 Java
如何避免SQL注入?
【4月更文挑战第30天】如何避免SQL注入?
22 0
|
11天前
|
SQL 安全 PHP
【PHP 开发专栏】PHP 防止 SQL 注入的方
【4月更文挑战第30天】本文介绍了PHP防止SQL注入的策略,包括理解SQL注入的原理和危害,如数据泄露和系统控制。推荐使用参数化查询(如PDO扩展)、过滤和验证用户输入,以及选择安全的框架和库(如Laravel)。此外,强调了保持警惕、定期更新维护和开发人员安全培训的重要性,以确保应用安全。
|
11天前
|
SQL 存储 安全
|
11天前
|
SQL Oracle 关系型数据库
常见 SQL 注入绕过方法
常见 SQL 注入绕过方法
|
11天前
|
SQL Oracle 关系型数据库
利用 SQL 注入提取数据方法总结
利用 SQL 注入提取数据方法总结
|
11天前
|
SQL 关系型数据库 MySQL
利用 SQL 注入识别数据库方法总结
利用 SQL 注入识别数据库方法总结
|
11天前
|
SQL Oracle Java
SQL 注入神器:jSQL Injection 保姆级教程
SQL 注入神器:jSQL Injection 保姆级教程