5個PHP安全措施

2022-09-23 22:54:13 字數 1248 閱讀 4969

多年來,php一直是乙個穩定的、廉價的執行基於web應用程式的平台。像大多數基於web的平台一樣,php也是容易受到外部攻擊的。開發人員、資料庫架構師和系統管理員在部署php應用程式到伺服器之前都應該採取預防措施。大部分預防措施可以通過幾行**或者把應用程式設定稍作調整即可完成。

#1:管理安裝指令碼

如果開發人員已經安裝了一套第三方應用程式的php指令碼,該指令碼用於安裝整個應用程式的工作元件,並提供乙個接入點。大多數第三方軟體包都建議在安裝後,刪除該目錄包含的安裝指令碼。但開發人員希望保留安裝指令碼,他們可以建立乙個.htaccess檔案來控制管理訪問目錄。

authtype basic

authname 「administrators only」

authuserfile /usr/local/apache/passwd/passwords

require valid-user

任何未經授權的使用者,如果試圖訪問乙個受保護的目錄,將會看到乙個提示,要求輸入使用者名稱和密碼。密碼必須匹配指定的「passwords」檔案中的密碼。

#2:標頭檔案

在很多情況下,開發人員可以將分布在應用程式的幾個指令碼包含進乙個指令碼裡。這些指令碼將包含乙個「include」指令,整合單個檔案到原始頁面的**裡。當「include」檔案包含敏感資訊,包括使用者名稱、密碼和資料庫訪問金鑰時,該檔案的副檔名應該命名成「.php ",而不是典型的「.inc」擴充套件。「.php」擴充套件確保php引擎將處理該檔案,並防止任何未經授權的訪問。

#3: md5 vs. sha

在某些情況下,使用者最終會建立自己的使用者名稱和密碼,而站點管理員通常會對表單提交的密碼加密,並儲存在資料庫中。在過去的幾年中,開發人員會使用md5(訊息摘要演算法)函式,加密成乙個128位的字串密碼。今天,很多開發人員使用sha-1(安全雜湊演算法)函式來建立乙個160位的字串。

#4: 自動全域性變數

php.ini檔案中包含的設定稱為「register_globals」。p伺服器會根據register_globals的設定,將會為伺服器變數和查詢字串自動建立全域性變數。在安裝第三方的軟體包時,比如內容管理軟體,像joomla和drupal,安裝指令碼將引導使用者把register_globals設定為「關閉」。將設定改變為「關閉」可以確保未經授權的使用者無法通過猜測變數名稱及驗證密碼來訪問資料。

#5: 初始化變數和值

許多開發人員都落入了例項化變數不賦值的陷阱,原因可能由於時間的限制而分心,或缺乏努力。身份驗證過程中的變數,應該在使用者登入程式開始前就有值。這個簡單的步驟可以防止使用者繞過驗證程式或訪問站點中某些他們沒有許可權的區域

PHP的5個安全措施小結

開發人員 資料庫架構師和系統管理員在部署php應用程式到伺服器之前都應該採取預防措施。大部分預防措施可以通過幾行 或者把應用程式設定稍作調整即可完成。1 管理安裝指令碼 如果開發人員已經安裝了一套第三方應用程式的php指令碼,該指令碼用於安裝整個應用程式的工作元件,並提供乙個接入點。大多數第三方軟體...

為您介紹5個 PHP 安全措施

多年來,php一直是乙個穩定的 廉價的執行基於web應用程式的平台。像大多數基於web的平台一樣,php也是容易受到外部攻擊的。開發人員 資料庫架構師和系統管理員在部署php應用程式到伺服器之前都應該採取預防措施。大部分預防措施可以通過幾行 或者把應用程式設定稍作調整即可完成。1 管理安裝指令碼 如...

Jboss安全措施

在使用jboss的 上線前,一定要禁掉一些預設功能,以免受攻擊。1 禁止瀏覽目錄 在 server default deploy jbossweb tomcat55.sar conf的web.xml中找到listings,改為false。default org.apache.catalina.ser...