thinkphp 某处缺陷可造成sql注射

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 简要描述: thinkphp 某处缺陷可造成sql注射 ### 详细说明: 下载最新的版本: 强调一下和ph大神的漏洞 信息不一样 地方和函数都不一样 他那个已经被修复了 写一个demo: ``` public function test(){ $data = $_GET['data']; $u = M('Data')->data(array( 'data' => $data ))->add(); dump($u); } ``` 问题出在哪里: 先看看data函数: ``` public function data($data=''){ if('' === $data && !empty($this->data)) { return $this->data; } if(is_object($data)){ $data = get_object_vars($data); }elseif(is_string($data)){ parse_str($data,$data); }elseif(!is_array($data)){ E(L('_DATA_TYPE_INVALID_')); } $this->data = $data; return $this; } ``` 没有做任何处理 然后数据流入到了add函数里面: ``` public function add($data='',$options=array(),$replace=false) { if(empty($data)) { // 没有传递数据,获取当前数据对象的值 if(!empty($this->data)) { $data = $this->data; // 重置数据 $this->data = array(); }else{ $this->error = L('_DATA_TYPE_INVALID_'); return false; } } // 数据处理 $data = $this->_facade($data); // 分析表达式 $options = $this->_parseOptions($options); if(false === $this->_before_insert($data,$options)) { return false; } // 写入数据到数据库...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息