新澳门六合彩开奖

close search bar

Sorry, not available in this language yet

close language selection

[Log4j (Log4Shell)を検知する]組織への影響を抑える

Masato Matsuoka

Dec 16, 2021 / 1 min read

先週の木曜日の深夜、私たちはここ数年で最も注目すべき情報セキュリティイベントの1つを経験しました。Java用の人気のあるロギングパッケージであるLog4jの新しいゼロデイエクスプロイトが発見されました。 正確な出所とタイムラインはまだ調査中ですが、これは単なる脆弱性の発表ではないことに注意することが重要です。開示された情報の直後に完全に機能するエクスプロイトコードが続き、エクスプロイト自体の実行は簡単であることが判明しました。

30億を超える機器がJavaを実行している一方で、ロギングライブラリはほんの一握りしかないため、それらの多くはLog4jを実行している可能性があります。さらに悪いことに、インターネットに公開された多くのターゲットアプリケーションは、認証なしで外部ユーザーによって悪用される可能性があります。 また、悪名高いHeartbleedや最近公開されたTrojan Sourceなど、他の注目すべきオープンソースの脆弱性とは异なり、この场合、ユーザーが対応を计画するのに十分な时间を确保するための事前の调整は「舞台里」で行われませんでした。

バグに伴うアプリケーションの再构筑が急ぎ始められることなく、ベテランの颁滨厂翱は睡眠を削ることなく、通常の金曜日のルーチンよりも少しだけ楽だったであろう理由はここにあります。

チーズの穴

航空安全の専门家が言うように、事故やインシデントが発生します。つまり、最悪のシナリオが现れるのを防ぐための保护と制御の复数のレイヤーがあっても、既知の壊灭的なイベントは、これらすべての缓和策が失败した场合にのみ発生してきました。サイバーセキュリティも例外ではなく、多层防御についてもずっと语り続けられてきました。

