自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

PHP安全防護(hù)要點(diǎn)分析

開(kāi)發(fā) 后端
PHP安全防護(hù)的技巧是一個(gè)合格的PHP程序員必須要掌握的知識(shí)。在實(shí)際操作中,我們應(yīng)當(dāng)不斷的積累經(jīng)驗(yàn),才能編寫出完善的編碼程序。

PHP的正確運(yùn)用為我們帶來(lái)了極大的方便之處。但同時(shí),也有不少的安全性能需要我們注意。下面我們就為大家總結(jié)了一些PHP安全防護(hù)的技巧要點(diǎn)等。#t#

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

例如,下面的數(shù)據(jù)元素可以被認(rèn)為是安全的,因?yàn)樗鼈兪窃?PHP 中設(shè)置的。

PHP安全防護(hù)清單 1. 安全無(wú)暇的代碼

 

  1. < ?php  
  2. $myUsername = ‘tmyer’;  
  3. $arrayarrayUsers = array
    (’tmyer’, ‘tom’, ‘tommy’);  
  4. define(”GREETING”, ‘hello
     there’ . $myUsername);  
  5. ?> 

但是,下面的數(shù)據(jù)元素都是有瑕疵的。

PHP安全防護(hù)清單 2. 不安全、有瑕疵的代碼

 

  1. < ?php  
  2. $myUsername = $_POST[’username’]; 
    //tainted!  
  3. $arrayarrayUsers = array($my
    Username, ‘tom’, ‘tommy’); 
    //tainted!  
  4. define(”GREETING”, ‘hello there’ 
    . $myUsername); //tainted!  
  5. ?> 

為 什么第一個(gè)變量 $myUsername 是有瑕疵的?因?yàn)樗苯觼?lái)自表單 POST。用戶可以在這個(gè)輸入域中輸入任何字符串,包括用來(lái)清除文件或運(yùn)行以前上傳的文件的惡意命令。

您可能會(huì)問(wèn),“難道不能使用只接受字母 A-Z 的客戶端(Javascrīpt)表單檢驗(yàn)?zāi)_本來(lái)避免這種危險(xiǎn)嗎?”是的,這總是一個(gè)有好處的步驟,但是正如在后面會(huì)看到的,任何人都可以將任何表單下載 到自己的機(jī)器上,修改它,然后重新提交他們需要的任何內(nèi)容。

解決方案很簡(jiǎn)單:必須對(duì) $_POST[’username’] 運(yùn)行清理代碼。如果不這么做,那么在使用 $myUsername 的任何其他時(shí)候(比如在數(shù)組或常量中),就可能污染這些對(duì)象。

對(duì)用戶輸入進(jìn)行清理的一個(gè)簡(jiǎn)單方法是,使用正則表達(dá)式來(lái)處理它。在這個(gè)示例中,只希望接受字母。將字符串限制為特定數(shù)量的字符,或者要求所有字母都是小寫的,這可能也是個(gè)好主意。

PHP安全防護(hù)清單 3. 使用戶輸入變得安全

 

  1. < ?php  
  2. $myUsername = cleanInput($_
    POST[’username’]); //clean!  
  3. $arrayarrayUsers = array(
    $myUsername, ‘tom’, ‘tommy’); //clean!  
  4. define(”GREETING”, ‘hello 
    there’ . $myUsername); //clean!  
  5. function cleanInput($input){  
  6. $clean = strtolower($input);  
  7. $clean = preg_replace(”/[^a-z]
    /”, “”, $clean);  
  8. $clean = substr($clean,0,12);  
  9. return $clean;  
  10. }  
  11. ?> 

以上就是PHP安全防護(hù)的相關(guān)技巧講解。

責(zé)任編輯:曹凱 來(lái)源: 百度博客
相關(guān)推薦

2012-05-21 10:36:23

2012-02-20 09:18:28

2012-02-17 09:29:57

2010-10-27 14:35:24

2009-01-20 10:32:19

2009-10-29 14:00:48

2012-11-13 16:12:21

2018-12-04 09:44:50

2010-09-17 14:03:40

2013-12-18 09:24:42

2012-12-13 10:09:03

2019-10-21 09:02:23

郵件安全網(wǎng)絡(luò)釣魚電子郵件

2023-09-05 07:05:35

2012-05-29 10:21:56

2011-06-21 09:01:02

2011-03-23 15:44:50

2016-07-05 09:53:57

2010-12-21 17:17:21

2010-12-24 12:47:20

2010-01-05 17:30:23

.NET Framew
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)