349494 ランダム
 ホーム | 日記 | プロフィール 【フォローする】 【ログイン】

ちっぷのメモ書きブログ

ちっぷのメモ書きブログ

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
2017年07月19日
XML
カテゴリ:コンピュータ
 SeaMonkey 2.40では問題ないのにSeaMonkey 2.46ではPSO2が終了してしまう現象についてネットで探すと、Firefoxの64bit版なら動くとかブラウザ替えなきゃダメとかいう話ばかり見つかってどうしようもないのかと半ばあきらめつつも、元になってるFirefox 43からFirefox 49への間でどんな仕様の変更があったのか、他のブラウザではどうなのか、海外サイトを含めてまぁぼちぼちと調べていたんですが、原因が分かりました。
 やっぱりnProtectのトンデモ仕様でした。
 チートの中にはゲーム本体にはアクセスせず、ゲーム画面をキャプチャして必要な情報を得るタイプのものがあります。そのために画面モードを変更する場合があるのですが、それにnProtectが反応する訳です。これだけだとnProtectに否はなさそうですが、OSに組み込まれた言わば標準の機能に対しても問答無用に反応してしまうのが問題で、チートとは全く関係ないものにまで反応してしまっていました。
 SeaMonkey 2.46にも反応してしまうのは、プラグイン実行時に使用するサンドボックスという機能のためです。簡単に説明すると、アプリケーションを隔離してしまって中で何が起こっても外部への影響を最小限にしようという技術で、そのまんま遊び場の「砂場」という意味ですが、日本語のニュアンスとしては「箱庭」という方が想像しやすいかも知れません。
 隔離する訳ですから、その程度(強度とも呼びます)によっては表示周りも別に用意して合成するような事もする訳ですが、この時に画面モードの変更や再初期化が必要になります。Flash Playerもサンドボックスの対象ですから、これにnProtectが反応していたのが真相です。
 つまり「他のアプリケーションの影響により強制終了しました。」とPSO2に悪さをしたようなメッセージを出しますが、本当はただの過剰反応です。SeaMonkey 2.40と2.46の最大の違いはこのサンドボックスの有無ですので、これを制御してやればnProtectが反応する事もありません。

 ところがですね、やっと方法が分かったもののサンドボックスを採用するアプリが増えるなど影響が大きくなり過ぎたのか、nProtectの方で対応してきました。nProtectの構成ファイルの1つであるnplsm.desという小さなファイルが7月9日に更新されただけですが、サンドボックスを有効にしたままでもPSO2が終了する事はなくなりました(検証中にPlash Playerが26.0.0.137に更新されたのでその影響もあるかもしれません)。
 ただまぁnProtectですから今後も大丈夫とは言えない訳で、せっかく調べましたのでSeaMonkey 2.46のサンドボックス機能を制御する方法を書いておきます。


【前提】
・Flash Player(表示上はShockwave Flash)の保護モードを解除する
 この保護モードはFlash Player自身が持つサンドボックスに相当する機能で、アドオンマネージャーから切り替える事ができます。これを解除する事でSeaMonkeyのサンドボックスが使用されるようになり、制御が可能になります。mms.cfgでプラグイン側で保護モードを解除していた場合もSeaMonkey側のサンドボックスが使用されるようです。
 他のプラグインでもサンドボックスに相当する機能がある場合、プラグイン側でやるかSeaMonkey側でやるか選択する必要がありますが、そもそも制御手段がプラグイン側に用意されていない事もありますので色々試してみる必要があります。

【設定方法】
・about:configから“dom.ipc.plugins.sandbox-level.flash”または“dom.ipc.plugins.sandbox-level.default”の値(整数)を2から1あるいは0に変更する
 これがサンドボックス強度の設定で、前者がFlash Player専用、後者がその他のプラグイン用となっています。設定する値の意味は同じでデフォルトで2となっており、値が存在しない場合もこのデフォルト値が使用されます。必要なら作成してください。
 これを1にするとサンドボックスの強度は弱くなりますが、その分だけ従来同様のアクセスが可能になる部分が増えます。互換性は維持したいけど無防備ってのもなぁという場合に使える事があります。
 0にするとサンドボックスは使われません。SeaMonkey 2.40ではサンドボックス機能自体がない訳で、2.46にしたら作動がおかしくなるプラグインがあって1でもダメならこの設定を使う必要があります。

