FORTIFY SCA
フォーティファイ・エスシーエー
ソフトウェアコードに潜むセキュリティ脆弱性を発見・追跡・修正し、
セキュリティリスクを軽減するソフトウェアスイート
概要

ソフトウェアへの攻撃はインターネットが普及して、インフラストラクチャーや攻撃手法の多様化によって年々増加の一途をたどっていて、今までのセキュリティツールだけでは、企業資産を守ることが難しくなってきています。
Fortify Source Code Analysis (SCA) は攻撃の対象となる可能性がある、企業のソフトウェア資産の脆弱性を分析し、修正するための、ソースコード脆弱性分析ソフトウェアです。
SCAはソースコードの脆弱性を分析するだけでなく、脆弱性に対する影響や修正方法等の情報を提供します。さらに、ビルド環境等の情報を活用しながら、複雑に絡み合う外部ライブラリーやAPIとの関係等も考慮に入れ、総合的な分析が行える画期的なツールです。

セキュリティエキスパートの不足
開発プロジェクト内にセキュリティ脆弱性を的確に分析できる人は何人いるでしょうか?また、そのような人材を全てのプロジェクトにアサインすることが可能でしょうか?SCAの強力かつ高い精度を持つ分析エンジンとセキュアープログラミングを凝縮したナレッジデータベースが、セキュリティプログラミングのエキスパートのように脆弱性を発見し、その影響度や対処方法に関する情報を提供し、開発者をサポートします。

もちろん、セキュリティエキスパートがいるプロジェクトにおいても、膨大なソフトウェアをくまなく分析して、効率的な脆弱性発見を行う手助けとなります。また、オフシュア開発を含めた、外部委託を使ったシステム開発では、セキュリティプログラミングに対するギャップが生じやすいものです。SCAは、このような開発プロジェクト体制でも威力を発揮し、安定したセキュリティ品質の成果物を作すことができ、開発者だけでなく、プロジェクト全体のセキュリティリスクへの取り組みを促進させる機能も提供しています。

SCAとは?
SCAは、ソフトウェアのソースコードを多角的に分析し、そこに潜む脆弱性を正確にかつ、効率的に発見、修正することができるソフトウェアスイートです。このソフトウェアスイートには、脆弱性分析エンジン、分析ビューワー、分析ナレッジデータ、IDEプラグイン等、脆弱性発見と修正に必要なソフトウェア群で構成されています。

  • ソースコードを解析して脆弱性、品質に関わる問題点を発見・可視化
  • 問題の原因、概要、修正の推奨、影響などの提供
  • 最新のセキュリティノウハウをネットで提供
  • 対応言語: C/C++, JAVA, JSP, C#, VB.NET, ASP.NET, Cold Fusion, SQL, PHP, JavaScript, ASP, COBOL
  • 対応プラットフォーム: Windows, Linux, Solaris, HP-UX, AIX, Mac OS X
  • 複数の言語が混在したシステムも一括解析
  • 関数の関係やデータの流れなどをロジカルに分析し、解析精度を向上
  • 何百万行のソースコードが解析可能なスケーラビリティ


画面はFORTIFY SCA Audit Workbenchの画面
(クリックすると拡大画像がご覧いただけます)

SCAのコンポーネント

SCAは様々なソフトウェアコンポーネントで構成されるソフトウェアスイート製品です。
コンポーネント名 概要 備考
SCA Engine
(Analysis 360)
アプリケーションソースコードを分析するエンジン本体です。ソースコードをロジカルに分析し、結果を出力します。
セキュアコーディングルールパック
(Fortify Rules)
セキュアコーディングのノウハウを蓄積したルールファイルです。ネットワークを通じて取得します。
Rules Builder 独自にルールを作成する場合に利用するツールです。
Audit Workbench SCA Engineによって分析された結果を利用し、ビジュアルに問題の箇所、概要、修正方法の閲覧や修正を行うことができます。
IDE Plugin Audit Workbenchの機能を既存のIDE環境から利用できるようにするためのソフトウェアです。
Team Server SCAによって分析した結果をブラウザーを経由して複数の人が閲覧や問題の管理を行うことができるサーバー製品です。 選択するパッケージによっては含まれない場合あります
FORTIFY Manager SCAによって分析した結果を収集し、時系列管理や様々なレポート作成を行うことができるソフトウェアです。
詳細
オプション製品


セキュアコーディングルールパック

