ThinkSNS SQL注射一枚(无视WAF)

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

### 简要描述: 开发时候发现的。 ### 详细说明: apps/page/Lib/Action/DiyAction.class.php 192行: ``` public function doCopyTemplate() { $id = intval ( $_POST ['id'] ); $page = $_POST ['page']; $channel = $_POST ['channel']; $databaseData = D ( 'Page' )->getPageInfo ( $page, $channel ); $result = $this->checkRole ( $databaseData ['manager'], $databaseData ); if ($result ['admin']) { echo D ( 'pageTemplate' )->saveCopyAction ( $id, $this->mid, $page, $channel ); } else { echo - 1; } } ``` 取到$_POST['channel']传入getPageInfo函数。我们看看这个函数: ``` /** * 返回页面详细信息 * @param unknown_type $id * @param unknown_type $field * @return unknown */ public function getPageInfo( $map , $field = 'id,page_name,domain,canvas,manager,status,guest,seo_title,seo_keywords,seo_description'){ $data = $this->where($map)->field($field)->find(); return $data; } ``` 光看默认值就知道,第二个参数是字段名,甚至不用考虑addslashes。 我们来试试,登录后发送如下数据包: [<img src="https://images.seebug.org/upload/201410/1301164688dc610a272d391a103e02d199fa091a.jpg" alt="02.jpg" width="600"...

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