web-dev-qa-db-ja.com

セキュリティパッチの段階的な展開は悪いですか?

多くのAndroidデバイス(Google Nexusラインを含む)は、OTAアップデートを介して毎月のセキュリティパッチを受け取ります Android Security Bulletins を伴います。ただし、これらのアップデートは頻繁にリリースされますすべてのユーザーがすぐに利用できるようになるのではなく、(同じモデルの)より多くのデバイスで更新が利用可能になる、「段階的ロールアウト」と呼ばれるもの。

機能の更新については、段階的なロールアウトにより、すべてのユーザーが新しいソフトウェアを受け取る前にエラーまたはバグを修正できることを理解しています。 ただし、セキュリティパッチについては、リリースが時間をずらすことにより、Blackhatハッカーが、デバイスにまだOTAを受信して​​いないユーザーに対する現在公開されている脆弱性を利用することをはるかに容易にします。彼らのデバイスモデルはすでに利用可能ですか?

たとえば、すべてのAndroidアップデートを最初に受信することになっているはずのGoogle Nexusスマートフォンがあります。最新のAndroidセキュリティアップデートは、 2016年5月4日、およびそのソースコード。すでに2016年5月16日であり、「アップデートの確認」ボタンをクリックしても、Nexusデバイスから「システムは最新の状態です」と表示されます。もちろん、最新のファームウェアイメージを手動でダウンロードして手動でフラッシュすることはできますが、公開された後、同じモデルのすべてのデバイスでセキュリティ更新をできるだけ早く利用できるようにしないでください。

編集:非常に思慮深い回答をありがとうございます。この質問はさまざまなデバイスに広く適用できるように意図されていますが、私の特定の懸念は、その特定のモデル用のパッチがすでに開発されている場合、同じモデルの同一のデバイスへの意図的な「段階的な展開」です。たとえば、2016年5月のセキュリティアップデートは月初にGoogle Nexus 6P向けにリリースされていますが、5月16日現在、すべてのNexus 6PデバイスがOTAアップデートを受け取っているわけではありません。 Googleは毎月Nexusデバイスのセキュリティパッチをリリースしており、同じモデルの他のデバイスよりも数週間遅れて一部のデバイスにそれらのパッチが毎月届きます。

63
tonytan

すばらしい質問です。

はい、あなたの理解は正しいですし、その背後にある根拠も正しいです。

多くの場合、新機能の展開をずらすことは理にかなっています。

セキュリティパッチの展開をずらすことはめったにありません。ご指摘のとおり、これにより脆弱性が悪用される機会がさらに広がります。おそらくさらに重要なのは、パッチをすばやくリバースエンジニアリングして、エクスプロイトを迅速に開発できることです。

マイクロソフトは、毎月第2火曜日(および場合によっては第4火曜日)にパッチを公開します。これは一般に " Patch Tuesday "と呼ばれています。翌日を「エクスプロイト水曜日」と呼ぶのには理由があります。

Androidエコシステムのかなりの部分がこの現象から学んでいないのは残念です。

更新:
数人の知識のある人々が、インターネット全体に過負荷をかける恐れを含む、インターネットインフラストラクチャへの潜在的な影響を指摘しています。インターネットトラフィックの量は莫大です。セキュリティパッチは、非常に大きいものであっても、バケット内の小さなドロップです。マイクロソフトは毎月同じ日に何億人ものユーザーに大きなパッチをリリースしていますが、彼らはまだ「インターネットを破壊」していません。 Netflix、YouTube、Twitchは毎日何百万人もの人々にビデオをストリーミングしており、それらを組み合わせたトラフィックがあっても、まだ「インターネットを破壊する」には至っていません。

一方、Androidパッチは主に(ただし排他的ではなく)ワイヤレスユーザーに配信されます。)潜在的な問題には解決策があります:

  1. パッチをダウンロードするタイミングをユーザーに選択できるようにします。これには多くの利点があります:
    • ユーザーのワークフローを中断しない
    • 人間の相互作用と意思決定の多様性により、交通渋滞を引き起こす
    • ユーザーがより高い帯域幅のシステム(おそらく職場、大学、自宅のWiFi)に接続するまで待つことができます。
    • ユーザーが自分のリスクで待機し、他のユーザーがパッチの問題を報告するかどうかを確認できます。
  2. 影響を受ける可能性のあるインフラストラクチャが限られていることがわかっている特定のリージョンにパッチを配布する場合、インフラストラクチャの過負荷を避けるために、パッチを最小日数ずらしてください。

