アーカイブ

セキュア・プログラミング講座のねらい

独立行政法人情報処理推進機構
セキュリティセンター

本ページの情報は2007年6月時点のものです。

通常のシステムエンジニアやプログラマが習得するプログラミングテクニックについての知識だけでは知らず知らずに「脆弱性」を発生させてしまうことがある。「脆弱性」とは、想定した用途以外の動作をするように攻略されてしまう可能性であるといえる。

「脆弱性」≒「攻略可能性」

システムエンジニアやプログラマは、問題症例や病理についても学ぶ必要がある。

「セキュア・プログラミング講座」の内容は、ソフトウェア開発のライフサイクルプロセスの枠組みに編集している。 これには、次のねらいがある。

  • 従来は脆弱性の対処を下流工程で行っていたが今後は上流から対処するイメージ図

従来、テスト・運用などの下流工程で脆弱性を解消するのは「容易ではない」、「手戻りによる修正のコスト や納期への影響が大きい」と考えられていた。今日、相当な種類の脆弱性を下流工程で短期に修正することも可能となりつつある一方、根本的にやり直さなければならないプロジェクトもあるようである。やはり事前に「脆弱性」を考慮しておきたい。事前に「脆弱性」の問題を意識して対策できる教材を用意した。

また、近年の技術動向を反映して、高度な論点も解説するようにしている。

例:

  • Webアプリケーションフレームワーク
  • クライアント側マッシュアップとサーバ側マッシュアップ
  • C言語によるエラーハンドリング