Índice

Prefácio

Introdução
  • Segurança informática e Internet
  • Software (in)seguro
  • Sobre o livro

Parte I - Panorâmica e Protecção

1. Segurança e Desenvolvimento de Software
  • 1.1 Conceitos básicos
  • 1.2 Desenvolvimento de software
  • 1.3 Princípios de projecto
2. Protecção em Sistemas Operativos
  • 2.1 Protecção de recursos
  • 2.2 Controlo de acesso

Parte II - Vulnerabilidades

3. Buffer Overflows
  • 3.1 Vulnerabilidades e sua prevenção
  • 3.2 Overflows na heap
  • 3.3 Overflows na pilha
  • 3.4 Buffer overflows avançados
  • 3.5 Vulnerabilidades de inteiros
4. Corridas
  • 4.1 Corridas e atomicidade
  • 4.2 TOCTOU
  • 4.3 Ficheiros temporários
  • 4.4 Concorrência e funções reentrantes
5. Validação de Input
  • 5.1 Confiança, confiabilidade e input
  • 5.2 Metadados e metacaracteres
  • 5.3 Vulnerabilidades de string de formato
6. Aplicações Web
  • 6.1 Da World Wide Web às aplicações web
  • 6.2 Top10 de vulnerabilidades
  • 6.3 Injecção
  • 6.4 Cross Site Scripting
  • 6.5 Autenticação e gestão de sessões
  • 6.6 Referência directa a objectos
  • 6.7 Cross Site Request Forgery
  • 6.8 Configuração insegura
  • 6.9 Armazenamento criptográfico inseguro
  • 6.10 Falha na restrição de acesso a URLs.
  • 6.11 Comunicação insegura
  • 6.12 Redireccionamentos não validados
7 Bases de Dados
  • 7.1 Bases de dados e SQL
  • 7.2 Injecção de SQL
  • 7.3 Técnicas de injecção de SQL
  • 7.4 Outras vulnerabilidades
8. Cópia e Modificação de Software
  • 8.1 Cópia ilegal de software
  • 8.2 Engenharia reversa
  • 8.3 Fraude em aplicações em rede

III Técnicas e Ferramentas

9. Auditoria de Software
  • 9.1 Modelação de ataques
  • 9.2 Revisão manual de código
10. Teste de Software e Injecção de Ataques
  • 10.1 Teste de software e segurança
  • 10.2 Injecção de ataques
  • 10.3 Fuzzers
  • 10.4 Varredores de vulnerabilidades
  • 10.5 Proxies
11 Análise Estática de Código
  • 11.1 Análise estática básica
  • 11.2 Análise semântica
  • 11.3 Funcionamento das ferramentas
  • 11.4 Comentários finais
12. Protecção Dinâmica
  • 12.1 Detecção com canários
  • 12.2 Pilha e heap não executáveis
  • 12.3 Aleatorização e ofuscamento
  • 12.4 Verificação de integridade
  • 12.5 Filtragem
13. Validação e Codificação
  • 13.1 Expressões regulares
  • 13.2 Validação
  • 13.3 Codificação
14 Segurança na Linguagem de Programação
  • 14.1 Objectivos e arquitectura
  • 14.2 Sandboxes
  • 14.3 Segurança das convenções da linguagem

IV - Tópicos Avançados

15. Virtualização e Segurança
  • 15.1 Conceitos básicos e história
  • 15.2 Concretização de VMMs
  • 15.3 Aplicações em segurança
  • 15.4 Vulnerabilidades da virtualização
16. Trusted Computing
  • 16.1 Hardware para segurança
  • 16.2 Trusted Platform Module
  • 16.3 Aplicações do TPM
  • 16.4 Futuro da trusted computing
17. Tolerância a Intrusões Distribuída
  • 17.1 Conceitos básicos de tolerância a intrusões
  • 17.2 Replicação: garantindo disponibilidade e integridade
  • 17.3 Fragmentação: garantindo disponibilidade, integridade e confidencialidade
  • 17.4 Recuperação proactiva
  • 17.5 Arquitecturas e sistemas
  • 17.6 Problemas abertos e o futuro
Conclusão
Referências Bibliográficas
Recursos na Web
Índice Remissivo

Sem comentários:

Enviar um comentário