2015-04-18 69 views
0

我寫了一個wordpress插件,但是wordpress.org因爲消毒而拒絕了它。據WordPress的:wordpress插件中的消毒

「##消毒請您POST調用

你沒有正確消毒的POST/GET/REQUEST電話

其中$ _ POST數據插入到數據庫中的所有實例,或。爲了安全起見,這也適用於$ _REQUEST調用,另外,通過清理POST數據,您將減少XSS漏洞的可能性。 ,您需要使用輸入驗證方法或類似的東西來保護y我們的插件。最終的目標是,你應該確保無效的數據永遠不會處理。」

能有些幫助我在這裏補充一個過濾器的代碼,可以清理我的$ _ POST請求,或任何其他方式?

謝謝!

回答

1

適當的保護,而不是衛生

輸入環境衛生是不正確的做法,以安全性,它可能會被另外用於適當的保護機制,而不是它自己。

沒有一個過濾器可以清理每個輸入。如果安全性如此簡單,每個網站都將是安全的。

例如,要防止SQL注入,需要在將數據插入數據庫時​​使用預準備語句。

而對於XSS,您必須在打印字符之前對其進行編碼。

因此,這兩次攻擊不僅需要採取不同的行動來抵禦它們,還會在不同的時間阻止它們。

WordPress的,這些文章可以幫助你:

衛生

好,但WordPress的向你要適當的衛生設施。我可以想象,他們只是措辭嚴重,並且意味着您應該防範XSS和SQL注入。

如果你想增加環衛(除了 - 而不是替代 - 預處理語句和編碼),請查看以下鏈接:

+1

也是有用的[消毒功能](https://codex.wordpress.org/Function_Reference/sanitize_text_field#Related) – rnevius

+0

我只想消毒'$ _POST'電話 –

+2

@BilalNaseer爲什麼? 「GET」輸入與「POST」輸入一樣危險。 – tim