网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 缓冲区溢出攻击--检测剖析与预防/安全技术经典译丛
分类 教育考试-考试-计算机类
作者 (美)福斯特
出版社 清华大学出版社
下载
简介
编辑推荐

对一些恶名昭彰的Intemet攻击(如SQL Slammer和Blaster蠕虫)的取证调查,显示了缓冲区溢出是高明的黑客进行攻击时选择的弱点。这些蠕虫会使Internet速度减慢甚至瘫痪,并且需要花费数十亿美元清除它们。目前,威力更强的、更阴险的威胁已经以“Custom exploits”的形式出现,即每一次攻击的exploit都是不同的,从而使exploit更难以发现和防范。这样既不容易记住其名称,也没有相关的媒体报道,但却会带来严重的灾难。

本书清楚地说明,防范无穷无尽的缓冲区溢出攻击变种的唯一方法是对所有的应用程序进行完善的设计、编码和测试。这本书是目前用于检测、剖析和防止缓冲区溢出攻击的唯一的专业书籍。

目录

第1部分 扩展缓冲区溢出

第1章 缓冲区溢出的基本概念

 1.1 简介

 1.2 软件安全危机

 l.3 缓冲区溢出的增加

 1.4 exploits与缓冲区溢出

 1.5 定义

 1.5.1 硬件

 1.5.2 软件

 1.5.3 安全

 1.6 小结

 1.7 快速解决方案

 1.8 网站链接

 1.9 邮件清单

 1.10 常见问题

第2章 理解shellcode

 2.1 简介

 2.2 shellcode概述

 2.3 空字节问题

 2.4 实现系统调用

 2.5 远程shellcode

 2.5.1 端口绑定shellcode

 2.5.2 套接字描述符重用shellcode

 2.6 本地shellcode

 2.6.1 execve shellcode

 2.6.2 setuid shellcode

 2.6.3 chroot shellcode

 2.7 小结

 2.8 快速解决方案

 2.9 网站链接

 2.10 邮件清单

 2.11 常见问题

第3章 编写shellcode

 3.1 简介

 3.2 shellcode示例

 3.2.1 write系统调用

 3.2.2 execve shellcode

 3.2.3 端口绑定shellcode

 3.2.4 反向连接shellcode

 3.2.5 套接口重用shellcode

 3.2.6 重用文件描述符

 3.2.7 shellcode编码

 3.3 重用程序变量

 3.3.1 公开的源程序

 3.3.2 关闭的源程序

 3.4 操作系统间的shellcode

 3.5 理解已有的shellcode

 3.6 小结

 3.7 快速解决方案

 3.8 网站链接

 3.9 邮件清单

 3.10 常见问题

第4章 Win32汇编语言

 4.1 简介

 4.2 应用程序的内存布置

 4.2.1 应用程序结构

 4.2.2 内存分配--堆栈

 4.2.3 内存分配--堆

 4.3 Windows汇编

 4.3.1 寄存器

 4.3.2 Hello World

 4.4 小结

 4.5 快速解决方法

 4.6 网站链接

 4.7 常见问题

案例分析1.1 FreeBSD NN Exploit代码

案例分析1.2 xlockmore用户提供的格式化字符串

案例分析1.3 使用Winsock的Frontpage的拒绝服务

案例分析1.4 FreeBSD上的cURL缓冲区溢出

第Ⅱ部分 缓冲区溢出解析

第5章 堆栈溢出

 5.1 简介

 5.2 Intel x86结构和机器语言基础

 5.2.1 寄存器

 5.2.2 堆栈和程序调用

 5.2.3 调用规则和堆栈结构

 5.2.4 进程内存布局

 5.3 堆栈溢出和它们的利用

 5.3.1 简单的溢出

 5.3.2 创建一个可利用的溢出的实例程序

 5.3.3 执行exploit

 5.4 什么是Off-bv-one溢出?

 5.5 寻找堆栈溢出的挑战

 5.5.1 词汇分析

 5.5.2 语义分析器

 5.5.3 应用程序保护

 5.5.4 ()penBSD 2.8 ftpd的off-by-one错误

 5.5.5 Apache htpasswd缓冲区溢出

 5.6 小结

 5.7 快速解决方案

 5.8 网站链接

 5.9 邮件清单

 5.10 常见问题

