ホームページ > バックエンド開発 > PHPチュートリアル > php安全 - php含有html标签的内容需要过滤吗?

php安全 - php含有html标签的内容需要过滤吗?

WBOY
リリース: 2016-06-06 20:26:24
オリジナル
1425 人が閲覧しました

像发表文章的时候,通过编辑器获取的内容一般都有p、img等html标签,这样的内容不好用straip_tags来过滤。一般编辑器都会自动转义html标签,但攻击者可能会绕过编辑器,不知道这样的内容是否需要过滤,如果需要的话该怎样过滤呢?

回复内容:

像发表文章的时候,通过编辑器获取的内容一般都有p、img等html标签,这样的内容不好用straip_tags来过滤。一般编辑器都会自动转义html标签,但攻击者可能会绕过编辑器,不知道这样的内容是否需要过滤,如果需要的话该怎样过滤呢?

防御XSS攻击,最简单粗暴的做法就是用htmlspecialchars把特殊字符(&,",',)替换为HTML实体(&"'<>)后输出.防御XSS攻击,最复杂的做法就是自己写正则过滤,不过还好有HTMLPurifier库,除了能过滤XSS代码,还能把不完整的标签补全或者去掉.

<code><?php # http://htmlpurifier.org/download
require dirname(__FILE__).'/htmlpurifier/library/HTMLPurifier.auto.php';
$purifier = new HTMLPurifier();
echo $purifier->purify($html);</code>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート