插件踩坑经验:CSRF遗漏📅 2025-08-22  |  👁 2651 次浏览

DaoKeCMS插件开发中常见的CSRF遗漏坑:

问题描述

后台表单处理POST请求时忘记校验CSRF token,导致安全漏洞。

错误写法

// 错误!缺少CSRF校验
if ($_POST) {
    $data = post('title');
    DB::insert('items', ['title' => $data]);
}

正确写法

// 正确!包含CSRF校验
if ($_POST) {
    csrf_verify() or die('CSRF验证失败');
    $data = post('title');
    DB::insert('items', ['title' => $data]);
}

// 表单中输出_csrf隐藏域
echo '';
  • 网关admin/plugin.php已自动校验CSRF
  • 自定义POST处理必须手动csrf_verify()
  • AJAX POST请求也必须携带_csrf参数

芒阳网络团域cms开发中心

Copyright © 2023 刀客CMS内容管理系统