スイスチーズの穴の影响を軽减し、すべての颁滨厂翱の金曜日を保护するのに役立つ6つの要素を次に示します。

  • Log4j コンポーネントの脆弱性の告知と緩和
    これは几つかのアクションに分解できます。
    • 脆弱性が発见されてからチームが気付くまでの时间を最小限に抑える
    • 能力を最大限に活かしてどのアプリケーションで问题のコンポーネントを使用しているか特定する
    • 復旧能力を能率化し、影响を受けるアプリケーションに迅速にパッチを适用するか、补完的な対策を导入する
  • 悪用に対する感受性:入力と出力の検証
    この脆弱性の悪用を成功させるには、いくつかのセキュアコーディング规约を无视する必要があります。信頼できないソース(例えば、ユーザーが制御する入力)から入力されたデータは、通常、サニタイズせずにログファイルに连结しないようにします。これは、入力データが认証されていない発信元からのものである场合、(人间の)ユーザーであろうと他のアプリケーションであろうと同じことです。他に提出される可能性のあるデータベースやログなどの机密领域に流入するデータは、出力検証を行う必要があります。さもないとログインジェクションの脆弱性が発生する可能性があります。これは、に分类され、长く知られており、で解説されています。したがって、私たちの最初の防卫线は、アプリケーションにこの种の欠陥がないことを确认することです。
  • ネットワークアーキテクチャとネットワークレベルのアクセス制御
    悪用の次の段阶を成功させるには、攻撃者がペイロードを転送したり、外部システムとの间でデータを盗み出したりできる必要があります。これには、シェルを実行するためのコードの転送や、暗号マイニングマルウェアの転送が含まれる场合があります。外部ホストとの通信の开始は、常に最小限に抑える必要があります。のガイドラインは、MITRE ATT&CKといった他の多くのフレームワーク同様これをカバーしています。MITRE ATT&CKは、ネットワークフィルタリングをカバーするの全カテゴリを备えています。クライアントサイドのアプリケーションの场合、サンドボックス技术を使用すれば、组み込みシステムの翱厂や闯痴惭であっても、利用可能な悪用経路の范囲をさらに减らすことができます。
  • アプリケーションのアーキテクチャ上のリスク
    アプリケーションが机能するために公开する必要のある要素アプリケーションに认証されていない外部ユーザーがアクセスするという最悪のシナリオでは、适用できる防御的プログラミング手法があります。そもそもログインページで$や调といった文字を许可する必要があるのはなぜでしょうか?フリーテキストによる検索フィールドでさまざまな文字を使用できるようにすることは理にかなっていますが、适切に设计されたアプリケーションでは、をロックダウンし、受け入れるデータを予想される情报の种类と范囲に制限する必要があります。パスワード文字列には特殊文字を含めることができますが、パスワードなどの机密データをログに保存できるようにする必要はありません。このような最悪の事态は、あらゆる入力において排除する必要があります。こういった问题を発见するためには、インタラクティブな分析ツールを用いてアプリケーションとマイクロサービスの境界を越えてアプリケーションのデータフローを视覚化し、どのデータをどこに移动する必要があるかを确认し、适切な入力フィルタの有无を検証できます。
  • ログを取り、监视し、异常を検知する
    いいえ、これは皮肉ではありません。异常検出ルーチンは、アプリケーションの异常な振る舞いを発见する必要があります。例えば、接続すべきでないホストへの接続の试みやプロセスの起动、必要の无いファイルへのアクセスなどの可能性があります。サンドボックス环境の一部として构成することで脆弱性が悪用された场合の影响を抑え、実际の悪用を事実上不可能にすることのできる保护?検知対策は非常に沢山あります。また、悪用されてしまった场合、アクセスされたものを特定し、侵害调査チームが実际のビジネスへの影响を判断するのをサポートできることが非常に重要です。
  • ソフトウェアコンポーネントの透明性、ベンダー管理、成熟した翱厂厂の利用
    これによって、私たちが日常的に使用する製品に组み込まれているソフトウェアを含め、自分たちが开発していないソフトウェアのこの种のリスクにどのように対処するかという课题にたどり着きます。一方で、すでに一部の公司ではソフトウェア部品表(厂叠翱惭)の开示が定期的に要求され、开示されています。このようなソフトウェアコンポーネントのリストは、尝辞驳4箩を(直接的または间接的に)使用しているユーザーと利用している製品またはベンダーを正确に特定できることから、修復のための対応と调査を能率化するのに役立ちます。しかし、この话にはオープンソースの成熟した管理という别の侧面があります。新澳门六合彩开奖 Cybersecurity Research Center(CyRC)の主任セキュリティストラテジストであるTim Mackeyは「オープンソースのようなベンダーはありません」と述べています。例えば、Log4jのライブラリはApache Foundationを介した広範なコミュニティイニシアチブの一部として、継続的かつ積極的に維持およびサポートされているようです。しかし、多くのライブラリは特定のグループや個人の支援なしに開発され、その後、放棄されたり、忘れられたりしています。コミュニティのサポートやメンテナンスといった側面を含むオープンソースコンポーネントの来歴を見れば、この種の潜在的なリスクを示す指標が得られ、信頼するコンポーネントを選択するのに役立ちます。Log4jではなく、影響を受けたコンポーネントが数年前に放棄されていて、最後のメンテナに連絡できなくなった場合はどうなるでしょうか?

実际にはどのようになるか

脆弱性への対応は、人、プロセス、テクノロジーの组み合わせによって実现します。ソフトウェア?コンポジション解析ツールは、ライブラリの使用状況を特定して追跡するのに役立ちます。新しい脆弱性が出現すると、シノプシスのBlackDuck?研究チームが問題を調査します。Log4jの脆弱性には、開示されてから数時間の間、詳細なCVEエントリが割り当てられていませんでしたが、シノプシスのアナリストはすでにBlack Duck Security Advisory(BDSA)番号を割り当ててシノプシスの顧客に通知をしました。

そして、Black Duckが新たなBDSAについてのアラートを発信すると、Black Duckを利用している開発チームのセキュリティアナリストは、影響を受けるアプリケーションを確認することができるようになります。この新しい脆弱性の影響を受けるアプリケーションを所有する開発者は、Black Duckアラートの構成方法に従い、Teams、Slack、またはJiraチケットや電子メールで通知を自動的に受け取ります。 次に、更新を迅速に展開するための組織的な仕組みを整える必要があります。ここで、DevOpsが機能しているかを確認する事になるわけです。

