準拠/未準拠の判定自動化を推し進める新しいCコーディング・ガイドライン「MISRA C:2012」とは? ―― 「MISRA C:2012 との付き合い方」セミナ

Tech Village編集部

tag: 組み込み

レポート 2013年4月25日

●セキュア・コーディングのためのコーディング標準も紹介

 本セミナの特別講演として,一般社団法人 JPCERTコーディネーションセンター 脆弱性解析チーム リーダーの久保 正樹氏が,セキュア・コーディング標準である「CERT C」について紹介した(写真2).CERT-Cは,ソフトウェアに攻撃可能な脆弱性を作り込まない,という観点で定められたコーディング規約集であり,CERT Secure Codingチームというコミュニティが中心となって,Wikiを使って開発した.CERT Cの日本語訳は,JPCERTコーディネーションセンターのWebサイト上で公開されている(図4http://www.jpcert.or.jp/sc-rules/).また,CERT Cの中から静的解析可能なルールのみを抽出したものが「ISO/IEC TS 17961 "C Secure Coding Rules"」として国際標準にもなっている.

 

写真2 JPCERTコーディネーションセンターの久保 正樹氏

  

 

図4 CERT Cの日本語訳「CERT C セキュアコーディングスタンダード」の例(JPCERTコーディネーションセンターのWebサイトより)

 

 

 MISRA CとCERT Cは,ルールの内容としては重なる部分も存在するが,前述したように着目している観点が異なる.また,MISRA Cが組み込みシステムを対象としているのに対して,CERT CはOSや実行環境などは特定せず,C言語を使うすべての人のために策定されている.CERT Cのルールの数は287項目とMISRA Cに比べて多く,そのうち112項目を必ず適用するべき「ルール(Rule)」,175項目をガイドラインまたは提案としての「レコメンデーション(Recommendation)」としている.さらにCERT Cでは,それぞれのルールやレコメンデーションについて,悪影響を及ぼした場合の深刻度や悪影響が起こる可能性,修正コストの高低を評価し,これらに基づいて,ルール適用の優先度を判定している(図5).また,この優先度によって適合レベルを1~3に分け,CERT Cへの適合を3段階で主張できるようにしている,とのことだった.

 

図5 リスク評価の一覧(CERT Secure CodingチームのWikiより)

 

 

«  1  2
組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日