Secure Coding Rulepacks (Rulepack) は、SCAのコア技術である脆弱性分析に必要な様々なセキュリティノウハウを凝縮した、セキュアプログラミングナレッジデータベースです。 Rulepackを利用すれば、より深く、専門的なセキュリティノウハウを使ってお客様のソフトウェアに潜む異常なコードを迅速に発見し、修正をすることができます。Rulepacksインターネット経由でダウンロードすることで常に最新の状態に保たれます。また、Rules Builderを利用することにより、固有な開発環境にも対応できます。

専門的な知識を提供
Rulepackには長年の研究や開発の実践によって培われたセキュアプログラミングの手法やサードパーティーライブラリ等に関する様々なセキュリティプログラミングのノウハウが60,000種類以上蓄積されています。
 

常に最新のセキュリティノウハウ
セキュリティノウハウは刻々と変化し続けています。この変化に対応できるように、FORTIFYの調査チーム、テクニカルパートナーが常にセキュリティの今を研究・分析しており、その成果は、Rulepackに反映されます。 変化するコンピュータセキュリティに対し、最新のRule Packを適用することで、ソフトウェアのセキュリティ脆弱性を常に最小化することができます。

検査できる代表的な問題

Buffer Overflows
SQL Injection
Cross-Site Scripting
Access Control
Process Control
No Null Termination
Setting Manipulation
Resource Injection
Passwords in Config Files
Unreleased Resource
Format String Issues
Privacy Violations
Native Callout
Unsafe Memory Operation

Unchecked Return Value
Always Unsafe Functions
Race Conditions
Uninitialized Variable
Session-ID Length
Entity Bean Configuration
Information Leakage
Log Forging
Integer Overflow
EJB Resource Permission
Struts Form Field Validation
Double Memory Free
Null Pointer Dereference
Directory Restriction

2007年12月現在で上記問題カテゴリーは約200種類提供しています。

FORTIFY AWB(Audit Workbench)およびIDE Plugin

脆弱性の状況を可視化して、すばやく、確実に脆弱性の修正をサポートします。FORTIFY AWBは、このSCAの脆弱性分析エンジンと連携し、ソースコード上で発見された脆弱性をビジュアル化するためのGUIツールです。
また、AWBは、脆弱性の位置を表示するだけではなく、ソースコードの修正はもちろんのこと、プログラマー、プロジェクトマネージャー、セキュリティ監査担当者等がそれぞれの役割に応じた表示方法にカスタマイズが可能で、それぞれの役割におけるミッションを最大化する事ができます。

効率的な分析作業
SCAが生成する分析結果は複雑かつ大量に生成される場合があります。このような場合でも、AWBを利用すれば、正確かつ簡単に脆弱性の位置や影響、対応方法などの情報を参照しながらプログラムの修正を行うことが可能になり、セキュアプログラミングをより効率的に行うことができます。

強力なレビュー機能
開発者は、分類、コメント、優先順位などを付ける機能を利用して、条件に合わせた表示方法を選択できてます。いつ、どの問題を優先に修正するかビジュアルに判断することができます。

 オンデマンドエデュケーション
セキュリティは多くの開発者にとって複雑で常に新しいものです。Audit Workbenchはアプリケーション上に発見された脆弱性についての影響や修正方法の情報も提供しますので、開発者はツールを使っていくうちに自然とセキュリティプログラムに関する知識を習得することができます。

FORTIFY Rules Builder

 コーディングガイドラインや独自に作成したライブラリやフレームワークなど、お客様独自にルールを作成し、SCAで分析することができます。Rules Builder(ルールズビルダー)は、独自ルールを簡単に作成できるルール作成ツールです。作成したルールはSCAを導入しているユーザーに自由に配布することができます。

Team Server

Team Server(チームサーバー)は、SCAエンジンによって生成された結果ファイルを管理し、Webブラウザーを通じて複数の利用者が問題の閲覧や監査を行うことができるサーバー機能です。Team ServerによってSCAを持たない利用者や協力会社、オフシュア先など様々な場所でネットワークを通じて問題の管理、閲覧を行うことができるようになります。

画面はFORTIFY SCA TeamServerへBrowserからアクセスした画面
(クリックすると拡大画像がご覧いただけます)

対応環境

Windows 2000/2003/XP/Vista, AIX, Linux, Solaris, HP-UX, Mac OS X

購入・価格について

フォーティファイパートナーまでお問い合わせください。