第6章 堆腐烂

 6.1 简介

 6.2 简单堆腐烂

 6.2.1 使用堆--malloc()、calloc()和realloc()

 6.2.2 简单的堆和BSS溢出

 6.2.3 腐烂c++中的函数指针

 6.3 高级堆腐烂—-Doug Lea maLLoc

 6.3.1 Doug Lea malloc概述

 6.3.2 内存组织--边界标志、箱(Bins)和场域(Arenas)

 6.3.3 free()算法

 6.3.4 伪数据块

 6.3.5 易受攻击程序示例

 6.3.6 利用frontlink()

 6.3.7 堆上的Off-bY-One和Off-bv-Five

 6.4 高级堆腐烂--System V malloc

 6.5 应用程序防御

 6.6 小结

 6.7 快速解决方案

 6.7.1 简单堆腐烂

 6.7.2 高级堆腐烂--Doug Lea malloc

 6.7.3 高级堆腐烂--System V malloe

 6.7.4 应用程序防御

 6.8 网站链接

 6.9 常见问题

第7章 可移植的网络编程

 7.1 简介

 7.2 什么是格式化字符串

 7.2.1 带有不定数量参数的C函数

 7.2.2 省略和va args

 7.2.3 格式化输出的函数

 7.3 使用格式化字符串

 7.3.1 printf()例子

 7.3.2 格式化符号和printf()参数

 7.3.3 格式标识符的类型

 7.4 误用格式化字符串

 7.4.1 对坏的格式化字符串进行操作

 7.4.2 拒绝服务

 7.4.3 读取存储器

 7.4.4 存储器写入

 7.5 利用格式化字符串缺陷的挑战

 7.5.1 寻找格式化字符串缺陷

 7.5.2 覆盖什么

 7.5.3 操作系统的差别

 7.5.4 利用不同系统的困难

 7.6 应用程序防御

 7.7 小结

 7.8 快速解决方案

 7.9 网站链接

 7.10 常见问题

第8章 Windows缓冲区溢出

 8.1 简介

 8.1.1 背景

 8.1.2 基本的堆栈溢出

 8.1.3 编写Windows shellcode

 8.1.4 克服特殊的字符(例如空字节)

 8.1.5 客户端服务器应用程序

 8.1.6 使用/误用结构化异常处理器

 8.2 小结

 8.3 问题快速解决方案

 8.4 网站链接

 8.5 常见问题

案例分析2.1 Linux中的cURL缓冲区溢出

案例分析2.2 异常客户端密钥远程缓冲区溢出漏洞

案例分析2.3 X11R6 4.2 XLOCALEDIR溢出

案例分析2.4 微软MDAC拒绝服务漏洞

案例分析2.5 本地UUX缓冲区在HPUX上溢出

第Ⅲ部分 查找缓冲区溢出

第9章 从源代码中找出缓冲区溢出

 9.1 简介

 9.2 源代码分析

 9.3 免费开放源代码工具

 9.3.1 Application Defence Snapshot

 9.3.2 RATS

 9.3.3 Flawfinder

 9.3.4 ITS4

 9.4 Application Defense--企业开发版

 9.5 Secure Software公司

 9.5.1 结构和部署

 9.5.2 缺陷知识库

 9.5.3 使用CodeAssure

 9.5.4 补救措施

 9.6 Ounce Labs公司

 9.6.1 Prexis的自动化分析科学

 9.6.2 Prexis结构

 9.6.3 Prexis的运用

 9.6.4 Prexis的缺陷评估

 9.7 FortifV Software公司

 9.7.1 Forty源代码分析工具

 9.7.2 使用源代码分析引擎

 9.7.3 核查工作台

 9.7.4 软件安全管理软件

 9.8 小结

 9.9 快速解决方案

 9.10 网站链接

 9.11 常见问题

案例分析3.1 InlineEgg Ⅰ

案例分析3.2 InlineEgg Ⅱ

案例分析3.3 Seti@Home Exploit代码

案例分析3.4 微软公司CodeBlue Exploit代码

附录A 完整的数据换算表

附录B 有用的系统调用函数

随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/3/31 13:57:30