ThinkPHP_3.1.3SQL注⼊漏洞复现
⾸先在⽹上下载对应的压缩包。
漏洞位于ThinkPHP/Lib/Core/Model.class.php ⽂件的parseSql函数
将这⼀条修复语句注释后开始⼀步步复现
在ThinkPHP⽬录下创建app⽂件夹后创建index.php
访问相应页⾯,显⽰这个则说明成功。
成功后app⽂件夹下会⽣成⼯程⽂件
然后开始配置数据库(在app/conf/config.php下配置)
<?php
return array(
//'配置项'=>'配置值'
// 添加数据库配置信息
'DB_TYPE'  => 'mysql', // 数据库类型
'DB_HOST'  => 'localhost', // 服务器地址
'DB_NAME'  => 'security', // 数据库名
'DB_USER'  => 'root', // ⽤户名
'DB_PWD'    => 'root', // 密码
'DB_PORT'  => 3306, // 端⼝
'DB_PREFIX' => 'think_', // 数据库表前缀
);
>
下⼀步开始为模块定义⼀个控制器类:IndexAction.class.php。命名规范(模块名+Action.class.php)
<?php
// 本类由系统⾃动⽣成,仅供测试⽤途
class IndexAction extends Action {
public function index(){
//$this->name = 'thinkphp'; // 进⾏模板变量赋值mysql下载app
//$this->display();
$Data = M('Data'); // 实例化Data数据模型
$this->data = $Data->select();
$this->display();
$model=M('think_data');
$m=$model->query('select * from think_data where id="%s"',array($_GET['id']));
dump($m);exit;
}
}
创建视图:在/Tpl下创建Index/index.html
<html>
<head>
<title></title>
</head>
<body>
/
/<p>hello, {$name}!</p>
<volist name="data" id="vo">
{$vo.id}--{$vo.data}<br/>
</volist>
</body>
</html>

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。