piwigo v2.9.5的5个sql注入分别是怎样的

0x0 项目介绍

项目地址:https://github.com/Piwigo/Piwigo

项目介绍:piwigo是用于网络的开源照相馆软件。 专为组织,团队和个人管理您的照片库而设计。

官网地址:piwigo.org

0x1 准备工作

Linux下下载https://github.com/Piwigo/Piwigo/archive/2.9.5.zip解压、赋权、进入目录后使用docker安装:

docker run -d --name piwigo_mysql -e MYSQL_DATABASE=piwigo -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7docker run -d -p 3000:80 -v $(pwd)/:/var/www/html/ --link piwigo_mysql:mysql --name piwigo nimmis/apache-php5

即可看到启动界面

0x2 审计

一 admin/group_perm.php中selection和parent参数存在的注入

selection值未经验证进入到move_categories函数中

piwigo v2.9.5的5个sql注入分别是怎样的

追踪move_categories函数可以看到函数把该值分解后直接接入到sql语句中

piwigo v2.9.5的5个sql注入分别是怎样的

测试下即可发现漏洞存在

piwigo v2.9.5的5个sql注入分别是怎样的piwigo v2.9.5的5个sql注入分别是怎样的

二 admin/group_list.php中group_selection参数存在的sql注入:

图中可以看到group_selection值被放入到$groups中,selectAction值被放入到$action里

piwigo v2.9.5的5个sql注入分别是怎样的

代码中$action对应多个动作,但是在多个动作里$group都被直接粘结到sql语句中,这儿我举delete方法看下:

piwigo v2.9.5的5个sql注入分别是怎样的

这儿很直观看到被放进了sql语句中,试验下

piwigo v2.9.5的5个sql注入分别是怎样的

三 admin/user_perm.php中cat_false参数存在的sql注入:

图中可以看到cat_false被放入到函数中,

piwigo v2.9.5的5个sql注入分别是怎样的

我们追踪下这个函数,在admin/include/functions.php中找到函数,$cat_false值变为$category经过判断是否是数组判断数量后被放入get_uppercat_ids函数中处理,

piwigo v2.9.5的5个sql注入分别是怎样的

继续追踪get_uppercat_ids函数,上述存在漏洞的参数变为$cat_ids,图中可以看到该$cat_ids经过简单判断被放入sql语句并开始查询,

piwigo v2.9.5的5个sql注入分别是怎样的

这种漏洞函数跳转比较多,且没有明显的看到回显地方,这种场合特别适合时间注入,我们使用

1 and if(ascii(substr(database(),1,1))>97,1,sleep(5))验证可以发现网页打开时间延迟,证明漏洞存在,使用sqlmap跑一波

piwigo v2.9.5的5个sql注入分别是怎样的

piwigo v2.9.5的5个sql注入分别是怎样的

四 admin/group_perm.php存在的sql漏洞:

这个漏洞跟上面三种admin/user_perm.php漏洞相同,调用的同一个函数,只是用户和组的区别,看张入口图意思一下:

piwigo v2.9.5的5个sql注入分别是怎样的

sqlmap跑一下

piwigo v2.9.5的5个sql注入分别是怎样的

piwigo v2.9.5的5个sql注入分别是怎样的

五 admin/batch_manager.php中filter_category参数存在的注入:我们看具体代码:

当post包中存在’filter_category_use’键时将’filter_category’值给xx[‘category’]

piwigo v2.9.5的5个sql注入分别是怎样的

往下走,找到xx[‘category’]被调用的地方,可以看到该值未被过滤直接被放到sql语句中。

需要注意的是这个请求链接在网页中并未找到,需要手工在post包添加filter_category_use=on&filter_category=1

piwigo v2.9.5的5个sql注入分别是怎样的

sqlmap跑一下

piwigo v2.9.5的5个sql注入分别是怎样的

piwigo v2.9.5的5个sql注入分别是怎样的

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

文章标题:piwigo v2.9.5的5个sql注入分别是怎样的,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/29958

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
亿速云的头像亿速云认证作者
上一篇 2022年9月26日 上午1:59
下一篇 2022年9月26日 上午2:01

相关推荐

  • 如何进行Linux恶意软件SkidMap分析

    挖掘加密货币恶意软件仍然是一个普遍的威胁。网络罪犯也越来越多地探索新的平台和方法来进一步利用挖矿恶意软件——从移动设备、Unix和类Unix系统到服务器和云环境。 攻击者不断提升恶意软件抵御检测的能力。例如,将恶意软件与看门狗组件捆绑在一起,以确保非法的加密货币挖掘活动在受感染的机器中持续存在,或者…

    2022年9月20日
    82400
  • excel页面布局位置在哪

    excel页面布局位置: 1、双击打开WPS 2、点击新建进入,选择新建excel空白文档 3、选择打印预览功能 4、点击“页面布局” 5、点击查看整体页面布局即可 到此,关于“excel页面布局位置在哪”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想…

    2022年8月27日
    65400
  • windows连不上网怎么安装网卡驱动

    连不上网安装网卡驱动的方法: 方法一: 1、大部分的系统都是自带驱动程序的。 2、因此只要右键此电脑,打开“管理” 3、接着进入“设备管理器” 4、然后右键网卡,选择“更新驱动程序” 5、随后选择“浏览我的电脑以查找驱动程序” 6、最后选择本地驱动位置,就可以安装了。 方法二: 1、如果不行,那就在…

    2022年8月30日
    1.6K00
  • HTML5导航标签指的是什么

    在HTML5中,nav标签是导航标签;nav的全称是navigation,意为导航,该标签定义导航链接的部分,用于表示HTML页面中的导航,该标签并不是所有的HTML文档都要使用,只是作为标注一个导航链接的区域。 本教程操作环境:windows10系统、HTML5版本、Dell G3电脑。 HTML…

    2022年8月31日
    65600
  • node强缓存和协商缓存怎么实现

    什么是浏览器缓存 浏览器缓存(http 缓存) 是指浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档。 优点 减少了冗余的数据传输,节省带宽,减少服务器压力 加快了客户端加载速度,提升用户体验。 强缓存 强缓存不会向服务器发送请求,而是直…

    2022年9月21日
    92200
  • CDR最新版本的图框精确剪裁位置在哪

    CDR最新版本的图框精确剪裁: 答:在“对象”工具栏下。 1、CDR最新版本将图框精确剪裁改名为“PowerClip”了,所以找不到。 2、我们只需要点击上方“对象”按钮,将鼠标移动到“PowerClip”就可以使用图框精确剪裁了。 3、这是上一代版本的图框精确剪裁,同样在“对象”下,不过是中文所以…

    2022年9月24日
    86400
  • Java多态的概念和特点是什么

    一、多态的概念 继承关系使一个子类能继承父类的特征,并且附加一些新特征。子类是它的父类的特殊化,每个子类的实例都是其父类的实例,但是反过来不成立。例如:每个圆都是一个几何对象,但并非每个几何对象都是圆。因此,总可以将子类的实例传给需要父类型的参数。参考案例如下: public class Polym…

    2022年9月1日
    46500
  • C#非托管泄漏中HEAP_ENTRY的Size为什么会对不上

    一:背景 1. 讲故事 前段时间有位朋友在分析他的非托管泄漏时,发现NT堆的_HEAP_ENTRY 的 Size 和 !heap 命令中的 Size 对不上,来咨询是怎么回事? 比如下面这段输出: 0:000> !heap 0000000000550000 -aIndex Address Na…

    2022年9月22日
    56800
  • windows任务管理器怎么打开

    任务管理器打开的详细方法 方法一:右键点击任务栏空白处,然后点击“任务管理器”即可。 方法二:同时按下“Win+R”键,然后在弹出的对话框中输入“cmd”并按回车键。 接着在任务管理器输入“taskmgr”运行即可。 方法三:同时按下“Ctrl+Alt+Delete”键即可。 方法四、按“WIN+X…

    2022年9月5日
    58100
  • 如何分析Google Chrome远程代码执行0Day漏洞通报

    一、概述 2021年4月13日,安天CERT发现国外安全研究员发布了Google Chrome浏览器远程代码执行0Day漏洞的PoC,攻击者可以利用漏洞构造特制的页面,用户访问该页面会造成远程代码执行,漏洞影响Chrome最新正式版(89.0.4389.114)以及所有低版本。安天CERT跟进复现,…

    2022年9月26日
    61900
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部