Upload
internet
View
107
Download
0
Embed Size (px)
Citation preview
Uso de estratégias orientadas a metas para modelagem de requisitos de segurança.
Aluno: Herbet de Souza Cunha
Orientador: Julio Cesar Sampaio do Prado Leite
O problema
Modelagem de requisitos de segurança, especificamente confidencialidade e consistência de informações.
Processo original
Fluxograma de processo proposto em: [3] Liu, L.; Yu. E.; Mylopoulos, J. Security and Privacy Requirements Analysis within a Social Setting. Proceedings of the International Conference on Requirements Engineering (RE’03). Monterey, California, September 2003. Pags. 151-161
Processo Evoluído
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Fluxograma de processo evoluído a partir de: [3] Liu, L.; Yu. E.; Mylopoulos, J. Security and Privacy Requirements Analysis within a Social Setting. Proceedings of the International Conference on Requirements Engineering (RE’03). Monterey, California, September 2003. Pags. 151-161
Aplicação – Estudo de Caso
Expert Committee (EC) - sistema para suporte ao gerenciamento de submissões e revisões de artigos submetidos a uma conferência ou workshop.
Passo 1 – Identificação de atores
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 1 – Identificação de atores
Tabela #5.1 - Identificação de Atores – versão inicial
Ator Fonte Iteração
Chair Descrição do problema Primeira
Autor Descrição do problema Primeira
Revisor Descrição do problema Primeira
Membro do Comitê de Programa Descrição do problema Primeira
Coordenador Geral Descrição do problema Primeira
Passo 1 (segurança) – Identificação de atacantes
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 1 (segurança) – Identificação de atacantes
Tabela #5.2 - Identificação de Atacantes – versão inicial
Atacante Fonte Iteração
Atacante do Chair Identificação de atores Primeira
Atacante do Autor Identificação de atores Primeira
Atacante do Revisor Identificação de atores Primeira
Atacante do Membro do Comitê Identificação de atores Primeira
Atacante do Coordenador Geral Identificação de atores Primeira
Atacante Externo Primeira
Passo 2 – Identificação das dependências (entre atores)
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 2 – Identificação das dependências (entre atores)
Passo 3 – Definição de SDsituations
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 3 – Definição de SDsituations
Indicação dos Membros do Comitê de Programa (‘Committee Indication’)
Indicação dos Revisores (‘Reviewers Indication’)
Submissão de Artigo (‘Article Submission’) Aceitação de Proposta de Revisão (‘Proposal
Acceptance’) Revisão de Artigos (‘Article Reviews’) Resolução de Conflitos (‘Conflicts Solution’) Recepção das Versões Finais (‘Camera Ready
Reception’). Convite de Pesquisadores (‘Researchers
Invitation’)
Passo 4 – iterativo – identificação de novos atores
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 4 – iterativo – identificação de novos atores
Passo 3 – Definição de SDsituations
Passo 2 (segurança) – Análise de Vulnerabilidades
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 2 (segurança) – Análise de Vulnerabilidades
Tabela #5.5 - Identificação de vulnerabilidades
Elementos de dependência Tipo SDSituations Sensível à segurança?
Invitation resource RESEARCHERS INVITATION Não
Response of Invitation resource RESEARCHERS INVITATION Não
Event Dates resource RESEARCHERS INVITATION, COMMITTEE M. INDICATION,
REVIEWERS INDICATION,ARTICLE SUBMISSION,
CAMERA READY RECEPTION
Não
Article resource ARTICLE SUBMISSION, ARTICLES REVIEW,
Sim
Favorites Articles resource PROPOSAL ACCEPTANCE Não
Proposal of Review resource PROPOSAL ACCEPTANCE Não
Response of Proposal resource PROPOSAL ACCEPTANCE Não
Review Article task ARTICLES REVIEW Sim
Reviewed Article resource ARTICLES REVIEW,CAMERA READY RECEPTION,
CONFLICTS SOLUTION
Sim
Vote task CONFLICTS SOLUTION Sim
Result of Review resource ARTICLES REVIEW,CONFLICTS SOLUTION,
CAMERA READY RECEPTION,
Sim
Camera Ready resource CAMERA READY RECEPTION Sim
Passo 5 – Definição de Cenários
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 6 – Refinamento de Atores
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 6 – Refinamento de Atores (legítimos)
Passo 6 – Refinamento de Atores (atacantes)
Passo 7 – iterativo – refinamento de SDs
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 7 – iterativo – refinamento de SDs
Passo 8 – Identificação de metas e tarefas
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 8 – Identificação de metas e tarefas
Passo 8 – Identificação de metas e tarefas
Passo 3 (segurança) – Identificação de intenções maliciosas
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 3 (segurança) – Identificação de intenções maliciosas – atacantes internos
Passo 3 (segurança) – Identificação de intenções maliciosas – atacantes externos
Passo 10 – Definição de requisitos não-funcionais
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 10 – Definição de requisitos não-funcionais – tipos de segurança
Passo 10 – Definição de requisitos não-funcionais – tópicos de confidencialidade
Passo 10 – Definição de requisitos não-funcionais – tópicos de consistência
Passo 11 – iterativo – integração de NFRs
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 11 – iterativo – integração de NFRs
Passo 11 – iterativo – integração de NFRs
Passo 5 (segurança) – Análise de Medidas de Defesa
Refinamento de Atores
Identificação de atores
Identificação de metas e tarefas
Identificação das dependências (entre atores)
Identificação de atacantes
Identificação de intenções maliciosas
Identificação de medidasde ataque
Análise de vulnerabilidades
Análise de medidasde defesa
1
2
7
6
1
2
3
4
5
6
7
Definição deSDsituations
3
Definição de Cenários5
Definição de Requisitos Não-Funcionais (NFRs)
8
4
9
1011
Passo 5 (segurança) – Análise de Medidas de Defesa – Revisão de artigo
Passo 5 (segurança) – Análise de Medidas de Defesa – Revisão de artigo
Passo 5 (segurança) – Análise de Medidas de Defesa – Revisão de artigo
Passo 5 (segurança) – Análise de Medidas de Defesa – Votação fechada
Passo 5 (segurança) – Análise de Medidas de Defesa – Votação aberta
Bibliografia
[1] Yu, E. Modelling Strategic Relationships for Process Reengineering, PhD Thesis, Graduate Department of Computer Science, University of Toronto, Toronto, Canada, 1995, Pag. 124.
[2] Simon, H. Theories of Decision-Making in Economics and BehavioralScience. Herbert A. Simon. The American Economic Review, Vol. 49, No. 3, Pags. 253-283
[3] Liu, L.; Yu. E.; Mylopoulos, J. Security and Privacy Requirements Analysis within a Social Setting. Proceedings of the International Conference on Requirements Engineering (RE’03). Monterey, California, September 2003. Pags. 151-161.
[4] Oliveira, A.; Cysneiros, L. Defining Strategic Dependency Situations in Requirements Elicitation. Proceedings of IX Workshop on Requirements Engineering (WER’2006). Rio de Janeiro, Brasil, Julho 2006. Pags. 12-23
[5] Leite, J.; Hadad, G.; Doorn, J.; Kaplan, G. A Scenario Construction Process – RE Journal: Vol 5 N. 1, Springer-Verlag London Limited. 2000. Pags. 38-61
[6] Leite, J.; Franco, A.; Client A Strategy for Conceptual Model Acquisition. Proceedings of the Internaional Symposium on Requirements Engineering, IEEE Computer society Press, San Diego. 1993. Pags 243-246.
[7] Chung, L.; Nixon, B.; Yu, E.; Mylopoulos, J. Non-Functional Requirements in Software Engineering. Kluwer Academic Publishers. Boston/Dordrecht/London. 2000
[8] Cysneiros,L.M.; Leite, J.C.S.P; Neto, J.S.M. A Framework for Integrating Non-Functional Requirements into Conceptual Models. RE Journal: Vol 6 , N. 2, Springer-Verlag London Limited. 2001. Pags. 97-115.
[9] Manadhata, P.; Wing, J. M. Measuring a System’s Attack Surface. Technical Report CMUCS-04-102, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA. 2004
[10] van Lamsweerde, A. Elaborating security requirements by construction of intentional anti-models. Proceedings. 26th International Conference on Software Engineering, 2004. ICSE 2004. Pags. 148- 157.