Security Software

HTML Purifier の使い方

投稿日:2015-06-06 更新日:

HTML Purifier について

HTML Purifier は、HTML文字列に対して特定のHTMLタグやその属性を削除してくれるPHPのライブラリです。

Composerで使う方法

1. composer.json の require に、以下を追記する

  // :
  "require": {
      // :
      "ezyang/htmlpurifier": "dev-master",
      // :
  },
  // :

2. composer update する

$ composer update

3. 実際に使う

// :
use HTMLPurifier;
use HTMLPurifier_Config;
// :
class Foo {
    // :
    /**
     * HTML文字列を受け取り、purifyして返す。
     *
     * @param string $dirty_html
     * @return string
     */
    public function purify($dirty_html) {
        // HTMLPurifierを設定するためのクラスを生成する
        $config = HTMLPurifier_Config::createDefault();
        // target="_blank" が使えるようにする
        $config->set('HTML.TargetBlank', true);
        // id属性を許可する
        $config->set('Attr.EnableID', true);

        $purifier = new HTMLPurifier($config);
        return $purifier->purify($dirty_html);
    }
    // :

HTMLPurifier_Config での設定できる項目について

本家サイト

使い方に関して参考になるサイト

Pocket

-Security, Software
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


*

おすすめ記事&スポンサーリンク

関連記事

DVWA (Damn Vulnerable Web Application)とは?

DVWA(Damn Vulnerable Web Application)の公式ドキュメントによる説明と、実際に使ってみて気付いた点についてまとめておきます。 ※ 公式ドキュメントはDVWAをダウンロ …

Vimの「={motion}」機能(フィルタコマンド)について調べてみた。

インデントが適切でないプログラムソースファイルがあった場合、Vim でそのファイルを開いて「gg=G」とすると適切にインデントされる。これは、「gg」でファイルの先頭にカーソルを移動させ、「=G」でフ …

ディレクトリ・トラバーサルとファイルインクルードとの違い

Webアプリケーションのセキュリティに関して、 ディレクトリ・トラバーサル ファイルインクルード という言葉があります。この2つ違いが分かりにくいと感じているので、その辺りについてメモしておきます。 …

OWASP ZAPのPassive Scan(受動的スキャン, 非破壊的スキャン)内部処理についてのメモ

OWASP ZAP v2.2.2 の Passive Scan 動作についてのメモです。 Passive Scan は extensionの1つとして実装されています。 主な関連パッケージ org.z …

IPA ウェブ健康診断仕様を使ったWebアプリ脆弱性検査(SQLインジェクション編)

IPAが公開しているウェブ健康診断仕様の中にあるSQLインジェクションの診断をやってみます。 (ウェブ健康診断については、以前の記事 IPA ウェブ健康診断仕様とは?で説明しています) 診断内容 ウェ …


lathe