現在自己寫程式都已經使用 CodeIgniter4 的 PHP 套件,系統會自動使用資安防護機制,如網路表單會使用 CSRF (cross-site request forgery)的機制保護,以防止不合法的資料輸入或程式機器人入侵。 但在之前未使用 CI4 之前的程式,如果要防止相關資訊安全漏洞的話,必要自己手工增加 CSRF 防護。 CSRF 產生: $_SESSION['token'] = md5(uniqid(mt_rand(), true)); 在表單添加 CSRF 隱藏欄位: <input type="hidden" name="token" value="<?php echo $_SESSION['token'] ?? '' ?>"> 在後續程序驗證 CSRF: $token = filter_input(INPUT_POST, 'token', FILTER_SANITIZE_STRING); if (!$token || $token !== $_SESSION['token']) { // return 405 http status code header($_SERVER['SERVER_PROTOCOL'] . ' 405 Method Not Allowed'); exit; } else { // process the form }