婷婷亚洲久悠悠色悠在线播放_天天爽夜夜爽人人爽一区二区_少妇群交换bd高清国语版_日韩不卡一区二区_欧美精品一二区_久久国产精品影视

18842388900

網站建設 APP開發 小程序

Article/文章

記錄成長點滴 分享您我感悟

您當前位置>首頁 > 知識 > 網站建設

PHP開發不能違反的安全規則

您必須了解的有關Web應用程序安全性的第一件事是您不應該信任外部數據。外部數據包括程序員不直接在PHP代碼中輸入的任何數據。來自任何其他來源(例如GET變量,表單POST,數據庫,配置文件,會話變量或cookie)的任何數據都是不可信的,直到采取措施確保安全性為止。

例如,以下數據元素可以被認為是安全的,因為它們是在PHP中設置的。

清單1.安全可靠的代碼$ myUsername='tmyer'; $ arrayarrayUsers=陣列( 'tmyer', '湯姆', '撬');定義( “問候語”, 'hellothere' $名為myUsername。);>

但是,以下數據元素存在缺陷。

清單2.不安全,有缺陷的代碼$ myUsername=$ _ POST ['username']; //受污染! $ arrayarrayUsers=陣列($名為myUsername, '湯姆', '撬'); //污點! define(“GREETING”,'hellothere'。$ myUsername); //污染了!>

為什么第一個變量$ myUsername有缺陷?因為它直接來自POST表單。用戶可以在此輸入字段中輸入任何字符串,包括清除文件或運行以前上載的文件的惡意命令。你可能會問,“難道你不能使用客戶端(Javascrīpt)表單驗證腳本只接受字母AZ以避免這種危險嗎?”是的,這總是一個很好的步驟,但正如你將在后面看到的那樣。任何人都可以將任何表單下載到他們自己的機器上,進行修改,然后重新提交他們需要的任何內容。

解決方案很簡單:您必須在$ _POST ['username']上運行清理代碼。如果你不這樣做,那么在任何其他時候使用$ myUsername(例如在數組或常量中),你可以污染這些對象。清理用戶輸入的簡單方法是使用正則表達式來處理它。在此示例中,您只想接受字母。將字符串限制為特定數量的字符或者要求所有字母都是小寫也是一個好主意。

清單3.使用戶輸入安全$ myUsername=cleanInput($ _ POST ['username']); //干凈! $ arrayarrayUsers=陣列($名為myUsername, '湯姆', '撬'); //干凈! define(“GREETING”,'hellothere'。$ myUsername); //干凈! functioncleanInput($輸入){$=清潔用strtolower($輸入); $ clean=preg_replace(“/[^ az] /”,“”,$ clean $ clean=substr($ clean,0,12); return $ clean;}?>

規則 2:禁用那些使安全性難以實施的PHP設置

我已經知道我不能信任用戶輸入,我應該知道我不應該相信我在我的機器上配置PHP的方式。例如,請務必禁用register_globals。如果啟用了register_globals,您可能會做一些粗心的事情,例如用$ variable替換同名的GET或POST字符串。通過禁用此設置,PHP會強制您在正確的命名空間中引用正確的變量。要使用POST形式的變量,您應該引用$ _POST ['variable']。這不會將此特定變量誤解為cookie,會話或GET變量。

規則 3:如果不能理解它,就不能保護它

一些開發人員使用奇怪的語法,或者非常嚴格地組織語句以形成簡短但模糊的代碼。這種方法效率很高,但如果您不了解代碼的作用,則無法決定如何保護它。例如,您喜歡以下兩段代碼中的哪一段?

清單4.使代碼易于保護//obfuscatedcode $ input=(isset($ _ POST ['username'])?$ _ POST ['username']:“); //unobfuscatedcode $ input=''; if(isset($ _POST ['username'])){$ input=$ _ POST ['username']; } else {$ input=''; }

在第二個更清晰的代碼片段中,很容易看到$ input存在缺陷,需要在安全處理之前進行清理。

規則 4:“縱深防御” 是新的法寶

本教程將使用示例說明如何在處理表單的PHP代碼中執行必要步驟時保護聯機表單。同樣,即使您使用PHP正則表達式來確保GET變量是完全數字的,您仍然可以采取措施來確保SQL查詢使用轉義用戶輸入。深度防御不僅僅是一個好主意,它確保你不會陷入嚴重的麻煩。現在已經討論了基本規則,讓我們來看看第一個威脅:SQL注入攻擊。

網站建設,小程序開發,小程序制作,微信小程序開發,公眾號開發,微信公眾號開發,網頁設計,網站優化,網站排名,網站設計,微信小程序設計,小程序定制,微信小程序定制

相關案例查看更多

主站蜘蛛池模板: 国产精品久久免费视频在线 | 国产一级视频观看 | 久草免费在线视频 | 99国内精品久久久久久久夜夜嗨 | 曰本一道本久久88不卡 | 中文字幕第一页在线视频 | 啪啪喷水视频 | 日日夜夜人人 | 亚洲色大成网站www久久九九 | 成人欧美一区二区三区视频 | 91女上位在线播放 | 丝袜无码一区二区三区 | 国产精品青草国产一区二区 | 亚洲午夜精品 | 91精品乱码久久久久蜜桃 | 日韩毛片免费无码无毒视频观看 | 国产精品午夜福利在线观看地址 | 边吃奶边扎下面好爽免费视频 | 亚洲色大成网站WWW看下面 | 久久网站免费视频 | 国产精品不卡顿 | 久久伊人av| 中文亚洲爆乳av无码专区 | 中文字幕在线观看国产推理片 | 性生交片免费无码看人 | 狠狠狠色 | 在线观看福利小视频 | 九九视频这里只有精品 | 欧美综合人人做人人爱 | 91精品激情在线观看最新更新 | 国产日本亚洲 | 久久人人视频 | 学园默示录在线看 | 亚洲熟女少妇一区二区 | 日本高清视频WWW夜色资源 | 国产毛片毛片毛片 | 日韩精品久久久久 | 99精品国产一区二区 | 午夜无码福利伦利理免 | 殴美在线 | 91国产精品入口 |