欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP 編程安全性小結(jié)

 更新時間:2010年01月08日 23:53:44   作者:  
PHP 編程安全性小結(jié),這4個小技巧,大家可以參考一些成熟的cms程序。如dedecms等
規(guī)則 1:絕不要信任外部數(shù)據(jù)或輸入

  關(guān)于 Web 應(yīng)用程序安全性,必須認(rèn)識到的第一件事是不應(yīng)該信任外部數(shù)據(jù)。外部數(shù)據(jù)(outside data) 包括不是由程序員在 PHP 代碼中直接輸入的任何數(shù)據(jù)。在采取措施確保安全之前,來自任何其他來源(比如 GET 變量、表單 POST、數(shù)據(jù)庫、配置文件、會話變量或 cookie)的任何數(shù)據(jù)都是不可信任的。

  對用戶輸入進(jìn)行清理的一個簡單方法是,使用正則表達(dá)式來處理它。

  規(guī)則 2:禁用那些使安全性難以實施的 PHP 設(shè)置

  已經(jīng)知道了不能信任用戶輸入,還應(yīng)該知道不應(yīng)該信任機(jī)器上配置 PHP 的方式。例如,要確保禁用 register_globals。如果啟用了 register_globals,就可能做一些粗心的事情,比如使用 $variable 替換同名的 GET 或 POST 字符串。通過禁用這個設(shè)置,PHP 強(qiáng)迫您在正確的名稱空間中引用正確的變量。要使用來自表單 POST 的變量,應(yīng)該引用 $_POST['variable']。這樣就不會將這個特定變量誤會成 cookie、會話或 GET 變量。

  要 檢查的第二個設(shè)置是錯誤報告級別。在開發(fā)期間,希望獲得盡可能多的錯誤報告,但是在交付項目時,希望將錯誤記錄到日志文件中,而不是顯示在屏幕上。為什么 呢?因為惡意的黑客會使用錯誤報告信息(比如 SQL 錯誤)來猜測應(yīng)用程序正在做什么。這種偵察可以幫助黑客突破應(yīng)用程序。為了堵住這個漏洞,需要編輯 php.ini 文件,為 error_log 條目提供合適的目的地,并將 display_errors 設(shè)置為 Off。

  規(guī)則 3:如果不能理解它,就不能保護(hù)它

  一些開發(fā)人員使用奇怪的語法,或者將語句組織得很緊湊,形成簡短但是含義模糊的代碼。這種方式可能效率高,但是如果您不理解代碼正在做什么,那么就無法決定如何保護(hù)它。

  規(guī)則 4:“縱深防御” 是新的法寶

  即使使用 PHP regex 來確保 GET 變量完全是數(shù)字的,仍然可以采取措施確保 SQL 查詢使用轉(zhuǎn)義的用戶輸入。

  縱深防御不只是一種好思想,它可以確保您不會陷入嚴(yán)重的麻煩。

相關(guān)文章

  • php mysql操作mysql_connect連接數(shù)據(jù)庫實例詳解

    php mysql操作mysql_connect連接數(shù)據(jù)庫實例詳解

    php操作數(shù)據(jù)庫首先必須連接到指定的數(shù)據(jù)庫,連接數(shù)據(jù)庫可以使用PHP mysql_connect函數(shù),本文章向大家介紹mysql_connect函數(shù)的使用方法和實例,需要的朋友可以參考一下
    2016-12-12
  • PHP實現(xiàn)的裝箱算法示例

    PHP實現(xiàn)的裝箱算法示例

    這篇文章主要介紹了PHP實現(xiàn)的裝箱算法,結(jié)合實例形式分析了PHP裝箱算法的概念、原理、定義及使用方法,需要的朋友可以參考下
    2018-06-06
  • php字符串的替換,分割和連接方法

    php字符串的替換,分割和連接方法

    這篇文章主要介紹了php字符串的替換,分割和連接方法,分析了preg_replace、str_replace、preg_split、explode及implode等函數(shù)的功能與使用方法,需要的朋友可以參考下
    2016-05-05
  • php防止站外遠(yuǎn)程提交表單的方法

    php防止站外遠(yuǎn)程提交表單的方法

    這篇文章主要介紹了php防止站外遠(yuǎn)程提交表單的方法,實例演示了通過session與驗證碼進(jìn)行提交過濾的方法,非常實用,需要的朋友可以參考下
    2014-10-10
  • PHP MVC模式在網(wǎng)站架構(gòu)中的實現(xiàn)分析

    PHP MVC模式在網(wǎng)站架構(gòu)中的實現(xiàn)分析

    MVC模式在網(wǎng)站架構(gòu)中十分常見。它允許我們建立一個三層結(jié)構(gòu)的應(yīng)用程式,從代碼中分離出有用的層,幫助設(shè)計師和開發(fā)者協(xié)同工作以及提高我們維護(hù)和擴(kuò)展既有程式的能力。
    2010-03-03
  • php查找字符串出現(xiàn)次數(shù)的方法

    php查找字符串出現(xiàn)次數(shù)的方法

    這篇文章主要介紹了php查找字符串出現(xiàn)次數(shù)的方法,較為詳細(xì)的介紹了substr_count函數(shù)的用法,并補(bǔ)充說明了相關(guān)的字符串操作函數(shù),具有一定的實用價值,需要的朋友可以參考下
    2014-12-12
  • PHP根據(jù)IP判斷地區(qū)名信息的示例代碼

    PHP根據(jù)IP判斷地區(qū)名信息的示例代碼

    這篇文章主要介紹了PHP根據(jù)IP判斷地區(qū)名信息的方法,需要的朋友可以參考下
    2014-03-03
  • PHP實現(xiàn)的mysql讀寫分離操作示例

    PHP實現(xiàn)的mysql讀寫分離操作示例

    這篇文章主要介紹了PHP實現(xiàn)的mysql讀寫分離操作,簡單講述了mysql讀寫分離的原理,并結(jié)合實例形式給出了php針對mysql的讀寫sql語句操作不同數(shù)據(jù)庫的相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-05-05
  • PHPCMS的使用小結(jié)

    PHPCMS的使用小結(jié)

    前段時間仔細(xì)看了一下PHPCMS這套開源的系統(tǒng),實現(xiàn)了程序與模板分離,覺得寫得真的不錯。本人很少關(guān)注開源系統(tǒng),尤其是PHP的,覺得PHP本身就是一個寵大的函數(shù)庫,不過幾千個系統(tǒng)函數(shù)確實解決了不少問題。
    2010-09-09
  • PHP獲取特殊時間戳的方法整理

    PHP獲取特殊時間戳的方法整理

    時間在我們?nèi)粘5拇a編寫中會是經(jīng)常出現(xiàn)的篩選或排序條件,尤其是一些特殊時間節(jié)點的時間顯得尤為突出。今天對部分相對簡便的方法進(jìn)行了部分整理,需要的可以參考一下
    2023-01-01

最新評論