ここ数年、コンピュータセキュリティの研究から統計を収集しています。 私はそれらを少し共有することに決めました。 ここでは、サンプルの侵入テスト レポート – レポートを見 つけることができます。 侵入テスト担当者とのインタビューの多くでは、「Web アプリケーションのセキュリティは長年にわたって改善されましたか?」 私の意見では – はい、しかし、それはややボトムアップ規制によって強制されている場合にのみ。 浸透テストは安全性を向上させるのに役立ちますか? – 間違いなくはい!
私たちはどのようなデータについて話していますか?
過去2年間で、私は100以上の侵入テスト、セキュリティ監査、分析、再テストを実行することができました。 これらは、クライアントごとに異なるアプリケーションでした。 大多数はウェブアプリケーションでした。 アプリケーションが初めてテストされたとき、ほとんどの場合、脅威を重大または高に分類するエラーが見つかりました。 初心者の場合、この種の脆弱性を使用すると、アプリケーション (多くの場合、サーバー) を完全に制御したり、機密データにアクセスしたりできるようになります。
感受性分類による統計は次のようになります。
長年にわたって続いているアプリケーションで非常に多くのセキュリティ エラーが検出されたことは、ソフトウェア開発の初期段階で過ごされているセキュリティ時間が少なすぎることを示しています。 私は、ソフトウェアアーキテクチャとリスクモデリングの構築におけるセキュリティを見て、プログラマーを教育することを考えています。 これがなければ、これらのあまり倫理的でないハッカーが;)する運用環境でのみ、ソフトウェア開発の最終段階(したがって修理コストが大きい)または悪化する可能性があります。
の種類に起因する最も一般的に見られる脆弱性
より多くの統計を見てみましょう。 今回は、最も一般的に見つかった種類の脆弱性。
異なる色で、私は特定の脆弱性の典型的なリスク分類をマークしようとしました(もちろん、簡単に言えば、実際には多くの要因に依存します)。 次に、バーガンディ – クリティカル、赤 – 高、オレンジ – 中、緑低のように見えます。
まず、XSSyが最も批判されたものの最も一般的に見られるタイプの脆弱性であることがここで見ることができます。 30年ほど前から知られているのは驚きです。 さらに、おそらく最も認識可能なセキュリティ エラーのクラスです。 したがって、その発生は既にまれであるはずです。
さらに、承認に関連する脆弱性があり、これはユーザーが特定の操作を実行する権限を持っていることを確認するための有効なプロセスです。 この問題は、特に、リッチ API を使用するアプリケーションで顕著です。
最も一般的なエラーの統計を見ると、まず公開すべきではない情報を開示することです。 アプリケーションハッキングの第1段階は偵察です。 些細な情報は、最終的には効果的な攻撃にとって非常に重要です。
次に、非一般的なエラー メッセージが一覧表示されます。 以前と同様に、使用されるテクノロジなど、機密性の高いデータを明らかにすることがよくあります。
3位は問題で、今後数年間で統計が最初のポジションに進むと思います。 これは技術的な負債であり、既知の脆弱性を持つコンポーネントの使用に関連しています。 私の視点から見ると、今日のアプリケーションは、多くの小さなブロックと依存関係の鎖で構成されています。 これにより、小さなコンポーネントが既に最新の状態でな状態になっていることがほぼ毎日判明します。 そのバージョンを征服するには、多くの場合、アプリケーションの一部を再構築する必要があります (少なくとも私は;)開発者からそのような情報を得ます), そして、このプロセスは、残念ながら多くのリソースを消費します.
OWASPトップ10 vs トップ12ペンスター
OWASP トップ 10リストで最も頻繁に検出される脆弱性のリストは次のとおりです。
OWASPaのリストに私の"検索"1を1にマッピングするのは難しいです。 ここでは、「認証の破綻」に関するリフレクションは見つかりません。 これは、アカウントの brutforss がほとんど私のテスト範囲外であるためです (この時点の他のエラーは私のトップリストにありません)。 無駄にXXEへのリンクも探します。 私の観察から、このクラスのエラーは少なく頻繁に起こります。 これは、デフォルトでXMLyを処理するフレームワークが外部エンティティの使用を許可しなくなったという事実に関連していると思います。 しかし、上記の要約は、OWASP TOP 10リストが単なるドライ理論ではなく、実際に反映されていることを示しています。 したがって、Open Web アプリケーション セキュリティ プロジェクトによって提供されるすべての知識と同様に、それを使用する価値があります。