20周年
OWASP(The Open Web Application Security Project)さんは、設立20周年らしく、CEHのテストを行うEc-councilも20周年らしく、またいろんなセールをやっている。
20年間Securityに取り組んできた成果は大きい。ただ、大きすぎて、飲み込めない感は否めない。
SAMM プロジェクト
ソフトウエアセキュリティ保証成熟度モデル(Software Assurance Maturity Model: SAMM)と、呼ばれるプロジェクトがOWASPに存在する。
正確な日付は分からないが、v1.0が2010年頃にリリースされ、JPCERTが日本語訳してくれたものがある。
https://www.jpcert.or.jp/research/2010/SAMM_20100407.pdf
その中で、以下のような説明がある。
元々は独立ソフトウエアセキュリティコンサルタントである Pravir Chandra(chandra@owasp.org)により開発・設計・執筆された。
最初の草案の作成は Fortify Software, Inc.の財政的支援を得て実現した。現在、本書の維持管理・改訂は OpenSAMM Project(代表 Pravir Chandra)が行っている。
SAMM の公開当初から、同プロジェクトはOWASPに組み込まれた。
2017年にv1.5がリリースされ、2020年にv2.0がリリースされた。
時代の変化に応じて、このようなプロジェクトが進化してくのが素晴らしい。
ですが、日本語の情報が少なすぎて、悲しい。
SAMMの詳細について
こちらがv2.0に関する、日本語の情報として分かりやすかった。
SAMMの文書構造の説明から、v1.5からの変更点など、説明があり、何とか全体が理解できました。
文書構造は以下の通り。
v2.0では「Business function」が5つあり、それぞれに3つの「Security practice」があり、それに対応した「Stream」が2つあり、それについて3段階のレベルが設定されている。
それをまとめたのが以下の図になる。
最上段が「Business function」を示す。
v1.5からの変更点
v1.5では、「Business function」は4つだったが、v2.0では「Implementation」が増えて、5つになっている。分類も変更になっており、以下にまとめられている。
これを見ていけば、v1.0の日本語翻訳から、v2.0への部分的な翻訳の適用が可能かもしれない。
SAMMの活用
こういうものは、高い理想論を掲げて、トップダウンで実行したけれども、現場としてはそれどころじゃない、ということで、すぐに終息してしまいがち。
その辺りも考慮されていて、SAMMは以下の原則の上に成り立っている、と明記されています。
- 組織の振る舞いは時間をかけてゆるやかに変化する
- すべての組織に効果のあるたった 1 つの秘策というものは存在しない
- セキュリティに関わる活動の指針は規範的なものであること
それを実現するためにToolBoxなるものが準備されています。
エクセルのテンプレートなのですが、現時点の測定をして、短いサイクルで反復させるロードマップが作れる。
samm/SAMM_Assessment_Toolbox_v2.0.xlsx at master · OWASP/samm · GitHub
ロードマップについても、v1.5では業種ごとに重視すべき「Business function」が定義されており、やみくもに、すべてにおいて成熟する必要性がないことを提示してくれていた。
ロードマップが決まれば、何をすべきか、という点について、以下の資料が参考になる。
具体的な施策のための成果物への導線がSAMMにはないので、それぞれ参考になるものを活用できるようにする。
まとめ
セキュア開発・シフトレフト・DevSecOps・セキュリティ バイ デザインとか言われ、何をして良いのか途方に暮れがちですが、SAMMの活用によりロードマップを明確化できる。