Segurança de Aplicações Rust: Guia Prático
300 páginas
Portuguese
PDF
4.5

Segurança de Aplicações Rust: Guia Prático

Segurança de Aplicações Rust: Guia Prático

Autor:

Ano:

Resumo:

O livro «Segurança de Aplicações Rust» é um guia prático para desenvolvedores que desejam dominar os princípios de programação segura em Rust. Rust é famoso por seu sistema de ownership e borrow checker, que já na fase de compilação previnem muitos erros típicos. No entanto, como a prática mostra, mesmo em Rust existem riscos: uso incorreto de unsafe, vazamentos de memória ao trabalhar com bibliotecas externas (FFI), problemas de concorrência e erros lógicos que o compilador não detecta. Este livro preenche a lacuna entre o código "seguro por padrão" e o código "realmente protegido".

Para quem é este livro?

  • Desenvolvedores Rust com nível básico (conhecimento de sintaxe e sistema de tipos).
  • Engenheiros de segurança migrando para Rust a partir de C/C++.
  • Arquitetos de software que precisam projetar sistemas confiáveis e resistentes a ataques.
  • Todos que desejam evitar erros típicos ao escrever código de produção em Rust.

O que você aprenderá com o livro?

  • Análise aprofundada do sistema de segurança do Rust: como funcionam o borrow checker, lifetimes, traits Send/Sync e por que eles não são uma panaceia.
  • Trabalhando com unsafe: quando usá-lo, como minimizar riscos, regras para escrever código unsafe seguro.
  • Auditoria e análise estática: ferramentas (Clippy, Miri, cargo-audit), busca de vulnerabilidades em dependências, análise de grafo de chamadas.
  • Testes de segurança: property-based testing (proptest), fuzzing (cargo-fuzz), escrita de testes unitários para trechos críticos.
  • Proteção contra ataques reais: estouro de buffer (sim, em Rust também é possível em unsafe), race conditions, bombas lógicas, ataques à memória via FFI.
  • Paralelismo e concorrência: como evitar deadlock e data race, uso de atômicos, canais e RwLock com foco em segurança.
  • Casos de projetos reais: análise de vulnerabilidades em crates Rust populares (por exemplo, vazamentos no processamento de strings, erros na implementação de protocolos).

Estrutura do livro:

O material está dividido em 12 capítulos: desde fundamentos (revisão do sistema de ownership) até tópicos avançados (verificação formal com Kani, criação de wrappers seguros para bibliotecas C). Cada capítulo contém exemplos de código, exercícios e checklists para verificação de segurança. No final, há um apêndice com modelos de relatórios de auditoria.

Por que este livro é importante?

Rust é ativamente usado em programação de sistemas, blockchain, servidores web e sistemas embarcados. Um erro de segurança pode custar milhões. Este livro ajudará você não apenas a escrever código, mas a pensar como um especialista em segurança, usando todos os recursos do Rust para proteger a aplicação.

Autor: Alexei Petrov — engenheiro de segurança com 10 anos de experiência, nos últimos 5 anos especializado em Rust. Participou da auditoria de código de vários projetos de blockchain e bibliotecas open-source.

Recommendations