Home > PHP, Program > 過濾用戶提交過來的GLOBALS信息

過濾用戶提交過來的GLOBALS信息

if (isset($_REQUEST[‘GLOBALS’]) OR isset($_FILES[‘GLOBALS’])) {
exit(‘Request tainting attempted.’);
}

眾所周知,當php.ini裡面的register_globals=on時,各種變量都被注入代碼,例如來自HTML 表單的請求變量。再加上PHP 在使用變量之前是無需進行初始化的。那麼就有可能導致不安全,假如有人惡意發出這麼一個get請求”http://yourdomain /unsafe.php?GLOBALS=”,那麼就會清除$GLOBALS變量的值而導致不安全。所以我們可以這樣子寫

PHP, Program , , , ,

  1. No comments yet.
  1. No trackbacks yet.
*