43

Windows 8 での Microsoft の SmartScreen フィルターは、小さな開発者にとって最悪の悪夢です。

エンド ユーザーにとってのメリットと、悪意のあるプログラムがエンド ユーザーのコンピューターにインストールされるのを阻止する有効性は理解していますが、私や他の多くの開発者は、コード署名証明書や、さらに悪いことに、EV の年次更新の料金を支払いたくありません。コード署名証明書。また、社内で使用するために開発された製品が、信頼できる発行元ストアに保存されている内部 CA からの信頼できる証明書で署名されている場合でも、フィルタの熱心すぎる動作の餌食になります。

開発者と管理者は、信頼できる発行元ストアに発行元のコード署名証明書をインストールすることで、警告とプロンプトを無効にすることができました。創造的な開発者は、有料の Authenticode コード署名証明書で署名およびタイムスタンプが付けられた前提条件をインストールするときに、そこに自己署名コード署名証明書をインストールできます。その後、発行者によって署名されたプログラムは信頼され、SmartScreen フィルター アラームは作動しません。基本的に、いったん信頼されると、発行者は定期的な料金から解放されます。

SmartScreen フィルターに対する最近の変更 (および Windows 8 の OS の "機能" としてのその組み込み) により、Microsoft が作成した問題を創造的に回避するのではなく、コード署名証明書を購入することを Microsoft が望んでいることは明らかです。デフォルトで自己署名コード署名証明書を使用する (つまり、プロンプトを表示しない) 発行者を信頼する新しい方法を発見した人はいますか? フィルターを完全にオフにする以外に、SmartScreen フィルターが常に自己署名証明書を信頼することをエンド ユーザーに知らせるにはどうすればよいでしょうか?

コードサイニング証明書を購入しても、この質問に対する答えにはならないことに注意してください。外部ソースから証明書を購入せず、組織内で使用するために独自に発行する発行元を信頼するように SmartScreen フィルターに指示する方法を探しています。

更新: 回避策を見つけたかもしれないと思います! MSDN から、Windows 8 および Internet Explorer 10 で、信頼済みサイトとしてリストされているサイトの SmartScreen フィルターを無効にすることができます。Windows 8 の信頼済みサイトからダウンロードして実行するセットアップ プログラムでこの方法が機能することを誰かが確認できれば、多くの ISV や社内開発チームの助けになるでしょう。これは、この質問に答えるために必要な回避策でもあります。信頼済みサイトはグループ ポリシーで設定できるので、そこからは簡単です。

プログラムで、信頼済みサイト ゾーンの SmartScreen フィルターを無効にするには、マシンに HKLM\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2!2301 を設定するか、HKCU\Software\Policies\Microsoft\Windows を設定します。ユーザーの \CurrentVersion\Internet Settings\Zones\2!2301 を 0 に変更し、信頼するサイトを信頼済みサイト ゾーンに追加するには、この質問に示すように実行できます。

私が提案した回避策が、信頼済みサイトからダウンロードされた署名なしまたは自己署名付きの実行可能ファイルに対して Windows 8 で機能することを確認してもらえますか? 私自身は Windows 8 を使用していません。OS アップグレードの予算を証明書の料金に費やしたからです。

4

5 に答える 5

23

MSDN の Web サイトから引用するには:

中傷する人は、SmartScreen が開発者に証明書にお金を費やすことを「強制」していると主張するかもしれません。EV コード署名証明書は、SmartScreen で評判を構築または維持するために必要ではないことを強調する必要があります。昨年 IE9 でアプリケーション レピュテーションが導入されて以来、標準のコード署名証明書で署名されたファイルや未署名のファイルでさえ、レピュテーションを構築し続けています。ただし、EV コード署名証明書の存在は、ファイルが厳格な検証プロセスを通過したエンティティによって署名され、ハードウェアで署名されたことを示す強力な指標です。これにより、システムは、署名されていない場合や署名されていない場合よりも迅速にそのエンティティの評価を確立できます。 -EV コードで署名されたプログラム。

つまり、EV (有料) の検証は、SmartScreen の警告を表示するかどうかを決定する大規模なアルゴリズムの 1 つの要素にすぎません。プログラムをダウンロードする人が多い場合、またはプログラムのダウンロード リンクがしばらく変更されていない場合は、いくつかの作業を行うことで、プログラムに警告が表示されないようにすることができます。また、コードにデジタル署名することで、Appication の評判を高めることができます。これは、トピックに関する Microsoft の Web ページから直接引用したものです。

于 2013-05-01T22:42:42.727 に答える
3

管理者権限がなくてもフィルターをバイパスする非常に簡単な方法を見つけました。あなたがする必要があるのは:

  1. メモ帳を開く
  2. 次の行を入力します。@%*
  3. "SkipSmartScreen.bat"アプリと同じフォルダーにファイルを(はい、引用符付きで) 保存します。バッチファイルの名前は後で変更できます
  4. アプリを起動するには、exe をバッチ ファイルにドラッグします。

これにより、スマートスクリーン フィルターがバイパスされます。

Windows 10 Home、Pro、Enterprise、および Windows 8 Pro でテスト済み。

使い方:

  • @- これは見た目だけで、実行中のコマンドの名前を非表示にします
  • %*- これは、渡されたすべてのコマンド ライン引数に展開されます (たとえば、バッチ ファイルにドロップしたファイル)
  • 全体:バッチファイル内の行であるかのように、バッチファイルを介してファイルを実行します。何らかの理由で、Windows はバッチ ファイルから実行されたファイルをチェックしません。
于 2016-08-04T23:47:32.030 に答える