![]() |
| 講義概要 |
| 科目基礎情報 |
| 授業科目名 | ソフトウェアセキュリティ特論 | ||
|---|---|---|---|
| 英文授業科目名 | Advanced Software Security | ||
| 開講年度 | 2011年度 | 開講年次 | 全学年 |
| 開講学期 | 後学期 | 開講コース・課程 | 博士前期課程、博士後期課程 |
| 授業の方法 | 講義 | 単位数 | 2 |
| 科目区分 | 大学院専門教育科目 - 専門展開科目 | ||
| 開講学科・専攻 | 総合情報学専攻、情報・通信工学専攻 | ||
| 担当教員名 | 大山 恵弘 | ||
| 居室 | 西9-515 | ||
| 公開E-Mail | oyama@inf.uec.ac.jp | ||
| 授業関連Webページ | http://www.ol.inf.uec.ac.jp/~oyama/softsec2011/ | ||
| 更新日 | 2011/03/24 13:22:45 | 更新状況 | 公開中 |
| 講義情報 |
| 主題および 達成目標 |
主題:近年のソフトウェアセキュリティ技術に関して理解を深めることを目的とする。 達成目標:ソフトウェアセキュリティの分野における基礎技術を理解し、その分野における課題を解く知識とスキルを身につけることを目標とする。 |
|---|---|
| 前もって履修 しておくべき科目 |
なし |
| 前もって履修しておくこ とが望ましい科目 |
特に科目の指定はないが、C言語のプログラミングができること、UNIX系OSおよびアセンブリ言語についての基礎知識があることが、講義を理解するために必要である。特に、C言語の初心者は、課題レポートを作成するのにかなりの困難が伴う可能性があることに注意すること。 |
| 教科書等 |
講義資料は毎回配布する。 参考書を以下に示す。 John Viega, Gary McGraw: "Building Secure Software: How to Avoid Security Problems the Right Way" Greg Hoglund, Gary McGraw: "Exploiting Software: How to Break Code" Michael Howard, David LeBlanc: "Writing Secure Code" Jack Koziol et al., "The Shellcoder's Handbook: Discovering and Exploiting Security Holes" James E. Smith, Ravi Nair: "Virtual Machines: Versatile Platforms For Systems And Processes" |
| 授業内容と その進め方 |
(a)授業内容 ソフトウェアセキュリティについての講義を行う。 (b)授業の進め方 プロジェクターを用いて講義形式で行う。 Lecture schedule: 1: Guidance and introduction 2: Buffer overflow attacks 3: Buffer overflow attacks (continued) and format string attacks 4: Denial-of-Service attacks, DNS cache poisoning 5: Attacks against Web applications (1): Forceful browsing, directory traversal, session management, cross-site scripting 6: Attacks against Web applications (2): Session fixation, cross-site request forgery, OS command injection, SQL injection 7: Authentication, authorization, information privacy 8: Race attacks, computer viruses 9: Analysis of binary code 10: Security enhancement techniques based on dynamic monitoring or environment isolation 11: Security enhancement based on language-level techniques (1): Heuristics-based schemes, Splint 12: Security enhancement based on language-level techniques (2): StackGuard, safe C compilers, safe runtime systems 13: Secure operating systems 14: Virtualization and security 15: Summary and future directions (c)授業時間外の学習(予習・復習等) 講義の前には参考書の該当する部分を読んでおくこと。 講義の後には、参考書の該当する部分や配布資料を再度読んだり、課題のレポートを作成したりすること。 |
| 成績評価方法 および評価基準 (最低達成基準を含む) |
(a)評価方法 講義の中で数回出題する課題のレポートにより採点する。レポートが成績評価に占める割合は100%である。 ただし、講義への出席率が非常に低い場合には減点することがある。 (b)評価基準 単位取得には、すべての課題に対して十分な質のレポートを提出することが必要である。ソフトウェアセキュリティのいくつかの重要な事項を理解し、それらの事項に関係するプログラミングや文章作成ができることが必要である。 |
| オフィスアワー: 授業相談 |
木曜4限、西9号館515号室。この時間に都合が付かない場合には、メールや電話などにより別途アポイントメントを取ること。電子メールによる質問も可。 |
| 学生へのメッセージ | セキュリティは近年著しい速さで研究が進んでいるホットな分野であるとともに、実世界における重要度が極めて高い技術でもある。本講義ではセキュリティの基礎から最新動向までを扱う。将来研究開発の仕事に従事したときに役に立つ知識も多いと思う。ぜひ一生懸命勉強してほしい。 |
| その他 | なし |
| キーワード | セキュリティ, 仮想マシン, OS, システムソフトウェア |