C++应用程序安全:保护代码免受漏洞和攻击
300 页
Chinese
PDF
4.5

C++应用程序安全:保护代码免受漏洞和攻击

C++应用程序安全:保护代码免受漏洞和攻击

作者:

年份:

简介:

在当今网络攻击日益复杂的世界中,软件安全已成为重中之重。C++ 语言尽管功能强大且性能卓越,但也赋予了开发者在内存和资源管理方面的巨大责任。本书 "C++ 应用程序安全" 是一本实用指南,它将帮助您将代码从潜在易受攻击的状态转变为可靠且受保护的状态。



这本书是关于什么的?

这不是又一本理论教科书。作者 Dmitry Voronov 将读者带入漏洞利用与防御方法的真实世界。您将了解到:

  • 黑客如何攻击 C++ 应用程序: 对经典和现代攻击的详细分析:缓冲区溢出(stack/buffer overflow)、堆损坏(heap corruption)、释放后使用(use-after-free)、整数溢出(integer overflow)以及针对虚函数表(vtable)的攻击。
  • 代码层面的防御方法: 使用智能指针(smart pointers)、RAII(资源获取即初始化)、STL 容器以及 C++11/14/17/20 的现代特性来自动管理内存并防止泄漏。
  • 安全设计: 最小权限原则、安全输入处理、在多线程应用程序中应对竞态条件(race conditions)和死锁(deadlocks)。
  • 分析工具: 配置和使用静态分析器(Clang Static Analyzer、PVS-Studio)、动态分析器(Valgrind、AddressSanitizer、UndefinedBehaviorSanitizer)以及模糊测试(libFuzzer、AFL)。
  • C++ 中的密码学: 使用 OpenSSL 的实践示例、静态数据和传输中数据的保护、密码哈希以及密钥的安全存储。


这本书适合谁?

本书适用于广泛的专业人士:

  • C++ 开发者(从 Junior 到 Senior),希望编写更高质量、更安全的代码。
  • 软件架构师,在设计阶段做出关于系统安全性的决策。
  • 信息安全专家,希望了解底层语言中漏洞的内部工作原理。
  • 技术专业的学生,正在学习系统编程和安全。


阅读本书后您将学到什么?

学习完材料后,您将能够:

  • 识别并修复现有代码中严重危险的漏洞。
  • 从零开始设计符合安全要求的新模块。
  • 配置带有自动代码安全检查的 CI/CD 流水线。
  • 自信地使用现代 C++ 标准编写安全代码。
  • 理解安全分析器的报告并快速响应发现的问题。

本书包含大量实践示例、现成的代码片段以及审计检查清单。这是一本您会反复查阅的案头指南。

推荐