ソースコードの脆弱性をチェックするツール、IPAが無償公開。C言語に対応

2012年5月8日

IPA(独立行政法人情報処理推進機構)は、 C言語で作成されたソースコードに脆弱性が存在しないかどうかを検査するツール「iCodeChecker」を公開しました。無償で利用できます。

情報処理推進機構:ソースコードセキュリティ検査ツール iCodeChecker

iCodeCheckerは、ソースコードの脆弱性が存在する箇所を検出し、修正例や脆弱性が悪用された場合の脅威についてのレポートを出力するツール。プレスリリースから引用します。

本ツールは、脆弱性やソースコード検査技術を学習したい学生や開発者を対象に、利用者自身が作成したソースコード(C言語)を検査することできます。

本ツールでは、ソースコードの脆弱性が存在する箇所を検出し、修正例や脆弱性が悪用された場合の脅威について解析したレポートを出力します。利用者は本ツールを通して、脆弱性を学習するとともに、ソースコードセキュリティ検査技術の有効的な活用方法を習得することができます。

配布形式は、VMイメージ、パッケージ形式、ソースコード形式の3つ。VMイメージはVMware Playerで動作し、パッケージ形式およびソースコードはUbuntu 11.10 Desktopが動作環境となります。拡張子がrbになっているため、ソースコードはRubyで記述されている模様。

脆弱性を作り込まない技術を習得するために使ってほしいとIPAは説明しています。

検出できる脆弱性と検査可能なコードの条件

ツールの概要によると、検出できる脆弱性は以下。

CWE-120 入力サイズ未チェックでのバッファコピー(バッファオーバーフローの問題)
CWE-129 配列インデックスの検証の不備
CWE-134 書式文字列の問題
CWE-190 整数オーバーフローの問題
CWE-191 整数アンダーフローの問題
CWE-195 符号付き変数の変換に関する問題
CWE-457 未初期化変数の利用
CWE-467 ポインタ変数に対する sizeof 演算子の利用

また、検査可能なソースコードの条件は以下。

C言語(ANSI C)で記述されたソースコード
x86 アーキテクチャ向けに記述されたソースコード
100ファイル以下で構成されるプログラムのソースコード
構造体を使用していないソースコード
goto文を使用していないソースコード

構造体を使わないコードという条件は、本格的なコードではちょっと厳しいかもしれませんね。ツールの開発は株式会社フォティーンフォティ技術研究所が行ったと発表されています。

Tags: セキュリティ プログラミング言語 C IPA

このエントリーをはてなブックマークに追加
ツイート
follow us in feedly




タグクラウド

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本