具体的にはGoogle Nexus 6Pのセキュリティ更新がすべてのユーザーにすぐにリリースされないことに関しては、これは単にGoogleが不適切な選択であり、顧客の利益に反するものではありません。大量のインターネットトラフィックと比較すると、これらのパッチはごくわずかです。

その上、Android=エコシステムではそのデバイスは比較的まれです。これは、すべての顧客にパッチを一度にリリースしてもインターネットプロバイダーに害を及ぼさないという声明をさらにサポートします。

全体Google Nexus製品ラインでさえ、Android世界のごく一部です。ただし、製品ラインとしては、特定の地域のインフラストラクチャへの影響など、次の方法論は、上記で概説した推奨事項と組み合わせながら、パッチの配布を最大化しながらインフラストラクチャへの影響を最小限に抑えます。

  1. ゼロデイエクスプロイトパッチをすぐにリリースする
  2. 毎月、製品ごとに異なる日に、スケジュールされた更新をリリースする
  3. 製品の市場シェアが大きく、地域のインフラストラクチャに大きな影響を与える可能性がある場合は、その地域のみでインフラストラクチャの過負荷を回避するために必要な最小限の日数で展開をずらします

最後に、あなたの声明によると、GoogleがGoogle Nexus 6Pのパッチを最初にリリースしてから2週間以上になります。彼らのパッチが大混乱を引き起こしているかどうかを知るのに十分な時間です。悪いパッチの束を認識または謝罪するGoogleのドキュメントも、深刻な問題の事例証拠も見つかりませんでした。

欠陥のあるパッチを検出し、トラフィックの負荷を軽減するために、数日にわたってパッチをずらして配置することが合理的である可能性があるという主張をすることができます。しかし、顧客に何週間もパッチを当てないままにすることは、不合理で不必要であり、情報セキュリティの観点からは効果的なポリシーではありません。

結論として、上記の説明、およびGoogleがセキュリティパッチをデバイスに展開していないというあなたの説明に基づいて、私の結論は、影響を受けるすべてのGoogle Nexus 6Pユーザーにセキュリティパッチを提供していないため、Googleは不適切な決定を下し、顧客に害を及ぼしています。

56
RockPaperLizard

ただし、セキュリティパッチについては、デバイスモデルのパッチがすでに利用可能であるにもかかわらず、ブラックハッカーがデバイスにまだOTAを受け取っていないユーザーに対する現在公開されている脆弱性をブラックハッカーが利用することをはるかに容易にしませんか?

何よりも簡単ですか?、それが重要な質問です。はい、ハッカーにとって、更新がプッシュされている数日間は簡単です。しかし、更新がまったく送信されなかった場合は、ハッカーにとってははるかに困難になります。

時差のあるリリースにより、ネットワークが動き続け、サーバーが稼働し、1と0が流れ続けている間、全員が更新を取得します。すべてのAndroidデバイスがそこにあるすべてのデバイスを一度に更新しようとすると、大量のトラフィックが小さなリソースに到達することになります。

他のオプションは、人々がそれを「スキャン」したときにのみ更新を行うことです。それも恐ろしいことです。

したがって、時間をずらしたアプローチは絶対的に最善ではありませんが、リソースに関しては最善の方法です。

このウィンドウを利用するには、パッチがリリースされてからデバイス(デバイス)が更新を取得するまでの間にデバイスを見つける必要があることに注意してください。

また、Androidはオープンソースです。まだ実行可能なエクスプロイトを記述する方が、次のリリースで判明するエクスプロイトよりもはるかに有益です(コードを見ることができるため)。

だから、夏には:

  • いずれにしても、セキュリティプッシュが開始される前の修正は秘密ではありません。
  • まったく更新しないよりはましです
  • モバイルネットワークやアップデートサーバーをクラッシュさせるよりはましです。
  • 機会の時間枠は、影響を受けるべき人がほとんどいないほどのものであり、まだアクティブなターゲットではありません。
