uMatrix

Last-modified: 2020-10-25 (日) 23:33:21

拡張機能 - uMatrix

ジャンルセキュリティ
バージョン
特徴内外のドメインをコンテンツ別に制御する[e]
人気投票数 5  [投票ボタン]
対応Fx
対応Tb
日本語
最新版入手先Releases · gorhill/uMatrix · GitHub [e]
uMatrix :: Versions :: Add-ons for Firefox[e]
uMatrix :: Versions :: Add-ons for Firefox(beta)[e]
ミラーサイトuMatrix :: Add-ons for Firefox[e]
制作者サイトgorhill (Raymond Hill) · GitHub [e]
英語
非公式版サイト[e]
関連サイトHome · gorhill/uMatrix Wiki · GitHub[e]
[Support] uMatrix - Add-ons / Add-on Support - Mozilla Discourse[e]
First Firefox uMatrix build created - gHacks Tech News[e]
種類ごとにサイトへのリクエストを制御するuMatrix - Firefox更新情報Wikiブログ[e]

説明・詳細

Google Chrome用の拡張機能uMatrix(μMatrix)のFirefox版です。
ページ内外のドメインへのリクエストをコンテンツ別に制御可能にします。

 

注意点

  • Cookieを禁止しても保存される
    あるドメインのCookieを禁止してもベースドメインのCookieが保存される。*1
  • 回避策
    Firefox本体の機能*2でCookieを制御する。
  • 他の拡張機能の動作が阻害される
    • 回避策
      Myルールで「matrix-off: moz-extension-scheme true」を永続的なルールに設定する。
 

WebExtensions版

  • 開発チャンネル
    • バージョン1.0.1b4
      旧拡張機能にWebExtensions版を埋め込んだハイブリッド方式。
  • バージョン1.0.1b5以降
    WebExtensions完全版。
  • WebExtensions版へ移行する際の注意点
    WebExtensions版へ移行する際に旧拡張機能版で使用していたルールが消えてしまう恐れがあるため、あらかじめ旧拡張機能版のルールをエクスポートしておくとよい。
 

専用ボタンの配色

緑色許可されているリクエストの量を面積で表す
赤色禁止されているリクエストの量を面積で表す


 

