Segurança em front-end Estratégias para mitigar ataques e proteger suas aplicações
Antonio Luis RossiSobre o livro
No mundo digital atual, onde a segurança é uma preocupação constante, compreender como proteger o front-end de uma aplicação é crucial para qualquer desenvolvedor. Este livro serve como um guia essencial para aprofundar conhecimentos em desenvolvimento seguro, abordando como identificar e mitigar vulnerabilidades específicas do front-end.
À medida que a tecnologia avança e os ataques cibernéticos se tornam mais sofisticados, proteger os dados dos usuários e garantir a robustez das aplicações torna-se ainda mais vital. Profissionais que dominam práticas de segurança no front-end defendem seus sistemas contra invasões e vazamentos de dados e ganham uma vantagem competitiva significativa no mercado de trabalho. Além disso, com o aumento dos requisitos de conformidade e regulamentação, como a LGPD, a segurança tornou-se uma competência indispensável.
Como o livro está organizado
Este livro foi cuidadosamente estruturado para guiá-lo(a) através de fundamentos básicos e técnicas avançadas de segurança no desenvolvimento front-end.
Começaremos explorando os princípios fundamentais e a importância da segurança, com uma ênfase especial nos cinco pilares que sustentam a segurança de aplicações. À medida que avançamos, mergulharemos em ataques comuns como DDoS, Brute Force, XSS, CSRF e Clickjacking e muito mais. Cada um desses tópicos será analisado com exemplos reais e métodos de mitigação que permitirão entender e prevenir esses ataques com eficácia.
Prosseguiremos para uma discussão sobre proteções avançadas, onde abordaremos políticas de segurança essenciais, como CSP e SRI, além de estratégias para garantir o armazenamento seguro de tokens dos usuários. A análise de vulnerabilidades também será um foco importante, oferecendo uma visão detalhada de ferramentas e técnicas para a análise de código e o escaneamento de dependências, ajudando a identificar e corrigir falhas antes que possam ser exploradas.
Em seguida, exploraremos aspectos legais e de conformidade, com uma visão aprofundada sobre a LGPD e como garantir que suas aplicações estejam em plena conformidade com as normas de proteção de dados. O livro culminará com um capítulo bônus, cuja temática é cuidadosamente guardada em segredo para despertar sua curiosidade. Este capítulo finaliza com práticas que não só melhoram a segurança, mas também otimizam o desempenho da aplicação, assegurando que a proteção não comprometa a eficiência.
Cada seção é enriquecida com exemplos práticos, casos de estudo, tanto reais quanto fictícios, e exercícios que consolidam o conhecimento adquirido. Ao final de cada capítulo, as conclusões sumarizam as lições principais e oferecem uma visão geral das melhores práticas, preparando você para aplicar o que aprendeu de maneira eficaz.
Para quem é o livro
Este livro é direcionado a desenvolvedores front-end de todos os níveis. Se você é iniciante, encontrará uma introdução acessível aos conceitos básicos de segurança. Para os desenvolvedores mais experientes, o livro oferece insights profundos e práticas avançadas que poderão ser aplicadas diretamente em projetos reais. É útil tanto para quem está começando sua jornada em segurança quanto para quem busca aprofundar e atualizar seus conhecimentos na área.
Se você já possui uma base sólida em desenvolvimento web e deseja expandir suas habilidades para incluir práticas robustas de segurança, este livro é para você. Não é necessário um conhecimento prévio extenso em segurança, mas é vantajoso ter familiaridade com conceitos básicos de desenvolvimento web e programação.
Além disso, se o compromisso em proteger seus sistemas, manter a confiança dos usuários e proporcionar experiências seguras é importante para você, este livro foi elaborado sob medida para atender às suas necessidades. Parabenizo-o(a) pela decisão de investir na segurança de suas aplicações e enriquecer significativamente sua trajetória profissional. Ao mergulhar nas páginas deste livro, você está preparando para uma jornada emocionante em direção à construção de sistemas front-end mais seguros e robustos.
Ao final deste livro, você estará melhor preparado para enfrentar desafios de segurança no front-end, garantindo a integridade e a segurança das suas aplicações e dados dos usuários.
Sobre o autor
Antonio Luis Rossi, também conhecido apenas como Luis, é Bacharel em Ciência da Computação pela Universidade de Passo Fundo, com MBA em Segurança da Informação e Pós-graduação em Privacidade e Proteção de Dados Pessoais.
Sua trajetória profissional começou na HGV Sistemas, uma empresa local especializada no desenvolvimento de sistemas web para cooperativas de crédito. Em sua atuação na HGV, Luis Rossi trabalhou em mais de 20 projetos, com foco principal em sistemas de análise de crédito, onde a segurança do código era essencial para proteger dados sensíveis, um local onde pôde aprender e crescer significativamente como profissional, enfrentando desafios e lidando com sistemas legados enquanto buscava soluções inovadoras.
Atualmente, Luis Rossi é Líder Técnico na Odig, responsável pelo sistema CRM PipeRun, uma empresa dinâmica e inovadora que está a caminho de se tornar o maior CRM do Brasil. Além disso, ele é empreendedor e sócio de duas empresas voltadas para o desenvolvimento de SaaS escaláveis e seguros. Essas experiências têm proporcionado a Luis Rossi a oportunidade de explorar sua paixão por tecnologia e inovação em um ambiente prático e desafiador.
A paixão de Luis Rossi por programação começou aos 10 anos, quando jogava Dragon Ball Z RPG Online. O desejo de criar sua própria versão desse jogo, baseada no anime Zatch Bell, levou-o a pesquisar sobre como aprender a programar. Naquela época, com poucos recursos disponíveis, ele encontrou apenas uma apostila no site do UOL. Embora não tenha compreendido muito na época, essa experiência plantou a semente para seu futuro na programação.
Anos depois, seu primeiro contato real com a programação foi ao criar um blog no Blogspot usando HTML, CSS e JavaScript. Nos próximos anos, Luis Rossi migrou seus sites para WordPress, que logo foi deixado de lado para realizar o estudo de diversas linguagens e frameworks, como PHP, JavaScript, Python, C, C++, C#, Spring, Laravel, CakePHP, Flutter, React.js e Vue.js. Sua busca incessante por conhecimento e a realização de inúmeros cursos são parte fundamental de sua jornada, refletindo sua paixão por aprender e evoluir na área de tecnologia.
Luis Rossi pode ser encontrado no LinkedIn em https://www.linkedin.com/in/antonio-luis-rossi/, em seu site pessoal https://luisrossi.com.br/ ou no GitHub https://github.com/luisrossi.
Sumário
- 1 Introdução
- 2 Fundamentos de segurança no desenvolvimento front-end
- 2.1 Importância da segurança no desenvolvimento front-end
- 2.2 Cultura de segurança e conscientização
- 2.3 Os 5 pilares da segurança de aplicações
- 2.4 Caso de uso: Os 5 pilares na prática
- 2.5 Conclusão
- 3 Ataques de negação de serviço
- 3.1 Conhecendo e entendendo o funcionamento de um ataque de negação de serviço
- 3.2 Estudo de caso de ataque DDoS de 3,8 Tbps
- 3.3 Como prevenir e mitigar ataques de negação de serviço no front-end
- 3.4 Como combater requisições em massa no front-end
- 3.5 Conclusão
- 4 Ataques de força bruta
- 4.1 Conhecendo e entendendo o funcionamento de um ataque de força bruta
- 4.2 Como prevenir e mitigar ataques de força bruta no front-end
- 4.3 Conclusão
- 5 Cross-Site Scripting (XSS)
- 5.1 Conhecendo e entendendo o funcionamento do XSS
- 5.2 XSS armazenado
- 5.3 XSS refletido
- 5.4 XSS baseado em DOM
- 5.5 Casos reais de ataques XSS
- 5.6 Conclusão
- 6 Cross-Site Request Forgery (CSRF)
- 6.1 Conhecendo e entendendo o funcionamento do CSRF
- 6.2 Melhores práticas no desenvolvimento front-end para prevenir CSRF
- 6.3 Como implementar proteções contra CSRF em frameworks
- 6.4 Eduque as pessoas sobre os riscos de ataques de CSRF
- 6.5 Conclusão
- 7 Clickjacking
- 7.1 Conhecendo e entendendo o funcionamento do clickjacking
- 7.2 Prevenção contra clickjacking
- 7.3 Mitigação de ataques clickjacking
- 7.4 Conclusão
- 8 Phishing e o fator humano por detrás da máquina
- 8.1 Conhecendo e entendendo o funcionamento do phishing
- 8.2 Tipos de phishing
- 8.3 Simulações de phishing
- 8.4 Conclusão
- 9 Content Security Policy (CSP) e a prevenção
- 9.1 Diretivas do Content Security Policy
- 9.2 Verificação da Content Security Policy (CSP) com ferramentas on-line
- 9.3 Conclusão
- 10 Subresource Integrity (SRI) — Arquivos externos íntegros
- 10.1 Conhecendo e entendendo o funcionamento do Subresource Integrity
- 10.2 Funcionamento do SRI
- 10.3 Como implementar o SRI
- 10.4 Como gerar hashes criptográficos para recursos
- 10.5 Limitações do SRI
- 10.6 Conclusão
- 11 Armazenamento de tokens dos usuários com segurança
- 11.1 Fundamentos da segurança no armazenamento de dados dos usuários
- 11.2 Principais soluções de armazenamento
- 11.3 Session Storage
- 11.4 Local Storage
- 11.5 IndexedDB
- 11.6 Cookies
- 11.7 E agora? Qual a melhor opção para armazenar tokens do usuário?
- 12 Análise de vulnerabilidades
- 12.1 Ferramentas de análise estática de código (SAST)
- 12.2 Como essas ferramentas podem identificar padrões suspeitos no código
- 12.3 Escaneamento de dependências
- 12.4 Identificando e corrigindo vulnerabilidades encontradas
- 12.5 Estudo de caso
- 12.6 Conclusão
- 13 Despertar para a realidade da LGPD: uma lição aprendida da forma difícil
- 13.1 Entendendo a LGPD e sua relevância no desenvolvimento front-end
- 13.2 Fundamentos essenciais da LGPD
- 13.3 Coleta de dados no front-end: explorando técnicas e garantindo consentimento
- 13.4 Notificação de violações de dados e desenvolvimento de interfaces transparentes
- 13.5 Eliminando fake news
- 13.6 LGPD na atualidade
- 13.7 Conclusão
- 14 Bônus — melhorando o desempenho da aplicação
- 14.1 Técnicas de compressão de imagens
- 14.2 Técnicas de otimização de resolução de imagens
- 14.3 Usando formatos de imagem apropriados
- 14.4 Carregamento preguiçoso (Lazy Loading) de imagens
- 14.5 Minificação de código
- 14.6 Remoção de código morto e não utilizado
- 15 Conclusão
Dados do produto
- Número de páginas:
- 267
- ISBN:
- 978-85-5519-391-0
- Data publicação:
- 12/2024