web-dev-qa-db-ja.com

ソフトウェアがリリースされる前に、企業が単にハッカーのツールを使用して自社の脆弱性を見つけないのはなぜですか?

ばかげた質問かもしれませんが、ハッカーは公開されているツールを使用して脆弱性を見つけます。それでは、企業が自社製品(Windows、Adobeなど)をリリースする前に、同じツールを使用してこれらの脆弱性を見つけ、修正しないのはなぜですか?

わかりません。何か不足していますか?

3
Nick

彼らは、ソフトウェア開発ライフサイクル(SDLC)の一環として、それを行っているか、少なくともそうすることが期待されています。

脆弱性管理の観点から、ベストプラクティスは、最初にソースコードレビュー(静的/動的)を実行し、 脆弱性スキャナー を使用して製品をスキャンすることです。脅威のモデリング、安全なコーディングのガイドラインなど、安全なSDLCを実施するために実行する必要のある他の手順もあります。

実際には、これは「無駄な」アクティビティと見なされる時間の90%です。これは、リソースを必要としますが、収益を生み出したり、新たに追加したりしないためですアプリケーションへの機能。

8
ack__

Ack_の回答に加えて、これらのツールの使用にはかなりの学習曲線があります。私自身、侵入テスターとして、誤検知や悪用できない脆弱性を取り除くために費やした時間は、攻撃を利用しようとするのと同じくらい(多くはないにしても)かかります。これに加えて、これらのツールを使いこなせるようになるまでにかかる時間と、フルタイムのIT職に就こうとしていることに気づくでしょう。たとえば、Hydraは簡単に使えるツールですが、私の経験ではロイヤルPITAです。自動化ツールは、始めるのに最適な場所ですが、経験豊富なエンジニアほど貴重なものはありません。

2
HillBillyHacker

彼らはそうするべきです(特に)支払いカード業界のようないくつかのセキュリティ基準に準拠する必要がある企業:PCI-DSSまたはiso27001。彼らは、安全なコーディングトレーニング、セキュリティ専門家によるコードレビュー(ホワイトボックステスト)を組み込んだ安全なSDLCを持っている必要があります。 、および外部企業によって実行される定期的な侵入テスト(ブラックボックステスト)。また、アプリケーションだけでなく、ネットワーク全体も評価の対象になります。

1
DavidC

ソフトウェアのバグは、主にソースコードの監査、リバースエンジニアリング、ファジングによって発見されます。 Fuzzerはあなたが言った「ハッカーツール」と呼ぶことができるツールです。 Googleは、リリース前に数千時間もファジングchromeおよびその他の重要なソフトウェアを使用しています。Adobeは、Reader製品内の脆弱性のひどい悪用の後も、これらの慣例に従っています。低または中のほとんどの理由これらのツールを効果的に使用する余裕のない大企業は次のとおりです。

  1. 専任のセキュリティチームの不足
  2. セキュリティのバグを理解していない
  3. 追加の時間と労力に対する管理サポートなし
  4. 目に見えるインセンティブはありません

セキュリティに関する私たちは通常、セキュリティバグは非常に重要であり、最大限に対処する必要があると考えています。ソフトウェアチームはこのように考えていません。先週 Troopers15の基調講演 で述べたHaroon Meerのように、ソフトウェア製品のリリースに基づいてボーナスとプロモーションを受け取るボスは、数か月または数年後にバグが見つかった場合、会社を辞めた、または退職した触れられない位置。

また、ソフトウェアにセキュリティのバグが発見された後、会社が最後に倒産したのはいつですか?アドビ、オラクル、IE、フラッシュ、およびCMSソフトウェアでは、リモートコード実行のバグがほぼ無制限に毎月見つかりますが、これらの会社のビジネスには影響がありません。これが、企業が脆弱性の緩和に時間と労力を費やさない理由です。それは単にビジネス上重要ではありません。

1
void_in

個人的には、敵のツールや手法を使用して、ターゲットシステム、ネットワーク、アプリをテストしています。一例として、Webレイヤーについては、Acunetix WVSのようなツールは、歴史的にオンライン犯罪者によって使用されてきました。

Metasploitは、質問者によって提案されたこのシナリオの悪い例です(コメントの一部で言及されています)。より良い例は、Cobalt StrikeのMalleable C2を介して敵シミュレーションを使用して、ネットワークトラフィックやディスク上の(またはメモリ内の)マルウェアファイルハッシュなどのアクティブな実際の敵IoCを転用することです。

ソーシャルエンジニアリングテクニック、または実際にはあらゆるTTPは、現実的なイベントに密接に一致させることができます。これは、侵入テストではなく、サイバー演習中に使用される赤いチーム分析の目的です。侵入テストは、スピアフィッシングやウォーターホール攻撃などによる単純な意図しない内部関係者の見方ではなく、開発者自身などの信頼できる内部関係者の見方を理解しようとします。

1
atdre