専用ボタンのパネル項目

  • タイトルバー
    uMatrixの名前とバージョン数が表示される。
    タイトルバーをクリックするとダッシュボード(設定用ページ)が開かれる。
  • ドメイン名
    閲覧ページのドメインが表示される。
  • サブドメイン有りのドメイン
    サブドメイン*3から左の範囲をクリックするとドメイン全域の背景に青いメーターが表示され、サブドメインの範囲にのみルールが適用される。
    ベースドメイン*4の範囲をクリックするとトップレベルドメインからベースドメインの範囲に背景に青いメーターが表示され、ベースドメイン全域にルールが適用される。
    トップレベルドメイン*5の範囲をクリックするとトップレベルドメインの範囲にのみ背景に青いメーターが表示され、トップレベルドメイン全域にルールが適用される。
  • サブドメイン無しのドメイン
    ベースドメイン*6から左の範囲をクリックするとドメイン全域の背景に青いメーターが表示され、ベースドメインの範囲にのみルールが適用される。
    トップレベルドメイン*7の範囲をクリックするとトップレベルドメインの範囲にのみ背景に青いメーターが表示され、トップレベルドメイン全域にルールが適用される。
  • ワイルドカード(*)ボタン
    ここをクリックすると全てのドメインにルールが適用される。
  • 電源ボタン
    左側の欄に表示されているドメインの範囲でuMatrixの有効と無効を切り替える。
    左側の欄でワイルドカードのみが表示されている場合は任意のドメインで設定しない限り全てのドメインに適応される。
    左側の欄でワイルドカードのみが表示されている状態で無効(全て許可)にした場合はブラックリスト制で運用可能になる。
    電源ボタンの右下には禁止されているリクエストの数が表示される。
  • 「…」ボタン
    プライバシー関連機能をドメイン別に切り替える。
    詳細はダッシュボードの「プライバシー」タブの各設定項目を操作するか「Myルール」タブの入力欄にルールを直接記入して設定可能。
  • Web Worker をブロック
    無断で仮想通貨の採掘を行うドメインへのリクエストを禁止する。(Firefox59以降で利用可能)
  • 完全なHTTPS
    HTTPS接続のページでは外部ドメインにHTTPS接続を厳格化する。
  • リファラの偽装
    外部ドメインへ送るリファラを偽装する。
  • <noscript> タグの偽装
    1st-party*8のスクリプトを禁止した状態でnoscript要素を含むページを開いた場合、ページ側のnoscript要素の範囲を実行する。*9
  • 錠前型ボタン
    一時的な変更を保存する。
  • 消しゴム型ボタン
    一時的な変更を破棄する。
  • パズルピース型ボタン
    有効化しているルールレシピに登録されたサイトを開いた状態でこのボタンを押すとルールレシピのルールが適用される。
  • リロードボタン
    ページを再読み込みして設定をページに反映させる。
  • 「←」ボタン
    全ての一時的な変更を元に戻す。
  • ウィンドウ型ボタン
    リクエストログ閲覧ページを開く。
    Shiftキーを押しながらウィンドウ型ボタンを押すとリクエストログ閲覧ページが別ウィンドウで開かれる。
    Firefoxのサイドバーでサイドバーのタイトルをクリックすると表示されるメニューから「uMatrix ─ Logger」をクリックするとリクエストログ閲覧ページがサイドバー内に表示される。
  • 表の機能
    • 色分け表示
      表には各ドメインや各コンテンツへのリクエストの許可・禁止状態が緑色・赤色で色分けされて表示される。
      未設定の状態になっているセルは親のセル*10から許可・禁止状態が継承され薄い色で表示される。
  • セル左上の三角部分
    既に許可・禁止状態が保存されているセルの許可・禁止状態を変更した場合はセルの左上の角に設定保存時の許可・禁止状態が色分け表示される。
  • リクエスト件数の表示
    各セル上*11には許可・禁止されているリクエストの件数が表示される。
  • クリック機能
    各セルの上半分をクリックすると許可され、下半分をクリックすると禁止される。
    各セルが許可・禁止されている状態でクリックすると未設定の状態になる。
  • Cookieの制御機能
    Cookieの制御はuMatrixよりもFirefox本体の設定が優先される。
    Firefox本体でCookieの保存設定*12を無効化しているとuMatrixではCookieを制御できないので、uMatrixでCookieを制御したい場合はFirefox側でCookieの保存設定を有効化する必要がある。

    セルの色説明
    緑色許可されている
    赤色禁止されている
    薄い緑色親のセルの状態を継承して許可されている
    ピンク色親のセルの状態を継承して禁止されている

    セル左上の三角部分の色説明
    緑色永続的に許可されている
    赤色永続的に禁止されている

  • ドメイン部分の矢印

    • サブドメインを含めたドメインをまとめて表示する。

  • サブドメインを個別に表示する。

  • 表下部の矢印

    • ホストファイルによって禁止されているドメインをまとめて表示する。

  • ホストファイルによって禁止されているドメインを個別に表示する。
 

