| 标题 | mtrano (Michele Trancossi) APENCMS latest (main branch, cms/weasel.php) Code Injection / SSTI (CWE-94) |
|---|
| 描述 | APENCMS WeaselCMS template engine uses eval() unsafely, allowing server-side template injection leading to remote code
execution.
cms/weasel.php lines 117-128:
function WeaselCMS($_CMS) {
$template = file_get_contents(
'theme/'.$_CMS['site']['theme'].'/index.html'
);
$template = preg_replace('/{{ (.*?) }}/', '<?= $1; ?>', $template);
$output = preg_replace($minify_search, $minify_replace, $template);
eval("?> $output <?php ");
}
The preg_replace converts {{ ... }} placeholders into executable PHP short echo tags, then the result is passed
directly to eval() without sanitization. An administrator (default credentials admin/password in cms/config.php) can
inject {{ system('id') }} into page content, which executes arbitrary PHP code when any visitor loads the page.
The same vulnerability exists in cms/weaselcms.php (identical code).
PoC: Login as admin, create a page with content {{ system("id; uname -a") }}, visit the frontend page to trigger code
execution.
CVSS 3.1: 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) |
|---|
| 来源 | ⚠️ https://github.com/mtrano/apencms |
|---|
| 用户 | milocat (UID 99840) |
|---|
| 提交 | 2026-07-20 05時09分 (2 月前) |
|---|
| 管理 | 2026-09-22 08時31分 (2 months later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 408349 [mtrano APENCMS 直到 6546096d354153309693efabb9a0d824628ed4f5 Template Engine cms/weasel.php eval $_CMS['site'] 权限提升] |
|---|
| 积分 | 20 |
|---|