蝉知CMS注入漏洞官网演示

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

### 简要描述: 蝉知CMS注入漏洞一枚,官网演示 ### 详细说明: 1.蝉知的整体防注入还是真心做得很不错的,看了很久,都没找到什么可以利用的点。但是人无完人,程序员也总有疏忽的时候,这个时候,终于被我发现了。首先定位到漏洞system/module/message/model.php文件。 ``` public function getByObject($type, $objectType, $objectID, $pager = null) { $userMessages = $this->cookie->cmts; $userMessages = trim($userMessages, ','); if(empty($userMessages)) $userMessages = '0'; return $this->dao->select('*')->from(TABLE_MESSAGE) ->where('type')->eq($type) ->beginIf(RUN_MODE == 'front' and $type == 'message')->andWhere('public')->eq(1)->fi() ->andWhere('objectType')->eq($objectType) ->andWhere('objectID')->eq($objectID) ->andWhere("(id in ({$userMessages}) or (status = '1'))")//这里是漏洞点 ->orderBy('id_desc') ->page($pager) ->fetchAll(); } ``` 2.可以看出这里蝉知的逻辑是这样的,首先接收一个cookie:cmts,然后把这个cookie经过处理之后传入了sql语句中的in中,从上面的代码可以看出,$userMessage直接进入了in,而没有进行防注入的过滤。这就造成了注入漏洞。我们接着来看哪里调用了该函数。 system/module/message/control.php文件中。 ``` public function index($pageID = 1) { $recPerPage = !empty($this->config->site->messageRec) ?...

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