Use o código e tenha 10% de desconto!

Segurança em aplicações Web

Rodrigo Ferreira

Introdução

Segurança é um tema muito importante. Construir uma aplicação Web segura é uma tarefa bem difícil hoje em dia, pois existem diversos tipos de ataques que podem ser realizados contra ela, sendo que novas vulnerabilidades e ataques vão surgindo com o passar do tempo.

Muitos ataques estão relacionados com vulnerabilidades presentes na infraestrutura da aplicação. É bem comum encontrarmos nosso ambiente de produção com softwares desatualizados, como por exemplo, o Sistema Operacional, o SGBD e o Servidor de Aplicações. Mas uma grande parte dos ataques ocorre por conta de vulnerabilidades presentes na própria aplicação, sendo responsabilidade dos desenvolvedores e arquitetos conhecer tais fraquezas e como fazer para evitá-las.

Neste livro, vou focar nos ataques relacionados com vulnerabilidades presentes na própria aplicação. Vou explicar de maneira detalhada como funcionam os ataques, como verificar se sua aplicação está vulnerável a eles, e como fazer para corrigir tais inseguranças. Falarei de ataques como: SQL Injection, Cross-Site Scripting (XSS), Cross-Site Request Forgery (CSRF), Session Hijacking, dentre outros.

Em cada capítulo, focarei em um tipo de ataque, explicando como funciona e exemplificando com códigos. Você verá como fazer para testar se sua aplicação está vulnerável a ele, e mostrarei como corrigir tal vulnerabilidade.

Público-alvo

O livro é indicado para desenvolvedores Web, independente da linguagem de programação utilizada, que tenham conhecimentos básicos em Banco de Dados, protocolo HTTP e nas linguagens SQL, HTML e JavaScript. 

No livro, usarei a linguagem Java, e eventualmente a linguagem PHP, para exemplificar as técnicas. Mas, conforme dito anteriormente, as técnicas e práticas que vou apresentar são independentes da linguagem de programação que você usa, então tentarei sempre citar as principais bibliotecas e frameworks que podem ser utilizados em outras linguagens de programação para a mesma situação.

 

Sumário

  • 1 O velho e conhecido SQL Injection
    • 1.1 A vulnerabilidade
    • 1.2 Como funciona o SQL Injection?
    • 1.3 Como proteger uma aplicação contra esse ataque?
    • 1.4 Conclusão
  • 2 Cross-Site Scripting is my hero!
    • 2.1 A vulnerabilidade
    • 2.2 Como funciona o XSS?
    • 2.3 Como proteger uma aplicação contra esse ataque?
    • 2.4 Conclusão
  • 3 Cross-Site Request Forgery
    • 3.1 A vulnerabilidade
    • 3.2 Como funciona o CSRF?
    • 3.3 Como proteger uma aplicação contra esse ataque?
    • 3.4 Conclusão
  • 4 Mass Assignment Attack
    • 4.1 A vulnerabilidade
    • 4.2 Como funciona o Mass Assignment Attack?
    • 4.3 Como proteger uma aplicação contra esse ataque?
    • 4.4 Conclusão
  • 5 Session Hijacking
    • 5.1 A vulnerabilidade
    • 5.2 Como funciona o Session Hijacking?
    • 5.3 Como proteger uma aplicação contra esse ataque?
    • 5.4 Conclusão
  • 6 Exposição de dados sensíveis
    • 6.1 A vulnerabilidade
    • 6.2 Como funciona essa vulnerabilidade?
    • 6.3 Como proteger uma aplicação contra essa vulnerabilidade?
    • 6.4 Conclusão
  • 7 Redirects não validados
    • 7.1 A vulnerabilidade
    • 7.2 Como funciona essa vulnerabilidade?
    • 7.3 Como proteger uma aplicação contra essa vulnerabilidade?
    • 7.4 Conclusão
  • 8 Outras vulnerabilidades
    • 8.1 Senhas armazenadas em plain text
    • 8.2 Aplicação utilizando usuário root do banco de dados
    • 8.3 Configurações default de ferramentas utilizadas
    • 8.4 Utilização de componentes vulneráveis
  • 9 Content Security Policy
    • 9.1 XSS de novo...
    • 9.2 Hackers ajudando na segurança de aplicações
    • 9.3 Mitigando ataques de XSS com a CSP
    • 9.4 Utilizando a CSP em uma aplicação Web
    • 9.5 Testando o funcionamento da CSP
    • 9.6 Suporte da CSP nos navegadores
    • 9.7 Conclusão
  • 10 Subresource Integrity
    • 10.1 Content Delivery Network (CDN)
    • 10.2 Os riscos de se utilizar uma CDN
    • 10.3 Como funciona o Subresource Integrity?
    • 10.4 Utilizando e testando a Subresource Integrity
    • 10.5 Suporte da Subresource Integrity nos navegadores
    • 10.6 Conclusão
  • 11 Conclusão
    • 11.1 Continuando os estudos

Dados do produto

Número de páginas:
143
ISBN:
978-85-5519-249-4
Data publicação:
02/2017

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter