簡體   English   中英

CakePHP:防止XSS攻擊

[英]CakePHP : Prevent XSS attacks

我在cakephp中開發了一個應用程序,發現在應用程序中存儲了XSS攻擊。 為了處理這種攻擊,我在應用程序中添加了Sanitizing::clean ,它將特殊字符轉換為HTML代碼。

但是,當在鏈接$this->Html->link使用任何經過凈化處理的字符串時,由於cakephp中的默認escape=true ,該字符串將再次編碼。 &lt將&amp:lt變成&lt而不是<

可能的解決方案是在$this->Html->link添加escape=false ,但是我已經創建了該應用程序,因此html->link存在的地方太多了,因此在任何地方進行更改都不會有效。

如果還有其他解決方案請幫助??

制作一個像MyHtmlHelper這樣的自定義幫助MyHtmlHelper ,它擴展了HtmlHelper並覆蓋了link()方法。

在您的控制器中,包括使用別名功能,例如public $helpers = array('Html' => array('className' => 'MyHtmlHelper')); 因此,視圖中的$this->Html將使用自定義幫助程序的實例,而無需在視圖文件中進行任何更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM