亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php表單安全過濾究竟要怎么做?

php表單安全過濾究竟要怎么做?

鴻蒙傳說 2018-10-04 16:10:18
網上好多方法,看來看去也不知道該用什么。具體需要過濾什么才能做到安全?用什么函數?用什么函數或方法過濾不和諧詞語最合適?最好給出一整套代碼。片段看得太多,已經亂了。。。
查看完整描述

2 回答

?
慕的地8271018

TA貢獻1796條經驗 獲得超4個贊

1.防止表單重復提交,1.用表單令牌可以解決,2.點擊提交按鈕后,立即禁用button按鈕

2.防止表單提交多余的數據, PHP 接收POST的時候,需要過濾,哪些是表單的,哪些的用戶構造的

3.防止SQL注入,進行類型強制轉換和采用PDO綁定參數方式操作數據庫(參見thinkphp數據庫類)

4.防止XSS攻擊,需要過濾掉 <script> <iframe>等危險的HTML代碼(參見thinkphp的 I 函數)

5.防止csrf攻擊,每次進行增刪查改之前,驗證一個token 即可(參見Yii2的寫法)

你要問代碼的話, 問問題千萬不要直接要代碼,只能你貼出你的代碼,讓我們幫你排錯,拒絕伸手黨,肯定是沒有的,這都是結合各個優秀的框架和開源項目積累總結的
代碼的話,可能要寫好久好久


查看完整回答
反對 回復 2018-10-10
?
largeQ

TA貢獻2039條經驗 獲得超8個贊

首先在客戶端通過JS進行初步數據過來是有效的手段,但是請注意,一切在客戶端進行的驗證都是非安全的,都是可以繞過的

然后是在代碼層進行數據過濾,例如php有些函數可以用來進行一些簡單的過濾操作:
strip_tags 可以去掉文本內容中的所有html標簽
htmlspecialchars 可以對文本內容中的html標簽進行轉義
addslashes 可以對內容中的特殊符號進行轉義

這些函數可以進行初步過濾,然后具體的內容就需要自己編寫相應的規則了,例如清除js代碼或者其他的敏感詞匯,需要自己編寫對應的正則進行替換

最后則是在執行sql時進行一些安全操作,如pdo的預處理等


查看完整回答
反對 回復 2018-10-10
  • 2 回答
  • 0 關注
  • 1377 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號