私は開発者であり、セキュリティの第一人者ではありません。私の主な焦点は、不適切なプログラミングによってセキュリティホールが生じないようにすることです。 OWASPトップ10やその他の脆弱性から保護するためのコーディング方法は理解していますが、十分な知識がないことはわかっています。プロセスにadditionalテストを追加して、開発プロセス全体の脆弱性をスキャンしたい。
すでにプロジェクト全体で脅威のモデリングを行っているほか、本番環境に入るすべてのコード変更のコードレビューも行っています。
また、リリースプロセスの一環として、ステージング環境のサイトに対してサイトへの侵入テストを実行してから、実際にリリースする前にリリースしました。ただし、私たちの侵入テストツールが適切であるとは確信していません。また、侵入テストはコストがかかり、頻繁にしか実行できません。私のチームには、開発プロセス全体を通してそれらを実行してもらいたいです。 (プロジェクトの後半よりも早い段階で穴を修正する方がはるかに安価です。)
私は サイバー犯罪者が使用するHavijのようなツール を知っており、技術に詳しくない人々に対しても、脆弱性のあるサイトへの攻撃をいかに簡単にするかを知っています。同じツールを使用して、テストで配置された独自のWebサイトをテストし、ステージングし、本番環境でテストできるようになりたいです。 (なぜ悪者にすべての優れたツールが必要なのですか?)しかし、「怪しげな」サイトやニュースグループがツールをダウンロードすることを望んでいません。どこを見ればよいのかさえわからなかった。どこを見ればよいのかわかっていても、ネットワーク管理者が信頼できないソースからこれらのツールを入手することを許可することは決してありません。
正当な、trusted場所に、そのようなツールをダウンロードしたり購入したりして、そのようなハットハットを目的とした場所はありますか?私は完全に、上級管理職にこれらのツールを提供するかもしれないホワイトハットグループのメンバーシップ、さらにはトレーニングのためにお金を払ってもらうように心がけています。したがって、必ずしも無料で探しているわけではありません。私は合法的かつ合法的な情報源を探しています。
Chris Frazierからの良い回答ですが、個人的にはCEHをお勧めしません。たぶん私はテストをずっと前に受けすぎたかもしれませんが、それはペネトレーションテスターやセキュリティを意識した開発者が実際に必要とするものに近いものをカバーしているとは感じませんでした。
おそらく私は少し正統でない答えをあなたに与えるつもりですが、あなたはすでにかなり素晴らしい仕事をしているようで、あなたがまだ心配しているという事実は心配です組織だけでどれだけのセキュリティ認識があるかを示すだけです。これにより、セキュリティが通常見落とされている、私が遭遇した他の多くのアプリケーションよりもはるかに優れた位置にすでにいます。
とはいえ、リラックスしてすべてが安全であると考えるべきではありません(とにかくそれを疑うことになります)。セキュリティを向上させるためにできることは常にあります。クリスはそれらのいくつかに言及しました。 静的または動的コード分析 に役立つツールを検討することもお勧めします。この分野には、かなり良い評判の商用ベンダーがいくつかあります。悲しいことに、オープンソースの選択肢は通常、この特定の分野で遅れをとっています。
一部の自動化ツールのプラグインに真剣に取り組んでいる場合は、 Arachni を確認することをお勧めします。多くのWebアプリケーションスキャナーがありますが、これはおそらくAPIを使用してゼロから構築された数少ないスキャナーの1つです。これはおそらく、開発/リリース/継続的インテグレーションプロセスと統合するための主要な候補になります。これは、必ずしも優れている、または信頼できる唯一のツールであるという意味ではありませんが、少なくとも統合が簡単(または簡単)である必要があります。
それ以外の場合は、常に知識を深め、詳細を読み、ここで述べた質問とツールをチェックし、チーム全体がこれらのセキュリティ問題を認識していることを確認してください。また、スキャンを行うために侵入テスターが来たときは、一緒に時間を過ごすことをお勧めします。この方法で入手できる新しいトリックが常にいくつかあります。
筆記テストWebアプリケーションで使用するオープンソースツールを紹介します。
次のオープンソースツールは、SQLインジェクション(SQLi)およびクロスサイトスクリプティング(XSS)の脆弱性の悪用に役立ちます。
Web脆弱性スキャン市場には、数百ドルから数万ドルの範囲の価格の商用ツールがたくさんあります。 これらはオープンソースのものより良い結果を得ることができます そして、オープンソースのスキャンとエクスプロイトツールの機能を組み合わせることができます。ただし、アプリケーションのロジックを試してみるには、その椅子と血液浸透テスターが常に必要です。これは、どんなに価値があっても、決して実行できないツールです。
いいえ。サイトのセキュリティを評価するために、ZeusやHavijなどのツールや他のブラックハットツールを使用しないでください。 Zeusは脆弱性評価用に設計されていません。一般に、私の経験では、ブラックハットにはホワイトハット侵入テストおよび脆弱性評価サービスよりも優れた脆弱性評価ツールはありません。さらに、ブラックハットコミュニティによって作成されたソフトウェアを使用することは危険です。自分で感染したトロイの木馬に遭遇するかもしれません。
代わりに、組織がより多くのことができる方法を確認したい場合は、セキュリティをソフトウェア開発ライフサイクルに統合する方法を調査します。 Microsoftはこれに関していくつかの素晴らしいリソースを持っています。
たとえば、 Zeus はトロイの木馬であり、一般的なウェブサイトのペンテストには使用されていません。
しかし、それにもかかわらず、Webサイトの評価に使用できる魔法のツールキットはありません。 Web開発は動的な性質を持つため、ほとんどの脆弱性を分析して見つけるには、人間の存在が実際に必要です。一連のツールのみに依存すると、障害が発生します。これらのツールは古くなっていることが多く、要件に対して十分に複雑ではありません。
確かに、特定のWeb脆弱性をスキャンしてヒットを期待する数千のサイトに対して実行するプログラムをダウンロード/作成することはできますが、標的型攻撃の場合は人的要因を維持する必要があります。
そうは言っても、セキュリティの世界でいくつかのトレーニングコースを開始するのが最善だと思います。たとえば、CEH認定はWebアプリケーションのハッキングのハイレベルをカバーし、コースに含まれているのはエクスプロイトツールの巨大なツールキットです。
私はあなたの最善の策は脆弱性を効果的に識別して伝えることができる訓練された侵入テスターを使用することだとまだ言います。このようにして、開発者は過ちから学び、全員が勝利します。