リクエストログ閲覧ページ項目

  • ページ上部のボタンや入力欄
    • プルダウンメニュー
      リクエストログを出力したいタブのタイトルを選択する。
  • リロードボタン
    プルダウンメニューで選択中のページを読み込んでリクエストログを出力する。
  • 「∨」「∧」ボタン
    長いURLの完全表示と省略表示を切り替える。
  • 「×」ボタン
  • 消しゴム型ボタン
    リクエストログを消去する。
  • 漏斗型ボタン
    絞り込み表示の有効・無効を切り替える。
  • 入力欄1
    リクエストログを絞り込む文字列*13を記入する。
  • 絞り込み用の表現
    |hogehogehogehogeから始まるリクエストログを絞り込む
    |--ブロックされたリクエストログを絞り込む
    hogehoge|hogehogeで終わるリクエストログを絞り込む
    |hogehoge|hogehogeのみのリクエストログを絞り込む
    !hogehogehogehogeを含まないリクエストログを絞り込む
    !|--ブロックされていないリクエストログを絞り込む
  • 記入例
    !|-- facebook「google」を含むブロックされていないリクエストログを絞り込む
    |xhr google「google」を含むXMLHttpRequestのリクエストログを絞り込む
    !|image !|css画像とCSS以外のコンテンツのリクエストログを絞り込む
  • 入力欄2
    リクエストログの最大表示件数を記入する。
  • リクエストログ出力欄
    ブロックされたドメインやコンテンツが含まれるリクエストログの行は赤く表示される。
  • 1列目
    リクエストログを出力した時刻(時:分:秒)が表示される。
    マウスポインタをかざすと月日がツールチップで表示される。
  • 2列目
    クリックするとパネルがウィンドウ状態で開かれる。
  • 3列目
    ブロックした場合に「--」が表示される。
  • 4列目
    コンテンツ形式が表示される。
  • 5列目
    URLが表示される。
 