4
coteyr

私はこれの専門家であるとは言えないので、私の主張は有効ではないかもしれません。

私はすぐに読みました Wikipedia

スマートフォンなどの最新のモバイルデバイスでは、無線アップデートとは、オペレーティングシステムに組み込まれた機能を使用してWi-Fiまたはモバイルブロードバンドを介して配布されるソフトウェアアップデートを指します。

この引用から、アップデートはWiFiまたはモバイルブロードバンドを介して配布されることに注意するかもしれません。 WiFiモジュールがない場所や、信号強度が弱い場所に住んでいる場合、アップデートが送信された瞬間を逃して、しばらくするとダウンロードされる可能性があります。


ビルトインマネージャーによる更新

一部の組み込み更新プログラムには設定があり、OTA更新を確認してダウンロードするタイミングをカスタマイズできます。設定は、デバイスの電源がオンのときに、1日2回、毎日、毎週、毎月、または手動で更新をチェックするように設定できます。一部のデバイスの設定が異なる場合、それらは異なるタイミングでアップデートを受信する可能性があります。


プロデューサーが実行する更新

この場合、更新はファームウェアのプロデューサー(この場合はgoogle)によって行われます。すでに述べたように、新しいアップデートが利用可能であるという情報を受け取ることができない場合があります。電池切れ、信号なしなど.
ユーザーが自分の電話を使用しないときに更新が行われる傾向があるため、ユーザーが現在行っていることをすべて停止することはないため、更新は夜間に行われる場合があります。


2つの同じ電話モデルのハードウェアの違い

(注:一部のデバイスは最初のリリースと最終リリースでまったく同じである可能性があるため、この点はデバイスを含む一部のデバイスでは有効でない場合があります)

同じモデルのデバイスでも、多少異なる場合があります。たとえば、当初、xbox 360にはHDMI出力がありませんでしたが、しばらくすると追加されたため、おそらく他のソフトウェアも作成する必要がありました。 xboxの両方のタイプが異なっていても、モデル名は同じです。これにより、同じモデル名の一部のデバイスは実際には同じではありません。

たとえば、1つの大きな違いがあります。 Windows 10 64ビット、およびAndroid。違いは、64ビットバージョンのWindowsがlong mode(64ビットモード)をサポートするCPUで実行され、その中の命令セットがAMDとIntelで同じであることです。 Androidの問題は、デバイスごとに異なる命令セットを備えたプロセッサを使用している可能性があることであり、これにより、電話機にまったく異なるコードが必要になることさえあります。これにより、デバイスごとのアップデートが発生する可能性があります別の時間。

たとえば、WiFiカードが少ない場合などです。それらのうちの1つのドライバをインストールしたとしましょう。このドライバーでは他のカードが実行されない可能性が非常に高いため、異なるドライバーをインストールする必要がありますが、ドライバーには必ず異なるコードが含まれます。このWiFiカードのプロデューサーがこれらすべてのドライバーにバグを見つけた場合、それを1つずつ修正するか、多数の人が異なるバージョンで同時に作業することが可能になります。ただし、複数のユーザーが同時に複数のファイルで作業している場合でも、一方が他方よりも早く修正を終えることがあります。この場合、アップデートは他のアップデートよりも早くリリースされます。

プロデューサーは、コードのすべてのバージョンが修正されるのを待ってから、すべてのデバイスで同時に更新を行うこともできますが、1つのデバイスでさえバグを更新すると、このバグに対して脆弱な人の数が減ります。

また、Windowsのドライバーは、おそらく.exeインストーラーを使用してインストールされていることに注意してください。 Androidにはこれらのすべてのドライバーが組み込まれており、前述のように、異なる電話に異なるバージョンのドライバーが必要な場合は、すべてのドライバーの修正に時間を費やすことになります。グーグルがアップデートを処理する方法は、彼らがそれを修正した後、彼らができるだけ速く電話をアップデートしているということです。


また、手動で[更新を確認]ボタンをクリックした場合でも、デバイスは「システムは最新の状態です」と言っているとも述べました。これは、更新サービスを利用できないことが原因である可能性があります。これは、プロデューサーによって実行される更新と非常によく似ています。

0
vakus