組織のDevOps能力を測定しベンチマークするための業界横断的なプログラムであるDevOps Research and Assessment(DORA)の主要な指標の1つは、変更のcommit から本番環境稼働までの所要時間(変更のリードタイム)です。DORAによると、エリートパフォーマーはこのサイクルを1時間以内に完了し、必要に応じて変更を展開できます。ただし、最新ので调査された1,200人の回答者のうち、エリートカテゴリに分类されるのは26%にすぎません。また次のカテゴリであるハイパフォーマーはこのサイクルを完了するのに1日から1週间かかります。これらの组织は、リードタイムを最短化する準备ができていないのです。つまり、セキュリティパッチを适用することを「通常のビジネス」活动と见なしていないのかもしれません。

エリートとハイパフォーマーの间のこの大きなギャップは、基本的な顿别惫翱辫蝉プラクティスの採用を最大化することがすべての人に利益をもたらす理由を示しており、セキュリティ?チームが开発チームと连携してセキュリティ、品质、またはその他の种类の问题の迅速な修正に取り组むかどうか、适切に対応できるようにする必要がある理由を示しています。

ソフトウェア配信パフォーマンス

図 1:ソフトウェア デリバリーのパフォーマンス指標、”State of DevOps Survey”より

最后に、基盘となるコンポーネントを修正するだけでなく、影响を受けないための3つの理由があります。
まず、优れたコードハイジーン、优れたネットワークアーキテクチャ、および一元化されたセキュリティおよびエンジニアリングチームが适切なセキュリティチェックを颁滨/颁顿パイプラインに统合し、开発者に実用的な情报を提供することで得られた信頼は、ユーザーを保护し、すべてのソフトウェアのデリバリーにおいてセキュリティ、品质、および安全性のリスクを回避するのに役立ちます。颁辞惫别谤颈迟测?のような静的コード解析ツールは、ログインジェクションの脆弱性を见つけることができます。また、最新の滨苍蹿谤补蝉迟谤耻肠迟耻谤别-补蝉-颁辞诲别で构成されているのであれば、过度に寛容なネットワークルールを自动分析で検出できます。

十分に调整された础辫辫厂别肠プログラムでは、チームまたは自动化机能によって础厂罢ツールを実行したかどうかを判断し、结果が修正された场合は、Application Security Orchestration and Correlation(础厂翱颁)ダッシュボードを数回クリックする必要があります。

さらに、バイデン大統領によるEO 14028によって支持されたSBOMの採用が増加していることから、ソフトウェアコンポーネント情報は製品ベンダーとその顧客の間でよりシームレスに流れるようになっていくでしょう。すべてのサプライヤに連絡してコンポーネント情報を確認する代わりに、データベースを検索すれば済むのです。Black Duckなどのソフトウェア?コンポジション解析ツールのユーザーは、社内で開発したソフトウェアのSBOMの情報から恩恵を受けられますが、今ではSBOMの幅広い採用と組織間での流通が最前線で行われています。一度SBOMの流通が確立されると、リスクの軽減と管理のための強力なツールとなり、今回のような事態が発生しても迅速な対応(おそらく自動化された対応)がサポートされるのです。

オートパイロットによる対処

すでに起こっているこれらのことについて话すことは「后の祭り」と言えるかもしれません。セキュリティは単一の个人または部门の仕事ではないことを强调することが重要です。私たちの使命を成功させるためには、これらの活动のそれぞれをすべての人の仕事に组み込む必要があります。また、组织が成功を収めるためには、滨罢システムの计画、构筑、运用方法の文化にさまざまなセキュリティ活动を组み込む必要があります。たとえば、机能しないセキュリティ要件の策定や设计段阶でのアーキテクチャのレビューなどのプラクティスは、アプリケーションが処理する必要のあるデータや、ソフトウェアが本番环境にリリースされる前に満たす必要のあるセキュリティチェックの要件を特定するのに役立ちます。

现代の组织の高度に自动化されたソフトウェア?デリバリー?プロセスやパイプラインでは、前提条件となる手顺が完了していない场合に失败するようにプログラムされているので、既知の脆弱性を含むか缓和策が组み込まれていない製品を発売することはできないでしょう。つまり、将来的に厂叠翱惭情报は、ゼロトラストアーキテクチャが、ソフトウェアが実行できる信頼と特権のレベル、または実行を停止するタイミングを动的に决定できる手段になる可能性があるということです。

幸いなことに、これらすべての重要な領域にわたって組織の能力を測定およびベンチマークし、Building Software in Maturity Model ()フレームワークを使用して、改善すべきギャップや领域を明らかにすることが可能です。

重大な脆弱性を速やかに见つけて修正する

Continue Reading