私が聞いたほとんどのセキュリティ脅威は、ソフトウェアのバグが原因で発生しています(たとえば、すべての入力が適切にサニティチェックされていない、スタックオーバーフローなど)。では、ソーシャルハッキングをすべて除外すると、セキュリティ上の脅威はすべてバグによるものでしょうか。言い換えれば、バグがなければ、セキュリティの脅威はありませんか(パスワードの開示などの人間の過失を除く)。または、バグ以外の方法でシステムが悪用される可能性はありますか?
バグは、ソフトウェアが仕様どおりに動作しないことと定義されています。スペックに問題があれば、ソフトウェアのバグではありません。ばかげた顧客が、すべてのパスワードが3桁のコードであり、障害のあるエントリの間に猶予期間がないことを要求する場合、非難されるのはソフトウェアではありません。
多くのシステムにはセキュリティを無効にできる「サービスモード」があり、セキュリティへのアクセスは安全である必要がありますが、コードは一般に漏洩することがよくあります。
数学の進歩により、古い暗号化手法が損なわれています。 30年前に実行可能なセキュリティであった何かは、今日弱くなります。
見落とされがちなデータ盗用の方法はさまざまです。ワイヤレスキーボードの範囲は、アンテナが小さいため約2mで、送信されるコードは暗号化されていません。良いアンテナで通りの向こうからそれを読むことはよく知られている方法です。
時には、結果を十分に認識してセキュリティのトレードオフが行われます-暗号化システムは電力とCPU時間を消費します。組込み監視アプリケーションは、データを危害を加えることの価値が無視できるほど小さく、セキュリティの実装にかかる追加コストが不要であるため、多くの場合、データを明確に読み取り可能な方法で公開します。
すべてのセキュリティは信頼に基づいています。任命された管理者が悪意を持ってあなたのメールを読むのにソーシャルエンジニアリングは必要ありません。
そして結局のところ、野球のバットを膝に当てることは社会的なテクニックと考えることができますか?
ハードウェアのバグがセキュリティ問題を引き起こす状況もあり得ます。欠陥のあるRAMチップが「isAdmin」ビットを自発的にフリップすることを考慮してください。
または、メモリ保護が期待どおりに機能せず、あるプロセスが割り込みをトリガーせずに別のプロセスのメモリを上書きできるという、仮想的なハードウェアのバグを考えてみてください。
あなたの読書の喜びのために: ハードウェア障害により危うくされたコンピュータセキュリティ
セキュリティ上の脅威の多くは、バグではなくソフトウェアの機能から発生します。非常に便利なソフトウェア機能の多くは、ユーザーの意図だけに依存して、善または悪の用途があることがわかります。
分散型サービス拒否攻撃(DDOS)を検討してください。これはセキュリティ上のリスクとなる可能性がありますが、それはソフトウェアのバグではなく、システムの設計目的の限界を超えた攻撃者によって引き起こされます。そして、すべてのシステムには限界があります。
したがって、あなたの質問に対する答えは次のとおりです。いいえ、すべてのセキュリティ脅威がソフトウェアのバグによって引き起こされるわけではありません。
ソーシャルエンジニアリング。
こんにちは、IT部門のXXです。お使いのコンピューターは現在、他のオフィスコンピューターにウイルスを広めています。削除するには、ユーザー名とパスワードが必要です。
ハッカーがユーザー名/パスワードを取得すると、トロイの木馬などを安全にインストールできます。
ソーシャルエンジニアリングはいくつかの方法で適用でき、セキュリティを回避するためにそれを使用することもその1つです。
共有ワイヤレスネットワークで送信されているCookieを盗むFirefoxアドオン Firesheep のようなものはどうですか?
このような攻撃に対する脆弱性はバグであると主張することもできますが、反対することもできます。 HTTPSを介してすべての通信を実行する以外に、ユーザーが危険にさらされるのを防ぐためにWebサイトができることは多くありません。WebサイトでHTTP通信を受け入れるのはバグだと言えますか?
はい、ソフトウェアのセキュリティの障害が近似原因である限り、ソフトウェアがその要件を満たすための障害である限り。
これは単なるトートロジーであると私は認めますが、それはその尺度です。