前回、前々回と脆弱性の発生個所といった観点から脆弱性について考えてきた。今回からは、安全なアプリケーションを作るためのチェック方法について説明していきたいと思う。
安全なアプリケーションを作成するには、ただ構築するだけでなく、各開発工程におけるレビューと適切なテストが必要になる。レビューを行うことにより、考慮漏れや誤りを見つけ出し、少ない工数で修正することが可能になる。
また、テストを行うことで、作成したアプリケーションに問題が無いことを確認することができる。しかし、実際にレビューやテストはどのよう行えばよいのか分からないのが実状ではないだろうか。
そこで、今回はレビューやテストのコツを紹介する。
「設計レビュー」と「コードレビュー」
レビューを分類すると「設計レビュー」と「コードレビュー」の大きく2つがある。セキュリティ対策という観点での設計レビューでは、存在する脅威に対して適切な対策が検討されているかを確認する。
一方、コードレビューでは、設計フェーズで検討した対策が、設計したとおりに実装されているかということを確認する。これら2つのレビューを適切に行うことで、開発時のセキュリティ対策に必要なコストを低減しつつ、効果的な対策を行うことができる。
・設計レビューのコツ
それではまず、設計レビューではどういったことに注意して確認する必要があるのか、そのポイントを説明する。
セキュリティ対策を行うには、「守るべきものは何か?」ということを明確にしておく必要がある。これが明確になっていないと必要な対策が取れていなかったり、必要以上に対策を行う可能性がある。
そこで、設計段階で必要な機能、データに対してリスク分析を行う。リスク分析を行った上で対策の必要があるものについて、対策を実施することで、セキュリティ対策に必要なコストを抑えることができる。
詳しくは、マイクロソフトの「TechNet」などを参照してほしい。
リスク分析を行い、設計が終わった段階でセキュリティ対策についてのレビューを実施することになる。