誰かが私に非常に簡単な例でゼロデイ攻撃とは何かを説明できますか?また、どのようにそれを防ぐことができますか?
ゼロデイまたはゼロアワーという用語は、あらゆる種類の攻撃に適用できます。脆弱性が個人または組織によって発見されたが、まだ発見されていない期間に与えられた単なる分類です。公開しました。
一部の定義には、脆弱性の発表の最初の日または「Day Zero」、およびこのタイプの発表が行われたときにシステムを攻撃または防御するための攻撃者と防御者間の競争も含まれます。
ゼロデイ攻撃は特に危険です攻撃者は、公開されていない期間が短いため、脆弱なほとんどすべてのシステムで、ある程度のレベルのシステムアクセスを効果的に侵害できます。場合によっては、これにより、攻撃者は数百万のデバイスへのアクセスや、多数の機密データへのアクセスを許可される可能性があります。
公開されているか、既知の修正があると、ゼロデイとは見なされなくなります。注:一部の定義はここでは異なります。
したがって、新しい脆弱性とエクスプロイトが常に発見されるため、ゼロデイ攻撃を防止するための「解決策」はなく、そのような問題のエクスプロイトを防止するための修正を作成できます。
事実上穴は常にそれぞれのパッチの前に存在します。
これは、特定のタイプのゼロデイ攻撃からのリスクを軽減するため、またはそれらのダメージを制限するために実装できる追加の防御策があると述べていますが、すべての攻撃ベクトルを予測することは不可能です。
常に1つの防御層(セキュリティツールの1つに障害が発生したり、脆弱になる可能性がある)があるため、複数のセキュリティツールが必要なのはこのためです。
つまり、ある時点でセキュリティを時間の関数として考えると、最も安全性の高いネットワークでも脆弱性が存在します。
データを保護する防御レベルが1つしかない場合、セキュリティは次のようになります。
Time: ----->
Layer 1 Security: -------------------- ----------------
Zero Day occurs here ^ ^ vulnerability fixed here.
複数の防御層(または多層防御)がある場合、理論的にはさまざまな脆弱性が出てきて、防御は次のようになります。
Layer 1 Security: -------------------- ----------------
Layer 2 Security: -------------- ----------------------
Layer 3 Security: --- --------------------- ---------
セキュリティの各層は時々脆弱性を取得しますが、攻撃者が3つすべての層を通過するためにすべてが整合するわけではありません。まれなケースですが、これは発生する可能性がありますが、統計的に複数のレイヤーを使用すると、1つのレイヤーを単独で使用するよりもはるかに優れたセキュリティを提供できます。
ゼロデイに対する最善の防御策の1つは、複数のセキュリティ層を最新の状態に保つ非常に訓練されたスタッフです。ここでは規律が重要です。レイヤーは時間を稼ぐだけです。
ゼロ日は、脆弱性が知られている期間です。したがって、この脆弱性はソフトウェアを作成または修正する人には知られていないことを意味します。彼らが闇市場で非常に貴重である理由は、誰も現在それを修正するために働いていないからです!
ソフトウェアを最新の状態に保つことは、既知の脆弱性に対する優れた防御策ですが、ゼロデイ攻撃から保護することはできません。解決策は、多層防御と攻撃対象領域の縮小です(使用していないサービスをすべてオフにします)。
ゼロデイ攻撃の最も単純な定義は、パッチが適用されていないか公開されていない脆弱性に対する攻撃です。または、脆弱性が公開されたのと同じ日に(ゼロデイ)、セキュリティの脆弱性を利用する攻撃として定義することもできます。