【サンドボックスが使われるのは現状プラグインだけ】
 例えばAcrobat Readerのpdfプラグイン。ブラウザ内に表示する場合はサンドボックスの対象になりますが、Acrobat Readerを起動して閲覧するようにしている場合はpdfプラグイン自体が使用されませんのでSeaMonkeyのサンドボックスは機能しません。


 元になったFirefoxだけでなく、Gecko系ブラウザや派生アプリでも該当部分がそのままであれば共通して使えます。ただ将来的にはFlash以外のプラグインは使えなくなる予定なんだそうです。本当はプラグイン全部を取りやめたいようですが、Flashは長く使われてきただけあって資産も多いですし影響が大き過ぎて例外扱いするしかないそうな。
 それと現状ではプラグインだけがサンドボックスの対象ですが、マルチプロセス化が進めばサンドボックスの出番が増える可能性があり、その場合は設定方法そのものが変わるかもしれません。



【2017年07月20日追記】
 もしかしたらOSの環境変数設定が必要になるかも知れないので書いておきます。普通はユーザー環境変数に設定します。システム環境変数に同じものがあった場合はユーザー環境変数の内容が優先されます。about:configと反する設定の場合、環境変数の方が優先されるらしいです(そこまで検証する前に対応されちゃったので不明です)。

・MOZ_DISABLE_GMP_SANDBOX=1
 GMP=Gecko-Media-Pluginの略でメディアを使用するプラグインにサンドボックスを使わない設定です。ただメディアの範囲が漠然としててよく分かりません。昔は翻訳ソフトとの中継プラグインなんてのがありましたが、今やそれらもアドオンによるウェブ上の翻訳サイトに置き換わってますし、全プラグインが対象になると思ってほぼ間違いないと思います。

・MOZ_DISABLE_OOP_PLUGINS=1
 OOPP(Out-Of-Process-plugin)の無効化で、具体的にはplugin-container.exe経由のプロセス分離は行わず本体から直接実行する設定です。“dom.ipc.plugins.enabled”と意味は逆ですが機能的には同じものです。ですが、ビルドによってはabout:configの設定がうまく作動しない事もあるそうで。
 これ自体はサンドボックスとは無関係ですし作動が重くなるなどあまり人気がない機能ですが、サンドボックス無効の代わりにせめてプロセス分離ぐらいはと考えるなら確認しなければならない設定です。

 環境変数の設定はsetxを使うか、[コントロールパネル]-[システム]-[システムの詳細設定]で「環境変数設定」のボタンを探して下さい(コントロールパネルから設定する場合、名前と値だけで途中の「=」は不要です)。





お気に入りの記事を「いいね!」で応援しよう

最終更新日  2017年07月20日 08時09分09秒
コメント(0) | コメントを書く
[コンピュータ] カテゴリの最新記事


■コメント

お名前
タイトル
メッセージ
画像認証
別の画像を表示
上の画像で表示されている数字を入力して下さい。


利用規約に同意してコメントを
※コメントに関するよくある質問は、こちらをご確認ください。


PR

サイド自由欄

日記に関係の無い通常連絡は、こちらの連絡用記事のコメント機能をご利用下さい。

カレンダー

カテゴリ

キーワードサーチ

▼キーワード検索

バックナンバー

2024年04月
2024年03月
2024年02月
2024年01月
2023年12月
2023年11月
2023年10月
2023年09月
2023年08月
2023年07月

コメント新着

sanagi@ Re:Windows 10 April 2018 Update(version 1803)(05/15) あ、あともう一つ嬉しい誤算が。 1803にア…
sanagi@ Re:Windows 10 April 2018 Update(version 1803)(05/15) reliveをインストールしていないはずなの…
ちっぷ_to@ Re[1]:TS3カードのサイトの作りが割といい加減(04/26) サイトのFAQにもそれらしきことは載ってな…
もよよん@ Re:TS3カードのサイトの作りが割といい加減(04/26) 今日ひっさしぶりにTS3カードのサイトにロ…
雲井@ お体ご自愛ください。 体調不良ですか、お体ご自愛下さいね。 …

フリーページ

お気に入りブログ

まだ登録されていません

ニューストピックス

楽天カード


© Rakuten Group, Inc.