近年、アプリケーションに対する脅威が拡大しており、開発者自身がセキュリティを考慮して開発に携わることが求められています。プログラミングコースでは、セキュアなアプリケーションの開発を行う上で必要となる、設計、開発、テストについて扱います。
設計では、コーディングの原則、メンテナンシビリティ、テスタビリティ、構造化の考え方など、セキュアアプリケーションを作るうえで重要なコンセプトを説明します。
開発では、OSプログラミングとWebアプリケーションプログラミングの2つの演習を行ないます。まずx86プログラミングを体験し、現代の計算機の動作原理とOS上で動くプログラムついて理解を深めます。そして実際にスクリプト言語(Perlなど)を使ったしゃべる掲示板の作成を通してWebアプリの段階的な開発を経験し、コマンド/SQLインジェクションやアクセス制限とユーザ認証の重要性について説明します。また、JavaScriptやFlashを利用したリッチなWebアプリのセキュリティについても扱います。
テストでは、Webアプリを題材に、どのような問題が潜むのか、また実際にそれらの問題を見つけ出す方法を説明をします。
|