Webシステム開発におけるテスト工程での不具合検出と安全性の検証について
Webシステム開発におけるテスト工程での不具合検出と安全性の検証について Webシステムの開発においてテスト工程では画面(ブラウザ)からの操作による正常系・異常系の動作が要件に合っているかというテストは勿論ですが ツールを使用する事で様々な視点からのセキュリティ、盤石性の検証を行っております。 この記事では検証に使用しているツールを一部ご紹介すると共に そのツールを使用する事により何を検証し、何を防げるのかという内容を掲載しております。 (各ツール共に多様な機能を擁しており目的に応じて様々な使い方がありますが、本記事ではテストの目的に沿った使い方の一例をご紹介しております。) 目次: セキュリティテスト 負荷テスト 権限テスト 1. セキュリティテスト 使用ツール:OWASP ZAP, brakeman(Ruby-Railsプロジェクト) 参考サイト: https://www.zaproxy.org/ (OWASP ZAP公式サイト) https://github.com/presidentbeef/brakeman (brakeman) OWASP ZAPについて テスト内容: 画面(ブラウザ)からの操作を記録し実際の操作を想定したシステムの脆弱性を検出 検出できる脆弱性の一例 クロスサイトスクリプティング 悪意のあるユーザーが不正なスクリプトをデータとして登録することで、 別のユーザーがそのデータを取得する際に悪意のあるスクリプトがブラウザで実行されてしまう脆弱性 SQLインジェクション サーバーへの問い合わせ情報にSQL(データベースへの問い合わせ言語)文を混入させることで サーバー上でSQLが実行され意図せぬデータの改ざん、搾取等が行われる攻撃手段 その他にも様々なシステムの脆弱性に対し自動検出を行ってくれます。 詳しくは以下公式サイト(英語)に掲載されています。 https://www.zaproxy.org/docs/desktop/addons/active-scan-rules/ Brakemanについて テスト内容: ソースコードの静的分析ツール(Ruby on Railsのプロジェクトに限る) Ruby on Railsで開発されたプログラムのソースコードを 自動で分析、検証、セキュリティの脆弱性を検出 […]