cap03-resumo [modo de compatibilidade] · sistemas críticos resumo do cap.3 por rossana m. c....
TRANSCRIPT
Objetivos
• Explicar o que significa um sistema crítico, e onde a falha de sistema pode ter conseqüência severa humana ou econômica.
• Explicar quatro dimensões de confiança: disponibilidade, confiabilidade, segurança e
© 2007 by Pearson Education
disponibilidade, confiabilidade, segurança e proteção.
• Explicar que, para atingir confiança, você precisa evitar equívocos, detectar e remover erros e limitar danos causados pela falha.
Tópicos abordados
• Sistema crítico de segurança simples• Confiança no sistema• Disponibilidade e confiabilidade
© 2007 by Pearson Education
• Segurança• Proteção
Sistemas Críticos• Sistemas críticos de segurança
– A falha pode resultar em perda de vida, prejuízo ou dano para o ambiente;
– Sistema de proteção de planta química.
• Sistemas críticos de missão
© 2007 by Pearson Education
– A Falha pode resultar na deficiência de alguma atividade dirigida a metas;
– Sistema de navegação de nave espacial.
• Sistemas críticos de negócios– A falha pode resultar em altas perdas econômicas;– Sistema de contas de cliente em um banco.
Confiança no sistema
• Para sistemas críticos é, em geral, o caso em que a propriedade de sistema mais importante é a confiança.
• A confiança de um sistema reflete o grau de confiança do usuário nesse sistema, bem como a extensão de confiança do usuário que o operará conforme suas
© 2007 by Pearson Education
confiança do usuário que o operará conforme suas expectativas e que não ‘falhará’ durante o uso normal.
• Uutilidade e confiança não são a mesma coisa. Um sistema não tem de ser confiável para ser útil.
A importância da confiança
• Sistemas que não são confiáveis, inseguros ou desprotegidos, podem ser rejeitados pelos seus usuários.
• Os custos com falha de sistema podem ser
© 2007 by Pearson Education
• Os custos com falha de sistema podem ser muito altos.
• Sistemas não confiáveis podem causar perda de informação e, conseqüentemente, um alto custo de recuperação.
Métodos de desenvolvimento para sistemas críticos
• Os custos com falha de sistema crítico são tão altos que os métodos de desenvolvimento podem ser usados, embora não sejam eficazes em termos de custo para outros tipos de sistema.
© 2007 by Pearson Education
sistema.• Exemplos de métodos de desenvolvimento
– Métodos formais de desenvolvimento de software– Análise estática– Garantia de qualidade externa
Uma bomba de insulina controlada por software
• Usada por diabéticos para simular a função do pâncreas, que produz insulina, um hormônio essencial com a função de metabolizar o açúcar do sangue.
© 2007 by Pearson Education
metabolizar o açúcar do sangue.• Mede a glicose do sangue (açúcar)
usando um micro sensor e calcula a dose de insulina necessária para metabolizar a glicose.
Requisitos de confiança
• O sistema deverá estar disponível para liberar insulina quando requisitado.
• O sistema apresentará confiabilidade e liberará a quantidade correta de insulina
© 2007 by Pearson Education
liberará a quantidade correta de insulina para neutralizar o nível corrente de açúcar no sangue.
• O requisito essencial de segurança é que doses excessivas de insulina nunca devem ser liberadas, já que isso é, potencialmente, uma ameaça de vida.
Confiança
• A confiança em um sistema equivale ao seu merecimento de confiança.
• Um sistema confiável é aquele em que os usuários depositam sua confiança.
© 2007 by Pearson Education
usuários depositam sua confiança.• As principais dimensões de confiança são:
– Disponibilidade;– Confiabilidade;– Segurança;– Proteção.
Outras propriedades de confiança
• Facilidade de reparo– Reflete a amplitude em que o sistema pode ser reparado
no caso de uma eventual falha;
• Facilidade de manutenção– Reflete a amplitude em que o sistema pode ser adaptado
© 2007 by Pearson Education
– Reflete a amplitude em que o sistema pode ser adaptado para novos requisitos;
• Capacidade de sobrevivência– Reflete a amplitude na qual o sistema pode fornecer
serviços quando está sob ataque hostil;
• Tolerância a erros– Reflete a amplitude na qual os erros de entrada de usuário
podem ser evitados e tolerados.
Disponibilidade e confiabilidade
• Confiabilidade– Probabilidade de operação de sistema livre de
falha durante um período especificado, em um dado ambiente para um objetivo específico.
• Disponibilidade
© 2007 by Pearson Education
• Disponibilidade– Probabilidade que um sistema, em um
determinado instante, estará operacional e será capaz de fornecer os serviços requisitados.
• Ambos os atributos podem ser expressos quantitativamente.
Disponibilidade e confiabilidade
• Algumas vezes é possível incluir a disponibilidade de sistema sob a confiabilidade de sistema– Obviamente, se um sistema está indisponível, não está
fornecendo os serviços de sistema especificados.
• Contudo, é possível haver sistemas com baixa
© 2007 by Pearson Education
• Contudo, é possível haver sistemas com baixa confiabilidade disponíveis. Contanto que as falhas de sistema sejam rapidamente reparadas e não causem danos aos dados, a baixa confiabilidade talvez não seja um problema.
• A disponibilidade leva em conta o tempo de reparo.
Defeitos e falhas
• Falhas são, em geral, resultado de erros derivados de defeitos no sistema.
• No entanto, os defeitos não resultam necessariamente em erros no sistema– O estado defeituoso do sistema pode ser transitório, e
© 2007 by Pearson Education
– O estado defeituoso do sistema pode ser transitório, e ‘corrigido’ antes do aparecimento de erros.
• Os erros não conduzem, necessariamente, a falhas de sistema– O erro pode ser corrigido por detecção de erros built-in e
pela recuperação– A falha pode estar protegida pelas facilidades da proteção
built-in. Elas podem, por exemplo, proteger os recursos de sistema contra eventuais erros.
Segurança
• Segurança é uma propriedade do sistema que reflete a habilidade do sistema para operar, normalmente ou não, sem perigo de causar prejuízo ou morte a pessoas e sem danos para o ambiente do sistema.
• É cada vez mais importante considerar a segurança do software à medida que mais e mais sistemas incorporam sistemas de controle baseados em software.
© 2007 by Pearson Education
software à medida que mais e mais sistemas incorporam sistemas de controle baseados em software.
• Requisitos de segurança são requisitos exclusivos, isto é, excluem situações indesejáveis ao invés de especificar serviços de sistema requisitados.
• Sistemas críticos primários de segurança– Sistemas de software embutidos cuja falha pode causar a
falha do hardware associado e ameaçar diretamente as pessoas.
• Sistemas críticos secundários de segurança
Aspectos críticos de segurança
© 2007 by Pearson Education
• Sistemas críticos secundários de segurança– Sistemas cuja falha resulta em defeitos em outros
sistemas que podem ameaçar as pessoas.
• A discussão aqui enfoca sistemas críticos primários de segurança– Sistemas críticos secundários de segurança podem ser
considerados somente sobre uma base única.
• Segurança e confiabilidade estão relacionadas, mas são distintas– Em geral, confiabilidade e disponibilidade são condições
necessárias, porém, não suficientes para a segurança de sistemas.
Segurança e confiabilidade
© 2007 by Pearson Education
• A confiabilidade está relacionada à conformidade com uma dada especificação e com o fornecimento de serviço.
• A segurança está relacionada à garantia de que sistemas não podem causar danos, independente de estarem ou não de acordo com sua especificação.
• Erros de especificação– Se a especificação de sistema está incorreta, o sistema
pode se comportar conforme especificado e, no entanto, causar acidentes.
• Falhas de hardware gerando entradas
Sistemas confiáveis inseguros
© 2007 by Pearson Education
• Falhas de hardware gerando entradas espúrias– Difíceis de prever na especificação.
• Comandos sensíveis ao contexto, isto é, emitindo um comando certo no momento errado– Em geral, é o resultado de um erro de operador.
Proteção
• A proteção é uma propriedade que reflete a habilidade do sistema de se proteger de um ataque externo acidental ou deliberado.
• A proteção está se tornando cada vez mais
© 2007 by Pearson Education
• A proteção está se tornando cada vez mais importante à medida que os sistemas são colocados em rede e, desse modo, o acesso externo ao sistema por meio da Internet é possível.
• Proteção é um pré-requisito essencial para disponibilidade, confiabilidade e segurança.
Proteção fundamental
• Se um sistema opera em rede e é inseguro, então, as declarações sobre sua confiabilidade e segurança não são confiáveis.
• Essas declarações dependem da execução do
© 2007 by Pearson Education
• Essas declarações dependem da execução do sistema e de que o sistema desenvolvido seja o mesmo. No entanto, uma intrusão pode mudar a execução do sistema e/ou seus dados.
• Portanto, a confiabilidade e a garantia de segurança não são mais válidas.
Danos de falta de proteção
• Recusa de serviço– O sistema é forçado para um estado em que serviços
normais tornam-se indisponíveis, ou então, a provisão de serviços é significativamente degradada.
• Corrupção de programa ou dados
© 2007 by Pearson Education
• Corrupção de programa ou dados – Os programas ou dados de um sistema podem ser
alterados de uma maneira não autorizada.
• Abertura de informação confidencial – A informação gerenciada pelo sistema pode ser exposta a
pessoas que não estão autorizadas a ler ou usar essa informação.
Garantia de proteção
• Prevenção de vulnerabilidade – O sistema é projetado de maneira que as vulnerabilidades não
ocorram. Por exemplo, se não há uma conexão de rede externa, um ataque externo é impossível.
• Detecção e neutralização de ataque – O sistema é projetado de tal modo que ataques à
vulnerabilidades são detectados e neutralizados antes de
© 2007 by Pearson Education
vulnerabilidades são detectados e neutralizados antes de causarem uma exposição. Um exemplo disso são os verificadores de vírus, que encontram e removem os vírus antes de infectarem um sistema.
• Limitação de exposição – O sistema é projetado de tal modo que as conseqüências
adversas de um ataque bem sucedido sejam minimizadas. Por exemplo, uma política de backup permite que informações danificadas sejam restauradas.
Pontos-chave• Um sistema crítico é um sistema onde a falha pode levar a
perdas econômicas significativas, danos físicos ou ameaças à vida humana.
• A confiança de um sistema reflete a confiança do usuário em relação ao sistema.
• A disponibilidade de um sistema é a probabilidade de ele ser capaz de fornecer serviços quando requisitado.
© 2007 by Pearson Education
capaz de fornecer serviços quando requisitado. • A confiabilidade de um sistema é a probabilidade de seus
serviços serem fornecidos conforme especificados.• Confiabilidade e disponibilidade são, em geral, consideradas
condições necessárias, mas não suficientes para a segurança e proteção.
Pontos-chave
• Confiabilidade está relacionada à probabilidade de um erro ocorrer durante o uso operacional. Um sistema com defeitos conhecidos pode ser considerado confiável.
• A segurança é um atributo de sistema que reflete a habilidade de o sistema operar, normalmente ou não,
© 2007 by Pearson Education
habilidade de o sistema operar, normalmente ou não, sem ameaçar as pessoas ou o ambiente.
• Proteção é um atributo de sistema que reflete sua habilidade de se proteger de um ataque externo.
• Melhoria de confiança requer uma abordagem sóciotécnica para o projeto do sistema, levando em conta as pessoas, bem como o hardware e o software.