摘要:文件系統(tǒng)安全如果具有權(quán)限,且在腳本中允許用戶刪除文件,那么用戶提交數(shù)據(jù),不進(jìn)行過濾,就非常有可能刪除系統(tǒng)文件從用戶目錄中刪除指定的文件上面的代碼,假設(shè)用戶提交的值是,那么目錄就會被刪除防范文件系統(tǒng)攻擊,策略如下只給有限的權(quán)限用戶提交上來的變
文件系統(tǒng)安全
php如果具有root權(quán)限,且在腳本中允許用戶刪除文件,那么用戶提交數(shù)據(jù),不進(jìn)行過濾,就非常有可能刪除系統(tǒng)文件
上面的代碼,假設(shè)用戶提交的$userfile值是 ../etc/,那么/etc目錄就會被刪除
防范文件系統(tǒng)攻擊,策略如下
只給php有限的權(quán)限
用戶提交上來的變量要監(jiān)測和過濾,不能包含文件路徑等特殊字符
盡量避免使用PHP操作文件(刪除),如果有這方面的需求,那用戶可刪除文件也必須是系統(tǒng)生成的隨機(jī)名稱,不可被用戶控制
數(shù)據(jù)庫安全數(shù)據(jù)庫安全主要防范的是sql injection,即sql注入攻擊,
提升數(shù)據(jù)庫安全的策略如下:
不用使用root帳號或者數(shù)據(jù)庫所有者帳號連接數(shù)據(jù)庫,連接數(shù)據(jù)庫限定連接用戶的ip
使用php的pdo擴(kuò)展,有效防止sql注入,除了安全方面的優(yōu)勢,php的pdo擴(kuò)展在性能方面有有很大優(yōu)勢
請參看 http://php.net/manual/en/pdo.prepared-statements.php
對一些敏感信息進(jìn)行加密,常見的比如對密碼進(jìn)行加密
用戶數(shù)據(jù)過濾對用戶數(shù)據(jù)過濾,可以防范XSS和CSRF攻擊
使用白名單(用戶輸入是固定模式)的方式
比如用戶名只能使用數(shù)字字母,那么可以使用函數(shù)ctype_alnum判斷
對用戶輸入使用函數(shù) htmlentities或者h(yuǎn)tmlspecialchars進(jìn)行處理,輸入url不允許傳入非http協(xié)議
用戶身份驗(yàn)證使用令牌 token(csrf)
http://htmlpurifier.org/ HTML Purifier 是開源的防范xss攻擊的有效解決方案,
線上環(huán)境關(guān)閉錯誤報(bào)告(error_reporting,dislay_erros,可在php.ini中配置error_log路徑,記錄錯誤信息,這樣有助于發(fā)現(xiàn)可能的用戶攻擊)
Register Globals,棄用(移除)的特性,不要使用
魔術(shù)引號特性,不要開啟,在PHP-5.4中已經(jīng)被移除
盡量使用PHP的最新版本,最新版本修復(fù)了已知的很多安全漏洞和bug
代碼中嚴(yán)格遵守上述策略,基本能保證代碼不會有太多的安全漏洞,能防范常見攻擊。
歡迎補(bǔ)充。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/20699.html
摘要:三哪些會受到同源策略限制對于瀏覽器來說,除了會受到同源策略的限制外,瀏覽器加載的一些第三方插件也有各自的同源策略。九的現(xiàn)代瀏覽器允許腳本直連一個地址而不管同源策略。 一、Origin(源) 源由下面三個部分組成: 域名 端口 協(xié)議 兩個 URL ,只有這三個都相同的情況下,才可以稱為同源。 下來就以 http://www.example.com/page.html 這個鏈接來比較說...
摘要:性能問題一般不會超過占整個項(xiàng)目性能的,一般在。內(nèi)置函數(shù)的性能優(yōu)劣。幾乎與在函數(shù)中調(diào)用局部變量的速度相當(dāng)。遞增一個全局變量要比遞增一個局部變量慢倍。類似的方法調(diào)用所花費(fèi)的時(shí)間接近于次的局部變量遞增操作。 php性能怎么優(yōu)化?性能是網(wǎng)站運(yùn)行是否良好的關(guān)鍵因素, 網(wǎng)站的性能與效率影響著公司的運(yùn)營成本及長遠(yuǎn)發(fā)展,編寫出高質(zhì)高效的代碼是我們每個開發(fā)人員必備的素質(zhì),也是我們良好...
摘要:于是乎同源策略應(yīng)運(yùn)而生主要限制在于和無法讀取。怎么繞過同源策略首先一般來說協(xié)議和端口造成的跨域問題大部分方法是沒有辦法繞過的。二級域名是寄存在主域名之下的域名。當(dāng)主域名受到懲罰二級域名也會連帶懲罰。 前言 這是一道前端跨不過躲不掉面試必備的知識,掙扎多年沒能做到刻骨銘心深入脊髓,只能好好寫篇博文記錄起來了; 什么是跨域? 廣義來說,A域執(zhí)行的文檔腳本試圖去請求B域下的資源是不被允許的,...
閱讀 889·2021-10-27 14:19
閱讀 1111·2021-10-15 09:42
閱讀 1531·2021-09-14 18:02
閱讀 744·2019-08-30 13:09
閱讀 2989·2019-08-29 15:08
閱讀 2091·2019-08-28 18:05
閱讀 955·2019-08-26 10:25
閱讀 2783·2019-08-23 16:28