
最新のWebリソースは、多くの更新と改善を伴う絶えず進化するメカニズムです。 生産性の向上、変換の増加、パフォーマンスと使いやすさの最適化を目的としています。 しかし同時に、何らかの理由で、Webリソースの侵害につながる可能性のあるエラーが発生する可能性があります。 「忘れられた」ユーティリティスクリプト、不十分なデータ制御、アクセスチェックの欠如、さまざまなエラーの出力などがあります。 パブリックドメインで使用されるCMSの場合、攻撃者がWebアプリケーションの1つまたは別の機能へのアクセスを許可するエクスプロイトが表示される可能性があります。 平均的な静的攻撃者によって悪用される脆弱性の多くは表面にあり、それらの悪用に深い知識や資格を必要としません。
簡単なハック
Webサイトに対する最新の攻撃のほとんどは、自動化されたツール(あらゆる種類のWebスキャナー、フレームワーク、ユーティリティ)を使用して発生します。 つまり Webペンテスティングに入るためのしきい値はかなり低く、(表面的な脆弱性の存在下で)サイトを侵害するのは時間の問題です。
スクリプトキディとは、ハッカー文化における軽de的な用語で、他の人が開発したスクリプトやプログラムを使用して、行動のメカニズムを理解せずにコンピューターシステムやネットワークを攻撃する人々を指します。
Script kiddie-簡単に獲物を探す人。 特定の情報にアクセスしたり、特定の会社を攻撃したりすることはありません。 彼らの目標は、可能な限り簡単な方法でルート権限を取得することです。 少数の脆弱性を選択し、それらを探してインターネットをスキャンすることでこれを達成します。 遅かれ早かれ、彼らは脆弱なシステムを見つけます。
自動スキャンシステムの統計によると、検証のために送信されたサイトの最大30%に、SQLインジェクション、オブジェクトへの安全でない直接リンク、安全でない重要なデータなどの重大な脆弱性が含まれていました。
攻撃者は、CMSの種類やバージョン、サイトのルートにある特定のファイルの存在など、特定の兆候を探し、検索エンジンとクローラーを使用して特定の脆弱性をチェックできます。 また、特定のパターン、特定の要求に対するサーバーの応答のセットにすることもできます。これにより、脆弱性の存在を判断することができます。
基本的な攻撃ベクトル
Webアプリケーションが「すぐに」ハッキングされないようにするために、Webアプリケーションの典型的な攻撃ベクトルをチェックするためのいくつかのスクリプトを開発しました。
情報収集:Webサーバーヘッダー、プラットフォームの種類の決定、CMS、フレームワークなどのアクセス可能な情報が収集されます。 phpinfoファイルとサービススクリプトの存在をチェックして、攻撃されたWebリソースに関する機密情報を取得し、バックアップファイル、重要なデータ(リポジトリ、ドキュメントなど)のサイトディレクトリをスキャンします。
分析:Webアプリケーションマップは、さらなる悪用の試みのためにサイトから受信したすべての利用可能なリンクでコンパイルされます。 検出された電子メールアドレスは、bruteforceモジュールへの想定ログインリストに追加されます。
チェック:次のような最も一般的なエラーと脆弱性についてサイトをチェックします。
- SQLインジェクション-さまざまな種類のSQLインジェクション。
- クロスサイトスクリプティング-xss、クロスサイトスクリプティング;
- クロスサイトリクエストフォージェリ-csrf、クロスサイトリクエストフォージェリ。
- ローカルファイルの包含-ローカル包含。
- リモートファイルインクルード-リモートインクルード;
- オープンリダイレクト-リダイレクト;
- コード実行-コード実行。
- http応答の分割-httpリクエストの分割。
- xpathインジェクション-xpathインジェクション。
- バッファオーバーフロー-あらゆる種類のバッファオーバーフロー;
- 既知の脆弱性-既知のエクスプロイトを検索します。
さらに:承認フォームは、特殊なパスワードデータベースを使用して、頻繁に発生するログイン(admin、user、test、webなど)のリストを持つ辞書(bruteforce)によって攻撃されます。
特定された脆弱性は、個別に、またはWebアプリケーションの複雑な攻撃シナリオとして悪用される可能性があります。 自動モードでサイトをチェックすると、これらの脆弱性のほとんどが明らかになり、サイトをハッキングするリスクをすばやく排除して最小限に抑えることができます。
監査方法
これらのシナリオは、OWASP TOP 10方法論に基づいています。

検出方法:ページ本文のエラー、応答時間。
脅威となるのは、ユーザーデータの侵害、サイトの感染です。

明らかにされたように:URLのセッションの転送、暗号化の欠如。
脅威となるもの:他人のセッションのリークは、アカウント管理の差し押さえにつながる可能性があります。

明らかにされたように:ページコード内の特別に形成されたリクエストへの応答の存在。
脅威となるもの:攻撃はユーザーに直接行われ、データが操作されます。

明らかになった方法:パラメーターの値を列挙する。
脅威となるもの:重要なデータの漏洩が可能です。

検出方法:デフォルト設定の識別、標準パスワード、エラーメッセージ。
脅威となるのは、ユーザーデータの侵害、サイトの感染です。

明らかにされたように:証明書の正しいインストールと設定、重要なデータの識別。
脅威となるもの:重要なデータの漏洩が可能です。

明らかにされたように:アクセスを得るためのデータ操作。
脅威となるもの:重要なデータの漏洩が可能です。

明らかにされたように:リクエストアドレス(トークン)の検証の欠如。
脅威となるもの:データ操作。

明らかになったように、このバージョンのアプリケーションで公開されている脆弱性の存在。
脅威となるのは、ユーザーデータの侵害、サイトの感染です。

明らかにされたように:URLパラメータの操作。
脅威となるもの:ユーザーデータの侵害、重要なデータの漏洩。
まとめ
検出されたすべての脆弱性には、マイナーからクリティカルまでの特定のランクが割り当てられます。 クリティカルのカテゴリから検出された各脆弱性は、誤検知を最小限に抑えるために手動でチェックされます。 このレポートには、脆弱なURL、パラメーター、脆弱性の種類と説明、および攻撃者による脆弱性の悪用の可能性のある結果のリストが含まれています。
確認の頻度(四半期に1回、またはより頻繁に、自由に)により、サイトの所有者はセキュリティの最新の状況を把握できます。 このようなチェックにより、ほとんどの表面の脆弱性、古いバージョンのソフトウェア、およびCMSコンポーネントをできるだけ早く特定し、Webアプリケーションを迅速に保護できます。
完了した自動サイトクロール に関するレポートの例 。