2010-12-12 98 views
1

有沒有一種方法可以防止啓用TinyMCE的textareas惡意代碼?有沒有辦法阻止TinyMCE啓用textareas的惡意代碼?

+1

恩,你的意思是[TinyMCE](http://tinymce.moxiecode.com/)有什麼可能嗎?雖然我確實喜歡惡意TinyMice的概念...... = D – 2010-12-12 15:01:29

+0

是的,我的意思是TinyMCE。任何線索? – 2010-12-12 15:35:53

+0

Aww,TinyMice。多麼可愛。 – 2010-12-12 15:37:42

回答

0

當編輯器內容提交時,您應該對服務器端內容進行清理(即刪除scriopt標記),以防止惡意代碼保存到數據庫中。

2

是,

你必須清理服務器端的代碼,一個好的圖書館是PHP HTMLPurifier。 http://htmlpurifier.org/

HTMLPurifier的一個很酷的事情是,它具有與TinyMCE相同的聲明HTML結構的方式。

<?php 

$config = HTMLPurifier_Config::createDefault(); 
$config->set('HTML','Allowed', 
    'a[href|rel|rev|target|title|style],' . 
    'b[style],'. 
    'br[clear],'. 
    'caption[style],'. 
    'center[style],'. 
    'col[align|charoff|span|valign|width],'. 
     'colgroup[align|charoff|span|valign|width],'. 
    'em[style],'. 
    'font[color|face|size|style],'. 
    'h1[align|style],'. 
    'hr[align|noshade|size|width|style],'. 
    'img[align|alt|border|height|hspace|src|vspace|width|style],'. 
    'li[type|value|style],'. 
    'ol[start|type|style],'. 
    'p[align|style],'. 
    'span[style],'. 
    'u[style],'. 
    'ul[type|style]'); 

// Block images coming from remote host 
$config->set('URI', 'DisableExternalResources', true); 

// Purify html 
$purifier = new HTMLPurifier($config); 

// Here you get the purified html 
$html = $purifier->purify($html); 
相關問題