この記事は2019年6月10日に公開された以下の記事を翻訳したものとなります。
Vulnerability Scanning vs Penetration Testing: Two Complementary Approaches to App Security
脆弱性スキャンとペネトレーションテストは紛らわしく、混同しがちです。セキュリティプロフェッショナルの中でも、この二つを同じものだと思っている人がいるくらいです。 その結果、2つのうちの1つを導入してアプリが完全に安全になったと思い込み、回避できるミスが起きてしまうのです。 どちらのアプローチも、Webおよびモバイルのアプリのセキュリティ戦略においてとても大きな意味を持っています。そしてどちらも、包括的なリスク分析とアプリの全体的な保護を実現するのに重要です。 そして両方とも同様に、アーキテクチャからネットワークの脆弱性、リスクエクスポージャーに至るまで、複数アカウントでセキュリティの脅威を回避するのに重要な役割を担っています。
これら2つのアプローチの違いについて、それぞれの能力を正確に知り、何が足りないのか判断し、お互いに補えるポイントを認識して、包括的に確実にWebおよびモバイルアプリをセキュリティで守ることが大切です。
定義とねらい
ペネトレーションテストは、アプリの弱点の悪用と脆弱性、脅威、ループホールの検出に役立ちます。 セキュリティに関する専門家が、悪意のあるコードのインジェクションや、SQLのインジェクション、パラメーター化、不正な入力などを行って、安全でない事業プロセスと適用中のセキュリティ対策について不十分な点を洗い出します。
こうすることで、開発チームがループホールを塞いだりアプリをより安全なものにすることが可能になります。 通常、これらの作業は自動ではなく手動で行うもので、効果的なペネトレーションテストには十分な経験が必要です。 テスト担当者にはビジネス要件に対する優れた知見、脅威ベクトルの予想、そして抽象的な状況の中で考え抜き弱点をはっきりと示す能力が求められます。
一方で脆弱性スキャンは、既知の脆弱性をスキャンするもので、繰り返し行うため、通常は自動化されています。 多くの場合、脆弱性スキャンはファイアーウォールやルーター、サーバーなどのアプリやネットワークレベルで行われます。 スキャンの結果は緊急度でソートされた脆弱性のリストとして出ます。 ペネトレーションテストと異なり、広いスコープでかつ定期的に実行されます。 脆弱性スキャンが役に立つのは脅威の検出のみで、予防の仕組みをもつ他のもので補う必要があります。効果的なセキュリティフレームワークとしてはペネトレーションテストなどがその1つです。
上記で述べたように、ペネトレーションテストは適切に実行されると、アプリの脆弱なポイントを認識するだけでなく脅威のランドスケープを事業にもたらす影響、深さ、構造の観点から実証できます。 つまり、ペネトレーションテストは事業の未知の弱点を発見し、脆弱性スキャンで分析報告された結果に対して将来性のある対策の実行を可能にします。
いつ、どのアプローチを選択するか
脆弱性スキャンは定期的に実行するべきです。過去の攻撃から学んで既知の脅威と潜在的な脅威の両方を効果的に検出に生かしましょう。 事業に関わることなので、ネットワークの境界はスキャンでしっかりカバーする必要があります。 開発チームは生成された脆弱性レポートについて細かく調査を行い、優先的に適切な対策を導入する領域を判断します。
ペネトレーションテストの方はというと、日常のサーバー攻撃で防御策を乗り越えようといくつかの手法を用いてシミュレーションを行う、目標設定型のテストです。 テスト担当者は倫理的ハッキングを行い、アプリのセキュリティ機能の限界をテストして、実際に本格的な攻撃を受けた際に持ちこたえられるか確認します。 実際に攻撃を受ける前にデモンストレーションを行うことで、事業のループホールを埋め、インターフェースやサーバー、APIを守るのに役立ちます。 ペネトレーションテストは基本的にセキュリティの脆弱性を暴くことに長けています。
通常ペネトレーションテストは以下の5段階を踏まえて実行されます。
1. 事前準備 - ターゲットとするアプリに関する情報収集
2. スキャニング - アプリをスキャンして脅威についての理解を判定する
3. アクセス権の取得 - ポイント1と2をふまえ、攻撃者がループホールを悪用してアクセス権を取得し、 マルウェアを埋め込んでデータにアクセスし、内在する弱点を悪用する
4. アクセス権の保持 - できる限りのダメージを加えるようにターゲットとなるアプリの環境の中にとど まる
5. 足跡の消去 - 有能な攻撃者は攻撃の後を残さないため、ログやデータ収集などの足跡を消し去る
アプリを確実に守る
まず、脆弱性の評価から始めます。アプリを悩ませる脅威をすみずみまで理解するためです。 スキャンにより、開発者に脅威のリストが提供されます。リストは、特定の攻撃シナリオをターゲットにするペネトレーションテストに利用します。 「ターゲット要素」の悪用で行う査定により、開発チームが脅威にパッチを充てるため詳細な戦略を練ることができるようになります。 このアプローチは既知の脅威の他、予期していなかった脅威やビジネスロジックの脆弱性、ゼロデイ脅威などを明るみに出すのに便利です。 その結果、時間とお金の節約、そして実際の攻撃の際に事業の知的財産を保護することにつながります。
情報とネットワークセキュリティを管理するには、継続的な脆弱性スキャンとペネトレーションテストのどちらも使った多角的なアプローチが欠かせません。 効果的で将来的に役に立つ洗練したセキュリティ戦略の適用にも有効です。
アプリの評価と脆弱性の発見は簡単ですが、脅威の検出とブロックはランタイムでアプリを保護する絶対に安全なセキュリティソリューションが必要です。
AppSealingで既知の脅威および未知の脅威をブロックしてあなたのアプリを保護しましょう!AppSealingでは、複雑な状況で判断材料となるリアルタイムの監視ダッシュボードをご用意しています。
今すぐ無料トライアルをお試しください。http://bit.ly/signup-free-trial-appsealing
コメント
0件のコメント
サインインしてコメントを残してください。