インタラクティブアプリケーション脆弱性検査ツール「Checkmarx CxIAST」
特長
目次
NEW インタラクティブアプリケーション脆弱性検査ツール「Checkmarx CxIAST」がCheckmarx社のセキュリティプラットフォームに仲間入り!!
「Checkmarx CxIAST」の追加により、今まで以上に手軽にDevSecOpsの実現ができるようになりました。
セキュリティ対策は誰の責務か?
インターネットバンキング、ネットショッピング、オンライン行政サービスなど、多くのビジネスやサービスのオンライン化が急速に進んでいます。それに伴い、Webアプリケーションの脆弱性を悪用したサーバー攻撃も日増しに高度化・多様化してきています。
それでは、Webアプリケーション開発におけるセキュリティ対策は、誰が担うべきでしょうか?
答えは、「開発ライフサイクルに携わる全員」です。
安心・安全なWebアプリケーションを開発するためには、開発する側(Development)はもちろん、運用する側(Operations)の誰もがセキュリティ(Security)を考慮するべきである、という考え方が"DevSecOps"の根底にあります。
しかし、すでに限られたリソースで厳しい納期への対応を迫られて頭を悩ませている開発チームにとっては、開発ライフサイクルにセキュリティ対策を組み込むことは簡単ではありません。開発後期または終了後にセキュリティテストを実施したり、外部のセキュリティ診断サービスを利用しているケースも多いかと思います。
【開発側の悩み】
- セキュリティテストによって既存の開発サイクルに遅れが生じるのは困る
- セキュリティに詳しい人間がいない
- セキュリティテストをしても“使える”結果が出てこない(誤検知が多い、修正箇所の特定が大変)
開発されたWebアプリケーションのリリース責任を持つ運用側にとっても、多発するサイバー犯罪の被害に遭わないようにするためには、セキュリティ対策を人任せにしているわけにはいきません。しかし、運用側でのセキュリティ対策もまた簡単ではありません。
【運用側の悩み】
- 手元にあるのは完成したアプリケーションのみで、そもそもセキュリティテストをするコードがない
- セキュリティに詳しい人間がいない
このような数々の問題を解決し、開発側でも運用側でも簡単にセキュリティ対策を実施できるようにと考え出されたのが、IAST(Interactive Application Security Testing)というテスト手法です。
IASTによるセキュリティテストの効率化
そもそも「IAST」って何?
IAST(Interactive Application Security Testing)は、実際に動作しているアプリケーションのデータフローを解析し、脆弱性の検出を行う比較的新しいセキュリティテスト手法です。
従来のテスト手法であるDAST(Dynamic Application Security Testing)とSAST(Static Application Security Testing)それぞれの長所を兼ね備えており、実際のアプリケーションを稼働させた状態で脆弱性検査を行うため、誤検知を最小限に抑えることができます(➔【DASTの長所】)。また、検査結果から脆弱性の原因となっているソースコード内の問題箇所を容易に特定することも可能です(➔【SASTの長所】)。
Checkmarx CxIASTの特長
「Checkmarx CxIAST」は、セキュリティテストを自動化し、DevSecOpsの実現をサポートするWebアプリケーションの脆弱性検査ツールです。 テスト対象のWebアプリケーションサーバーに検査エージェントを組み込んだ後は、ソフトウェア開発プロセスで通常行っている機能テストを実施するだけで、そのテストの裏側で自動的にWebアプリケーションの挙動(データフロー)を監視して脆弱性を検出します。
既存の機能テストが、そのままセキュリティテストに
通常の機能テストを実施するだけで、Checkmarx CxIASTがその裏でWebアプリケーションの挙動を監視し、脆弱性の検出を自動で行います。
そのため、セキュリティテスト用に別のテスト環境を用意する必要もなく、開発者の手を煩わせることもありません。Webアプリケーションの挙動を監視するため、機能テストを実施すればするほど、多くのデータフローにおける脆弱性の有無を検査することができ、まさに"一石二鳥"です。
開発者がすぐに使える検査結果
折角セキュリティテストを実施しても、その検査結果に誤検知があまりにも多い場合は、開発者にとって“使える”結果とは言えません。Checkmarx CxIASTは、実際のWebアプリケーションの挙動を監視して検査を行うため、非常に精度の高い結果を取得することができます。
また、具体的にソースコードのどの部分で脆弱性が発見されたのかが一目でわかるため、開発者は速やかに問題の修正に取り掛かることができます。
CI/CDプロセスにシームレスに連携
Checkmarx CxIASTは、CI(継続的インテグレーション)/CD(継続的デリバリー)ツールとの連携も容易です。そのため、セキュリティテストをシームレスに既存のDevOps環境に組込むことができます。
Checkmarx CxIASTの仕組み
Checkmarx CxIASTを使ってのセキュリティ検査は非常に簡単です。ユーザー側で行うことは、テスト対象のWebアプリケーションサーバーにCheckmrx CxIASTの検査エージェントを組み込むだけ。
後は、通常通りの機能テストを行っているその裏で、エージェントがWebアプリの挙動(データフロー)にセキュリティの脆弱性がないかを自動的かつ継続的に監視し、問題があれば報告します。
実際に動作しているWebアプリケーションの挙動(データフロー)を検査するため、自社製コードだけでなく、データフロー上にあるサードパーティのライブラリ、フレームワーク、設定ファイルのチェックもできます。
Checkmarx IASTによる検査結果のフィードバック
検査結果のサマリー表示
機能テスト中のWebアプリケーションのデータフローに脆弱性が見つかるとリアルタイムで報告します。検出された脆弱性は、その深刻度別に分類(色分け)されます。
◆◆ 検出された脆弱性はダッシュボードで確認できます ◆◆
コードレベルの検査結果
データフロー中で発見された脆弱性は、Checkmarx CxIASTが逆コンパイルしたコード情報と共に表示されます。また、この結果には読み込まれた設定ファイル内で使われている値、使用されているオープンソースライブラリやフレームワークの情報も含まれます。
そのため、開発者は修正すべき脆弱性がコード内のどこに存在するかをすぐに特定することができます。
◆◆ コード情報があるから脆弱箇所の特定が簡単 ◆◆
カスタマイズ機能
デフォルト設定でも40種類以上の脆弱性の検出ができますが、脆弱性の検出アルゴリズムを自由にカスタマイズして、検出対象の脆弱性を増やしたり減らしたりと、検出結果を最適化することができます。
◆◆ 検索対象をカスタマイズできるクエリエディター ◆◆
SASTツールとの連携機能
Checkmarx社の提供する脆弱性静的解析ツール「Checkmarx CxSAST」と連携させることで、双方の検出結果を共有し関連付けることができます。
これにより、Checkmarx CxIASTから得られるアプリケーション実行時の検出結果をCheckmarx CxSASTによるコードレベルの検出結果と組み合わせ、より的確に脆弱性の修正箇所を把握することが可能になります。
◆◆ CxIASTのスキャン結果をCxSASTで確認 ◆◆
解析できるプログラミング言語
プログラミング言語
- Java
- Node.js
- C#
- .NET
検出できる脆弱性
OWASP TOP10に挙げられている脆弱性をはじめとする40種類以上の脆弱性を検出することができます。
- SQLインジェクション
- パラメータ改ざん
- クロスサイトスクリプティング
- オープンリダイレクト
- XPathインジェクション
- 信頼境界違反
- OSコマンドインジェクション
- クロスサイトリクエストフォージェリ
- ディレクトリ(パス)トラバーサル
- リモートコード実行(RCE)の脆弱性
テクニカルサポート
技術的なご質問に関しては、以下までご連絡ください。
※ サポート受付時間:9:30~17:30(土日、祝日を除く)
お問い合わせ先
phone Tel: 03-3245-1248 mail Email: ss_support@toyo.co.jp
お問い合わせに際してのお願い:
- お問い合わせのE-mailに、次の情報を付加してください。それによって、より早い回答をお届けすることができます。
- ご使用になっているOSの種類とバージョン
- ご使用になっている製品のバージョン
- エラーメッセージが出ている場合は、そのエラーメッセージを正確にお送りください。GUI の場合は、画面をキャプチャした画像ファイルをお送りください。
- 可能な限り、その問題が発生した経緯、再現の手順をお知らせください。