ダッシュボード項目

  • 設定
    • 利便性
      • アイコンにリクエスト数を表示する
        ブロックされたリクエストの数をツールバーの専用ボタン上に表示する。
  • ブロックした要素のプレースホルダを表示しない
    ブロックされた範囲を示すプレースホルダーを折り畳んで表示する。
  • ブロックした要素のプレースホルダを表示しない → 明示的に拒否した要素のプレースホルダを表示しない
    ホストファイルによってブロックされた要素を示すプレースホルダーのみを折り畳んで表示する。
    Myルールによってブロックされた要素を示すプレースホルダーはそのまま表示される。
  • 訪れているサイトのスクリプトがブロックされている場合に <noscript> タグを偽装する
    1st-party*14のスクリプトを禁止した状態でnoscript要素を含むページを開いた場合、ページ側のnoscript要素の範囲を実行する。*15
  • クラウドストレージのサポートを有効にする
    MyルールをFirefox Syncで共有可能にする。
  • 外観
    • 文字の大きさ:
      標準パネルの文字サイズを標準にする
      大きいパネルの文字サイズを大きくする
  • デフォルトのスコープレベル
    初期状態でルールを適用するドメインの範囲を選択する。
    サイトサブドメインを選択しサブドメインの範囲にのみルールを適用する
    ドメインベースドメインを選択しベースドメイン全域にルールを適用する
    グローバルワイルドカード(*)を選択し全てのサイトに適用する
  • 色覚障害の人に見やすい色で表示する
    セルの色分け表示を色覚障害者向けの色設定に変更する。
  • プライバシー
    • ブロックしたCookieを削除する
  • ブロックしていないセッションCookieを削除する (○○分間使用されていない場合)
    ○○分毎にブラウザ側のセッションCookieを削除する。
  • 拒否しているホストが保存した Local storage の内容を消去する
    hostsファイルによって禁止されているサイトによって作成されたローカルストレージを削除する。
  • ブラウザのキャッシュを全てクリアする(○○分おき).
    ○○分毎にブラウザ側のキャッシュを消去する。
  • サードパーティーリクエストの HTTP リファラ を偽装する
    外部ドメインへ送るリファラを外部ドメインの物に偽装する。
    「Myルール」を直接編集して特定のドメインを開いた時にのみ有効化する事も可能。
  • 完全な HTTPS: 混在したコンテンツを禁止する
    HTTPS接続のページで利用されているHTTP接続の外部ドメインを禁止する。
    「Myルール」を直接編集して特定のドメインを開いた時にのみ有効化する事も可能。
  • すべての ハイパーリンク監査 を拒否する
    a要素のping属性*16で指定された情報取得用のURLへping送信する機能を無効にする。
    Firefoxでは同様の機能を持つabout:configの項目「browser.send_pings」と連動していないため、この項目にチェックを入れなくても「browser.send_pings」の初期値falseによって機能が無効となる。
  • Myルール
    パネルのクリック操作で設定したルールが登録される。
    Temporary rulesは専用の書式に従い直接編集可能で、Permanent rulesに反映させる事もできる。
  • 永続的なルール
    パネルのクリック操作後に錠前型ボタンをクリックした場合に登録される。
    ここに登録されたルールは次回起動後も適用される。
  • ファイルへのエクスポート
    永続的なルールを指定フォルダへエクスポートする。
  • 戻す
    一時的なルールに登録されたルールの編集を終え保存した後に現在の永続的なルールを一時的なルールへ反映させ一時的なルールを編集前の状態に戻す。
  • 一時的なルール
    パネルのクリック操作後に錠前型ボタンをクリックしなかった場合に黒字*17で一時的に登録される。
    ここに登録されたルールはブラウザ終了時に自動的に削除される。
  • ←コミット
    現在の一時的なルールを永続的なルールに反映させる。
  • 編集
    一時的なルールを編集可能な状態にする。
  • 保存
    一時的なルールを保存する。
  • 破棄
    編集を中止して編集前の状態に戻す。
  • ファイルからインポート
    指定ファイルからルールをインポートする。
    バージョン0.9.0.0以降ではRequestPolicy/RequestPolicy Continued 0.5系からエクスポートされたテキストファイルをインポート可能。
    バージョン0.9.1.3以降ではNoScriptからエクスポートされたテキストファイルをインポート可能。
  • ルールの書式
    送信元ドメイン 送信先ドメイン リクエストタイプ アクション
    ルール用の送信元/送信先ドメイン説明
    *全てのドメインに適用する

    ルール用の送信先ドメイン説明
    1st-partyファーストパーティー*18に適用する。

    ルール用のリクエストタイプ説明
    *全ての内外リクエストに適用する
    cookieCookieに適用する
    image画像に適用する
    cssCSSとウェブフォントに適用する
    pluginプラグインやHTML5動画*19に適用する
    scriptJavaScriptに適用する
    xhrXMLHttpRequestに適用する
    frameframe/iframeに適用する
    otherその他のリクエストに適用する

    ルール用のアクション説明
    allow許可する
    block禁止する
    inherit親のセルの許可・禁止状態を継承する

  • ルールの書式(プライバシー関連)
    コマンド ドメイン アクション
    ルール用のコマンド説明
    https-strict:HTTPS接続のページでは外部ドメインにHTTPS接続を厳格化する
    referrer-spoof:外部ドメインへ送るリファラを外部ドメインの物に偽装する
    ua-spoof:指定時間毎にユーザーエージェントをランダムに偽装し直す

    ルール用のドメイン説明
    *全てのドメインに適用する

    ルール用のアクション説明
    true有効にする
    false無効にする

  • ルールの書式(uMatrix無効化その1)
    コマンド ドメイン アクション
    ルール用のコマンド説明
    matrix-off:uMatrixを無効にする

    ルール用のドメイン説明
    *全てのドメインに適用する

    ルール用のアクション説明
    true有効にする

  • ルールの書式(uMatrix無効化その2)
    コマンド ドメイン リクエストタイプ アクション
    ルール用のコマンド説明
    behind-the-sceneuMatrixを無効にする

    ルール用のドメイン説明
    *全てのドメインに適用する

    ルール用のリクエストタイプ説明
    *全てのリクエストタイプに適用する

    ルール用のアクション説明
    true有効にする

  • アセット
    • 上部のボタン
      • 変更を適用する
  • 今すぐアップデート
  • すべてのキャッシュをクリア
  • アセットを自動で更新する
    ホストファイルやルールレシピを自動的に更新する。
  • ホストファイル
    各URLからダウンロードしたホストファイルを利用して悪質なドメインへのリクエストを禁止する。
  • ホストファイル一覧
    チェックを入れたホストファイルを使用する。
    チェック状態変更後は「変更を適用する」ボタンを押すと適用される。
  • 追加
    下に表示される入力欄にホストファイルの内容を1行につき1つずつ記入する。
    行の先頭に「#」を付けた場合、その行は無視される。
  • ルールレシピ
    ルールレシピは各サイトの送信元/送信先ドメインやリクエストタイプの情報をまとめた物。
    ルールレシピに登録されたドメインのサイトを開いた状態で専用ボタンのパネルにあるパズルピース型ボタンを押すとルーレシシピのルールが適用される。
  • ルールレシピ一覧
    チェックを入れたルールレシピを利用可能にする。
    チェック状態変更後は「変更を適用する」ボタンを押すと適用される。
  • 追加
    下に表示される入力欄にルールレシピの内容を記入する。
    行の先頭に「#」を付けた場合、その行は無視される。
  • 詳細
    実験的な設定を可能にする。
  • 注意点
    ここの設定項目はバージョンによって変わる場合がある為、自己責任で設定する事が望ましい。
    CSS用の色名やカラーコードを指定する設定項目はサイト側による識別化が可能になる為、自己責任で設定する事が望ましい。
  • 変更を適用
  • 入力欄
    設定項目初期値説明
    contributorModefalse
    disableCSPReportInjectionfalseレスポンスヘッダにContent-Security-Policy-Report-Onlyを挿入するかどうか
    enforceEscapedFragmenttrue同一ドメインのスクリプトをブロックした場合にURLの「#!」を「?_escaped_fragment_=」に置き換えるかどうか
    framePlaceholdertrue折り畳まれていないブロックされたフレームをプレースホルダに置き換えるかどうか
    framePlaceholderBackgrounddefaultブロックされたフレームのプレースホルダの背景設定をCSSコードで指定する
    framePlaceholderDocument省略ブロックされたフレームのプレースホルダの表示を改行無しのHTMLコードで指定する
    imagePlaceholdertrueブロックされた画像の範囲をプレースホルダに置き換えるかどうか
    imagePlaceholderBackgrounddefaultブロックされた画像の範囲に置き換えたプレースホルダの背景設定をCSSコードで指定する
    imagePlaceholderBorderdefaultブロックされた画像の範囲に置き換えたプレースホルダの枠設定をCSSコードで指定する
    placeholderBackground省略プレースホルダの背景設定をCSS用のコードで指定する
    placeholderBorder省略プレースホルダの枠設定をCSS用のコードで指定する
  • uMatrixについて
    uMatrixの情報や関連リンクを表示する。
  • データ
    • ファイルにバックアップ
      設定状態をファイルで保存する。
  • ファイルから復元
    バックアップした設定ファイルから設定を復元する。
  • 初期設定に戻す
    設定を初期状態に戻す。
 

関連拡張機能

 

類似拡張機能

 


*1 保存されたCookieは次回以降は利用されないので実質的には禁止されているのと変わらない
*2 参考:Cookie|Firefox ヘルプ
*3 「fox.example.com」の場合は「fox.」
*4 「fox.example.com」の場合は「example.」
*5 「fox.example.com」の場合は「com」
*6 「example.com」の場合は「example.」
*7 「example.com」の場合は「com」
*8 同一ドメイン
*9 noscript要素の範囲内でmeta要素のリフレッシュによって外部URLへリダイレクトされている場合、外部URLへのリダイレクトが実行される
*10 表の左端にあるドメインのセルや表の上部にあるコンテンツのセル等
*11 ドメインやコンテンツのセルは除く
*12 オプション → プライバシー → 履歴 → サイトから送られてきた Cookie を保存する
*13 URLの一部やコンテンツ形式
*14 同一ドメイン
*15 noscript要素の範囲内でmeta要素のリフレッシュによって外部URLへリダイレクトされている場合、外部URLへのリダイレクトが実行される
*16 参考:a 要素 - HTML
*17 既に永続的なルールに反映されているルールはグレーで表示される
*18 同一ドメイン
*19 バージョン0.9.9b12以降で対応