3. 調査研究の全体像
• A. セキュリティパターン研究サーベイ
• B. 多層メタモデル&ビュー
• C. 適用事例: モバイルクラウドアプリケーション
• D. 新パターン化・関連付けに向けた脆弱性記述解析
3
脆弱性、
対策パターン
メタモデル
知識ベース分解・体系化
クラウドクラウド
分散処理分散処理
クラウドクラウド
ソフトウェアシステムの
分析・設計・実装
統合適用・検証
報告・公開
新・攻撃
A
B
C
D
5. 目次
• 背景と問題提起
• A. セキュリティパターン研究サーベイ
• B. 多層メタモデル&ビュー
• C. S&P開発プロセスとケーススタディ
• D. 新パターン化・関連付けに向けた脆弱性記
述解析
• まとめと展望
5
6. • 特定の文脈上で頻出のセキュリティ問題と対応する解
決策・経験をまとめたもの
➢ 名前: Role-Based Access Control (RBAC)
➢ 問題: How do we assign rights to people based on their functions or
tasks?
➢ 解決: Assign users to roles and give rights to these roles so they
can perform their tasks.
➢ 関連パターン: Authorization, ...
User
id
name
ProtectionObject
id
name
* *Authorization_rule
Right
access_type
predicate
copy_flag
checkRights
Role
id
name
**MemberOf
セキュリティパターン
15. 脆弱性ビューの利用例: XSS
CVE-2012-4394
Cross-site scripting (XSS) vulnerability in apps/files/js/filelist.js
in ownCloud before 4.0.5 allows remote attackers to inject
arbitrary web script or HTML via the file parameter.
18. <<Authenticator.Subject>>
Employee
id
name
Employee
id
name
Authenticator
Proof_of_Identify
Authentication
Information
Patient
id
name
Helper def : SubjectName :
String = ’Employee’ <<creates>>
適用パラメータ
モデル変換によるパターン適用
Patient
id
name
[PLoP’10] “Model-Driven Security Patterns Application and Validation, Conf. Pattern Languages of Programs Conference
Authenticatorパターン
Subject
Authenticator
Authentication
Information
Proof_of_Identify
<<creates>>
rule SubjectClass {
from s : UML!Class (s.isSbj())
to t : UML!Class (
stereotype <- st),
-- add stereotype
st : UML!Stereotype (
name <- ‘AuthenticatorSubject',
baseClass <- 'Class'),
-- add Authenticator class
authenticator : UML!Class (
name <- “Authenticator”,
Subject
• モデル変換言語 ATL(eclipse.org/atl)によるマッピング例
19. 目次
• 背景と問題提起
• A. セキュリティパターン研究サーベイ
• B. 多層メタモデル&ビュー
• C. S&P開発プロセスとケーススタディ
• D. 新パターン化・関連付けに向けた脆弱性記
述解析
• まとめと展望
19
24. 設計(特にセキュリティ面)
• Authenticatorパターン --Start Game
Before: Input user name to start
With pattern: Have to sign up and sign in online
• Authorizationパターン--Check user’s
information
Before: Can check any user’s data by input name
With pattern: Can only check specified user’s data
26. 目次
• 背景と問題提起
• A. セキュリティパターン研究サーベイ
• B. 多層メタモデル&ビュー
• C. S&P開発プロセスとケーススタディ
• D. 新パターン化・関連付けに向けた脆弱性記
述解析
• まとめと展望
26
27. CVE脆弱性記述の分析
• 主語…製品名、場所、脆弱性名称 in~・before~…製品情報
• (when~…状況 動詞句…脆弱性原因)
• allow・make it easier for <ユーザ>…ユーザの種類
• to~…想定される攻撃 via~・by~…攻撃に使われる因子
Cross-site scripting (XSS) vulnerability in settings.php in
ownCloud before 4.0.12 and 4.5.x before 4.5.7 allows
remote administrators to inject arbitrary web script or
HTML via the group input field parameter.
Via/By
a brute force attack
crafted packets
…
to
to inject arbitrary web
script or HTML
to execute SQL
commands
to cause denial of
services
…
User
remote attackers
remote
authenticated
users
Local users
…
Version/Product
IBM
OwnCloud
RedHat
…
Vulneraviliry
XSS
SQL
Open Redirect
Session fixability
…
CVE-ID:CVE-2013-0307, CWE-ID: CWE-79
28. 脆弱性・対策関連付けと新パターン化に向けて
to~ 想定される
攻撃
User
Vulnerability
Via/By 因子
SQL injection
vulnerability
Cross-site
scripting(XSS)
to inject arbitrary
web script or HTML
to execute arbitrary
SQL commands
to gain privileges
CWE-79
CWE-89
CWE-89
via ~ parameter
remote attackers
remote
authenticated users
クラスタ分析
関連付け
Validator
パターン
29. 目次
• 背景と問題提起
• A. セキュリティパターン研究サーベイ
• B. 多層メタモデル&ビュー
• C. S&P開発プロセスとケーススタディ
• D. 新パターン化・関連付けに向けた脆弱性記
述解析
• まとめと展望
29
30. まとめ
• A. セキュリティパターン研究サーベイ
• B. 多層メタモデル&ビュー
• C. 適用事例: モバイルクラウドアプリケーション
• D. 新パターン化・関連付けに向けた脆弱性記述解析
30
脆弱性、
対策パターン
メタモデル
知識ベース分解・体系化
クラウドクラウド
分散処理分散処理
クラウドクラウド
ソフトウェアシステムの
分析・設計・実装
統合適用・検証
報告・公開
新・攻撃
A
B
C
D
31. 2016年度 実績(関連するものを含む)
• 論文誌、雑誌記事
• E. B. Fernandez, N. Yoshioka, H. Washizaki, et al., “Modeling and Security in Cloud
Ecosystems,” Future Internet, Vol. 8, No. 2, pp.1-15, 2016
• M. Yoshizawa, H. Washizaki, Y. Fukazawa, T. Okubo, H. Kaiya and N. Yoshioka, “Implementation
Support of Security Design Patterns Using Test Templates,” Information, Special Issue on Evaluating
the Security of Complex Systems, Vol.7, No.2(34), pp.1-19, 2016
• H. Washizaki, “Pitfalls and Countermeasures in Software Quality Measurements and Evaluations,”
Advances in Computers, Vol. 106, Elsevier, 2017.
• 鷲崎弘宜, “実践的ソフトウェア品質測定評価のための4つの「落とし穴」と 7つの「コツ」: ゴール指向、不
確実性、機械学習、実態調査ほか”, 品質, Vol.46, No.3, pp.137-140, 品質管理学会, 2016
• 国際会議
• H. Washizaki, S. Fukumoto, M. Yamamoto, M. Yoshizawa, Y. Fukazawa, S. Ogata, E. B. Fernandez, N.
Yoshioka, T. Kato, H. Kaiya, H. Kanuka, Y. Kondo, T. Okubo, A. Hazeyama, “A Metamodel for Security
and Privacy Knowledge in Cloud Services,” 12th IEEE World Congress on Services, 2016
• A. Hazeyama, H. Washizaki, N. Yoshioka, H. Kaiya, T. Okubo, “Literature Survey on Technologies for
Developing Privacy-aware Software,” 3rd International Workshop on Evolving Security and Privacy
Requirements Engineering (ESPRE), co-located with the RE’16, 2016
• Hironori Washizaki, “TESEM: A Tool for Verifying Security Design Pattern Applications,” Invited Talk,
3rd International Workshop on Software Test Architecture (InSTA), co-located with ICST 2016
• 国内会議ほか
– 櫨山淳雄, 鷲崎弘宜ほか, “プライバシーを考慮したソフトウェア開発技術の文献に基づく動向調査”, 人工
知能学会 知識流通ネットワーク研究会, 2016
– 櫨山淳雄, 宮原光, 田中昂文, 橋浦弘明, 鷲崎弘宜, 吉岡信和, 海谷治彦, 大久保隆夫, ソフトウェアセキ
ュリティ知識ベースを活用したセキュリティ要求分析からセキュリティ 設計を支援するシステムの提案, 情
報処理学会第79回全国大会, 2017年3月.
– 田中昂文, 櫨山淳雄, 鷲崎弘宜, 吉岡信和, “セキュリティ知識ベースと事例ベースを活用したセキュリテ
ィ要求分析・設計支援システムの提案”, 2017年電子情報通信学会総合大会
31