亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

PHP特點之安全模式1——保安措施和安全模式

瀏覽:3日期:2022-09-15 14:13:49

PHP 的安全模式是為了試圖解決共享服務器(shared-server)安全問題而設立的。在結構上,試圖在 PHP 層上解決這個問題是不合理的,但修改 web 服務器層和操作系統層顯得非常不現實。因此許多人,特別是 ISP,目前使用安全模式。

以下是php.ini中關于安全模式的設置:

safe_mode? ? ?boolean

是否啟用 PHP 的安全模式。

safe_mode_gid? ??boolean

默認情況下,安全模式在打開文件時會做 UID 比較檢查。如果想將其放寬到 GID 比較,則打開 safe_mode_gid。是否在文件訪問時使用?UID(FALSE)或者?GID(TRUE)來做檢查。

safe_mode_include_dir? ? ?string

當從此目錄及其子目錄(目錄必須在?include_path?中或者用完整路徑來包含)包含文件時越過?UID/GID?檢查。

從 PHP 4.2.0 開始,本指令可以接受和?include_path?指令類似的風格用冒號(Windows 中是分號)隔開的路徑,而不只是一個目錄。?指定的限制實際上是一個前綴,而非一個目錄名。這也就是說“safe_mode_include_dir = /dir/incl”將允許訪問“/dir/include”和“/dir/incls”,如果它們存在的話。如果希望將訪問控制在一個指定的目錄,那么請在結尾加上一個斜線,例如:“safe_mode_include_dir = /dir/incl/”。?如果本指令的值為空,在 PHP 4.2.3 中以及 PHP 4.3.3 起具有不同?UID/GID?的文件將不能被包含。在較早版本中,所有文件都能被包含。

safe_mode_exec_dir? ? ?string

如果 PHP 使用了安全模式,?system()?和其它程序執行函數將拒絕啟動不在此目錄中的程序。必須使用?/?作為目錄分隔符,包括 Windows 中。

safe_mode_allowed_env_vars? ? ?string

設置某些環境變量可能是潛在的安全缺口。本指令包含有一個逗號分隔的前綴列表。在安全模式下,用戶只能改變那些名字具有在這里提供的前綴的環境變量。默認情況下,用戶只能設置以 PHP_ 開頭的環境變量(例如 PHP_FOO = BAR)。

注意:

如果本指令為空,PHP 將使用戶可以修改任何環境變量!

safe_mode_protected_env_vars?string

本指令包含有一個逗號分隔的環境變量的列表,最終用戶不能用?putenv()?來改變這些環境變量。甚至在 safe_mode_allowed_env_vars 中設置了允許修改時也不能改變這些變量。

當?safe_mode?設置為 on,PHP 將通過文件函數或其目錄檢查當前腳本的擁有者是否和將被操作的文件的擁有者相匹配。例如:

-rw-rw-r-- 1 rasmus rasmus 33 Jul 1 19:20 script.php-rw-r--r-- 1 root root 1116 May 26 18:01 /etc/passwd

運行?script.php

<?phpreadfile(’/etc/passwd’);?>

如果安全模式被激活,則將會導致以下錯誤:

Warning: SAFE MODE Restriction in effect. The script whose uid is 500 is notallowed to access /etc/passwd owned by uid 0 in /docroot/script.php on line 2

同時,或許會存在這樣的環境,在該環境下,寬松的?GID?檢查已經足夠,但嚴格的?UID?檢查反而是不適合的。可以用?safe_mode_gid選項來控制這種檢查。如果設置為?On?則進行寬松的?GID?檢查;設置為?Off(默認值)則進行?UID?檢查。

除了?safe_mode?以外,如果設置了?open_basedir?選項,則所有的文件操作將被限制在指定的目錄下。例如:

<Directory /docroot> php_admin_value open_basedir /docroot</Directory>

如果在設置了?open_basedir?選項后運行同樣的?script.php,則其結果會是:

Warning: open_basedir restriction in effect. File is in wrong directory in/docroot/script.php on line 2

也可以單獨地屏蔽某些函數。請注意?disable_functions?選項不能在?php.ini?文件外部使用,也就是說無法在?httpd.conf?文件的按不同虛擬主機或不同目錄的方式來屏蔽函數。如果將如下內容加入到?php.ini?文件:

disable_functions readfile,system

則會得到如下的輸出:

Warning: readfile() has been disabled for security reasons in/docroot/script.php on line 2警告當然,這些 PHP 限制不適用于可執行文件。

標簽: PHP
相關文章:
主站蜘蛛池模板: 女人黄色大片子色 | 99国内视频| 国产精品自拍在线 | 国产伦精品一区二区三区女 | 超级最爽的乱淫片免费 | 欧美特级大片 | 婷婷色在线 | 久久久久久免费播放一级毛片 | 国产亚洲精品国产一区 | 国产区在线观看视频 | 亚洲精品中文字幕午夜 | 国产成人影院一区二区 | 国产激情一级毛片久久久 | 国产一区二区日韩欧美在线 | 国产欧美亚洲精品第3页在线 | 一级一黄在线观看视频免费 | 免费看欧美毛片大片免费看 | 午夜视频吧| 成人性生活视频 | 国产日产欧产麻豆精品精品推荐 | 午夜一级免费视频 | 91国内外精品自在线播放 | 九九精品久久久久久久久 | 中文字幕最新中文字幕中文字幕 | 美利坚永久精品视频在线观看 | 男女免费爽爽爽在线视频 | 狠狠色丁香婷综合久久 | 国产精品搭讪系列在线观看 | 国产精品v欧美精品v日本精 | 在线看免费的污 | 欧美成人免费午夜全 | a毛片免费全部播放完整成 a毛片免费观看 | 亚洲国产高清在线 | 午夜一级毛片免费视频 | 免费日韩视频 | 国产美女精品 | 欧美三级一级 | 毛片毛片毛片 | 一级黄色免费片 | 亚洲色图套图 | 国内自产拍自a免费毛片 |