灰帽黑客:正义黑客的道德规范、渗透测试、攻击方法和漏洞分析技术(第3版)

《灰帽黑客:正义黑客的道德规范、渗透测试、攻击方法和漏洞分析技术(第3版)》

基本信息

原书名:GrayHatHacking:TheEthicalHacker'sHandbook,ThirdEdition

作者:[美]ShonHarrisAllenHarper[作译者介绍]

译者:杨明军韩智文程文俊

丛书名:安全技术经典译丛

出版社:清华大学出版社

ISBN:9787302301509

上架时间:2012-10-17

出版日期:2012年11月

开本:16开

页码:1

版次:1-1

所属分类:计算机>安全>网络安全/防火墙/黑客

更多关于》》》《灰帽黑客:正义黑客的道德规范、渗透测试、攻击方法和漏洞分析技术(第3版)》

内容简介

书籍

计算机书籍

运用最新策略揭示当今最具破坏力的攻击

《灰帽黑客:正义黑客的道德规范、渗透测试、攻击方法和漏洞分析技术(第3版)》在上一版的基础上做了全面更新,新增了9章内容。本书内容丰富,讲解透彻,浓墨重彩地描述最新漏洞、修复方法以及合法的公开途径,详细介绍恶意软件分析、渗透测试、scada、voip和web安全等主题,分析黑客们如何定位系统、破坏保护方案、编写恶意代码以及利用windows和linux系统的缺陷。通过本书的学习,您将可以借助最新技术查找和修复安全缺陷,从而能够得心应手地阻止恶意网络攻击。

《灰帽黑客:正义黑客的道德规范、渗透测试、攻击方法和漏洞分析技术(第3版)》主要内容

使用backtrack和metasploit来模拟漏洞攻击

分析潜入、社交工程和内部攻击技术

模拟构建用来发起栈缓冲区溢出攻击的perl、python和ruby脚本

理解并阻止adobe、office和多媒体文件中的恶意内容

检测和阻止客户端、web服务器、voip和scada攻击

介绍针对windows和linux软件的逆向工程、模糊处理及反编译

讨论sql注入、跨站脚本和伪造攻击

使用蜜罐和沙箱技术来捕获恶意软件和加壳软件

目录

灰帽黑客:正义黑客的道德规范、渗透测试、攻击方法和漏洞分析技术(第3版)》

第ⅰ部分“合乎道德的揭秘行为”简介1

第1章正义黑客的道德规范3

1.1理解敌方策略的意义3

1.2认识安全领域的灰色区域7

1.3本书与正义黑客类图书的关系8

1.3.1漏洞评估8

1.3.2渗透测试9

1.4关于黑客类图书和课程的争议12

1.4.1工具的双重性13

1.4.2识别攻击14

1.4.3模拟攻击15

1.5攻击者最喜欢利用的漏洞15

第2章合乎道德的正常揭秘行为19

2.1各方看待问题的不同角度20

2.2cert目前采取的工作流程21

2.3完全揭秘策略—rainforestpuppypolicy23

2.4internet安全组织24

2.4.1发现漏洞25

2.4.2 通知 25

.2.4.3 验证 27

2.4.4解决29

2.4.5发布30

2.5争议仍将存在30

2.6案例分析34

2.6.1正当揭秘过程的优缺点35

2.6.2供应商更加关注38

2.7接下来应该做什么38

第ⅱ部分渗透测试及工具41

第3章社会工程攻击43

3.1社会工程攻击原理43

3.2实施社会工程攻击44

3.3渗透测试中常用到的攻击手段46

3.3.1好心人47

3.3.2会议室51

3.3.3加入公司53

3.4准备好进行面对面的攻击54

3.5防御社会工程攻击56

第4章潜入攻击57

4.1潜入攻击如此重要的原因57

4.2实施潜入攻击58

4.2.1侦察58

4.2.2思想准备60

4.3进入目标建筑物的常用方法60

4.3.1吸烟区入口61

4.3.2人工检查点62

4.3.3锁住的门64

4.3.4物理方式开锁66

4.3.5进入目标之后69

4.4防御潜入攻击69

第5章内部攻击71

5.1模拟内部攻击的重要性71

5.2实施内部攻击72

5.2.1工具和准备工作72

5.2.2了解情况72

5.2.3获得本地管理员权限73

5.2.4禁用防病毒软件76

5.2.5使用cain77

5.3防御内部攻击83

第6章使用backtracklinux发行85

6.1backtrack简介85

6.2将backtrack安装到dvd或优盘86

6.3直接在虚拟机中使用backtrackiso映像文件87

6.3.1使用virtualbox创建backtrack虚拟机88

6.3.2引导backtracklivedvd系统88

6.3.3探索backtrackx窗口环境89

6.3.4启动网络服务90

6.4永久性更改backtrack90

6.4.1将backtrack完整地安装在硬盘或者优盘中91

6.4.2新建一个包含永久性更改信息的iso文件92

6.4.3使用自定义文件自动保存和恢复更改94

6.5研究backtrack引导菜单95

6.6更新backtrack97

第7章使用metasploit99

7.1metasploit简介99

7.2获取metasploit99

7.3使用metasploit控制台加载攻击工具100

7.4使用metasploit攻击客户端漏洞105

7.5使用metasploitmeterpreter进行渗透测试107

7.5.1使用meterpreter进行键盘记录110

7.5.2使用meterpreter以不同的已登录用户身份运行代码110

7.5.3使用meterpreter的hashdump命令和metasploit的psexec命令以及共享口令登录112

7.6metasploit的自动化与脚本化113

7.7更进一步探讨metasploit115

第8章渗透测试管理117

8.1制定渗透测试计划117

8.1.1渗透测试的类型117

8.1.2渗透测试的范围118

8.1.3渗透测试的位置118

8.1.4渗透测试小组成员构成118

8.1.5方法和标准118

8.1.6渗透测试的各个阶段119

8.1.7渗透测试计划120

8.2签署渗透测试协议121

8.2.1工作声明121

8.2.2“保释信”121

8.3实施渗透测试122

8.3.1测试启动会议122

8.3.2渗透测试中的资源访问122

8.3.3测试预期值管理123

8.3.4测试问题管理123

8.3.5欲速则不达123

8.3.6外部和内部协同123

8.4在渗透测试中进行信息共享124

8.5生成渗透测试结果报告128

8.5.1报告格式128

8.5.2报告摘要128

第ⅲ部分漏洞攻击129

第9章编程技能131

9.1c编程语言131

9.1.1c语言基本结构131

9.1.2程序范例135

9.1.3使用gcc进行编译136

9.2计算机内存137

9.2.1随机存取存储器(ram)137

9.2.2字节序137

9.2.3内存分段138

9.2.4内存中的程序138

9.2.5缓冲区139

9.2.6内存中的字符串139

9.2.7指针139

9.2.8内存知识小结140

9.3intel处理器141

9.3.1寄存器141

9.4汇编语言基础142

9.4.1机器指令、汇编语言与c语言142

9.4.2at&t与nasm142

9.4.3寻址模式144

9.4.4汇编文件结构145

9.4.5汇编过程146

9.5使用gdb进行调试146

9.5.1gdb基础146

9.5.2使用gdb进行反汇编148

9.6python编程技能149

9.6.1获取python149

9.6.2python中的helloworld程序149

9.6.3python对象150

9.6.4字符串150

9.6.5数字151

9.6.6列表152

9.6.7字典153

9.6.8python文件操作154

9.6.9python套接字编程155

第10章基本的linux漏洞攻击157

10.1栈操作157

10.1.1函数调用过程158

10.2缓冲区溢出159

10.2.1meet.c溢出160

10.2.2缓冲区溢出的后果163

10.3本地缓冲区溢出漏洞攻击164

10.3.1漏洞攻击组成部分165

10.3.2在命令行上进行栈溢出漏洞攻击167

10.3.3使用通用漏洞攻击代码进行栈溢出漏洞攻击168

10.3.4对小缓冲区进行漏洞攻击170

10.4漏洞攻击开发过程173

10.4.1控制eip173

10.4.2确定偏移173

10.4.3确定攻击途径176

10.4.4构建漏洞攻击三明治176

10.4.5测试漏洞攻击177

第11章高级linux漏洞攻击179

11.1格式化字符串漏洞攻击179

11.1.1问题描述179

11.1.2从任意内存读取183

11.1.3写入任意内存184

11.1.4利用.dtors获得根特权级186

11.2内存保护机制189

11.2.1编译器改进190

11.2.2内核补丁和脚本193

11.2.3“返回到libc”漏洞攻击194

11.2.4综合比较202

第12章shellcode策略203

12.1用户空间shellcode203

12.1.1系统调用203

12.1.2基本shellcode204

12.1.3端口绑定shellcode205

12.1.4反向shellcode206

12.1.5查找套接字shellcode207

12.1.6命令执行代码208

12.1.7文件传输代码208

12.1.8多级shellcode209

12.1.9系统调用代理shellcode209

12.1.10进程注入shellcode210

12.2其他shellcode考虑因素211

12.2.1shellcode编码211

12.2.2自我破坏shellcode212

12.2.3反汇编shellcode213

12.3内核空间shellcode214

12.3.1内核空间考虑因素214

第13章编写linuxshellcode217

13.1基本的linuxshellcode217

13.1.1系统调用217

13.1.2使用c进行系统调用218

13.1.3使用汇编语言进行系统调用219

13.1.4系统调用exit219

13.1.5系统调用setreuid221

13.1.6利用execve实现创建shell的shellcode222

13.2实现端口绑定shellcode226

13.2.1linux套接字编程226

13.2.2采用汇编语言编程建立一个套接字228

13.2.3测试shellcode231

13.3实现反向连接shellcode234

13.3.1反向连接c语言编程234

13.3.2反向连接汇编程序235

13.4shellcode编码237

13.4.1简单的xor编码237

13.4.2编码后shellcode的结构238

13.4.3jmp/callxor解码器示例238

13.4.4fnstenvxor示例239

13.4.5将代码组合起来241

13.5利用metasploit自动生成shellcode244

13.5.1利用metasploit生成shellcode244

13.5.2利用metasploit对shellcode进行编码245

第14章windows漏洞攻击247

14.1windows程序编译与调试247

14.1.1在windows上进行编译247

14.1.2在windows上用ollydbg进行调试249

14.2编写windows漏洞攻击程序253

14.2.1漏洞攻击程序开发过程回顾254

14.2.2prosshd服务器254

14.2.3控制eip255

14.2.4确定偏移257

14.2.5确定攻击途径258

14.2.6构建攻击三明治261

14.2.7根据需要调试漏洞攻击程序262

14.3理解seh264

14.3.1seh的实现264

14.4理解windows内存保护(xpsp3、vista、7和server2008)266

14.4.1基于栈的缓冲区溢出检测(/gs)266

14.4.2safeseh268

14.4.3sehop268

14.4.4堆保护268

14.4.5dep268

14.4.6aslr269

14.5绕开windows内存保护270

14.5.1绕开/gs270

14.5.2绕开safeseh271

14.5.3绕开aslr272

14.2.4绕开dep272

14.5.5绕开sehop278

14.5.6内存保护绕开方法小结285

第15章content-type攻击原理与检测287

15.1content-type攻击原理287

15.2现今可被攻击的文件格式289

15.3pdf文件格式简介290

15.4恶意pdf漏洞攻击分析293

15.5恶意pdf文件检测工具296

15.5.1pdfid296

15.5.2pdf-parser.py300

15.6content-type攻击防御测试工具303

15.7content-type攻击防御方法304

15.7.1安装所有的安全更新304

15.7.2在adobereader中禁用javascript305

15.7.3针对微软office应用程序和adobereader启用dep305

第16章web应用程序安全漏洞307

16.1最流行的web应用程序安全漏洞概述307

16.1.1注入漏洞307

16.1.2跨站脚本漏洞308

16.1.3owasp十大隐患中的其他内容308

16.2sql注入漏洞攻击308

16.2.1sql数据库与语句310

16.2.2测试web应用程序,搜寻sql注入漏洞312

16.3跨站脚本漏洞攻击317

16.3.1“脚本”的含义317

16.3.2跨站脚本的含义318

第17章oip攻击323

17.1voip的含义323

17.2voip使用的协议324

17.2.1sip324

17.2.2megacoh.248325

17.2.3h.323325

17.2.4tls和dtls326

17.2.5srtp327

17.2.6zrtp327

17.3voip攻击类型327

17.3.1枚举328

17.3.2sip口令破解328

17.3.3

与分组捕获 329

17.3.4拒绝服务329

17.4如何防范voip攻击335

第18章scada攻击337

18.1scada的含义337

18.2scada使用的协议338

18.2.1opc338

18.2.2iccp338

18.2.3modbus338

18.2.4dnp3339

18.3scadafuzzing测试340

18.3.1使用autodafé进行scadafuzzing测试340

18.3.2使用tftpdaemonfuzzer进行scadafuzzing测试346

18.4stuxnet恶意软件(网络恐怖主义新浪潮)349

18.5防范scada攻击349

第ⅳ部分漏洞分析351

第19章被动分析353

19.1道德的逆向工程353

19.2使用逆向工程的原因354

19.2.1逆向工程注意事项354

19.3源代码分析355

19.3.1源代码审计工具355

19.3.2源代码审计工具的实用性357

19.3.3手工源代码审计359

19.3.4自动化源代码分析363

19.4二进制分析365

19.4.1二进制代码的手工审计365

19.4.2自动化的二进制分析工具376

第20章使用idapro进行高级静态分析381

20.1静态分析难点381

20.1.1剥离的二进制文件381

20.1.2静态链接程序和flair383

20.1.3数据结构分析389

20.1.4已编译的c++代码的诡异之处393

20.2扩展idapro396

20.2.1idc脚本编程396

20.2.2idapro插件模块及idaprosdk398

20.2.3构建idapro插件400

20.2.4idapro加载器及处理器模块402

第21章高级逆向工程技术405

21.1软件攻击的目的405

21.2软件开发过程概述406

21.3检测工具407

21.3.1调试器407

21.3.2代码覆盖分析工具409

21.3.3统计分析工具410

21.3.4流程分析工具410

21.3.5内存使用监视工具412

21.4模糊测试416

21.5定制的模糊测试工具和技术417

21.5.1一个简单的url模糊测试工具417

21.5.2对未知协议进行模糊测试420

21.5.3spike421

21.5.4spike静态内容原语421

21.5.5spikeproxy424

21.5.6sharefuzz424

第22章客户端浏览器的漏洞攻击427

22.1客户端软件漏洞的重要性427

22.1.1客户端漏洞可以规避防火墙保护427

22.1.2客户端应用程序经常在管理权限下运行428

22.1.3客户端漏洞易于针对特定人群或机构目标428

22.2internetexplorer的安全概念429

22.2.1activex控件429

22.2.2internetexplorer安全区域430

22.3客户端漏洞攻击的历史与发展趋势431

22.3.1客户端漏洞的流行431

22.3.2历史上针对客户端攻击的著名漏洞431

22.4挖掘基于浏览器的新漏洞437

22.4.1mangleme437

22.4.2mozilla安全团队的模糊测试工具440

22.4.3axenum441

22.4.4axfuzz446

22.4.5axman446

22.5可利用的堆喷射技术451

22.5.1internetexploiter451

22.6防范客户端漏洞攻击452

22.6.1同步更新安全补丁452

22.6.2获取最新信息453

22.6.3在缩减权限下运行internet应用453

第23章攻击windows访问控制模型455

23.1攻击访问控制机制的理由455

23.1.1多数人不理解访问控制机制455

23.1.2访问控制漏洞易于攻击456

23.1.3访问控制漏洞数量巨大456

23.2windows访问控制的工作机制456

23.2.1安全标识符456

23.2.2访问令牌457

23.2.3安全描述符460

23.2.4访问检查463

23.3访问控制配置分析工具465

23.3.1转储进程令牌466

23.3.2转储安全描述符468

23.4特殊sid、特殊访问权限和“禁止访问”问题469

23.4.1特殊的sid469

23.4.2特殊访问权限471

23.4.3“禁止访问”的原理472

23.5访问控制引起的提权漏洞477

23.6各种对象类型的攻击模式478

23.6.1服务攻击478

23.6.2windows注册表dacl攻击484

23.6.3目录dacl攻击488

23.6.4文件dacl攻击493

23.7其他对象类型的枚举方法497

23.7.1共享内存段497

23.7.2命名管道498

23.7.3进程499

23.7.4其他已命名的内核对象(信号量、互斥锁、事件、设备)500

第24章智能模糊测试框架sulley503

24.1协议分析503

24.2sulley模糊测试框架504

24.2.1安装sulley505

24.2.2强大的模糊测试工具505

24.2.3块结构507

24.2.4监视进程中的错误511

24.2.5监视网络流量512

24.2.6控制vmware512

24.2.7综述513

24.2.8崩溃事件的事后分析515

24.2.9网络使用分析516

24.2.10进一步研究517

第25章漏洞的可利用性和漏洞攻击程序519

25.1漏洞的可利用性519

25.1.1通过调试分析可利用性520

25.1.2初始分析520

25.2理解漏洞攻击问题524

25.2.1先决条件和后置条件524

25.2.2可重复性525

25.3构造漏洞攻击程序有效载荷的有关考虑533

25.3.1漏洞攻击程序有效载荷的协议元素533

25.3.2缓冲区的方向534

25.3.3自毁式shellcode534

25.4对问题进行归档535

25.4.1背景知识535

25.4.2环境536

25.4.3研究结果536

第26章关闭漏洞:缓解问题537

26.1各种缓解方案537

26.1.1端口碰撞技术537

26.1.2迁移538

26.2打补丁539

26.2.1对源代码打补丁的注意事项539

26.2.2给二进制程序打补丁的注意事项541

26.2.3二进制变异545

26.2.4第三方打补丁方案549

第ⅴ部分恶意软件分析551

第27章收集恶意软件和初步分析553

27.1恶意软件553

27.1.1恶意软件类型553

27.1.2恶意软件的防护技术554

27.2蜜网技术的最新发展趋势555

27.2.1蜜罐555

27.2.2蜜网555

27.2.3为什么要使用蜜罐555

27.2.4蜜罐的局限性556

27.2.5低交互性蜜罐556

27.2.6高交互性蜜罐557

27.2.7蜜网的类型557

27.2.8规避vmware检测技术559

27.3捕捉恶意软件:设置陷阱561

27.3.1vmware宿主机设置561

27.3.2vmware客户机设置561

27.3.3使用nepenthes进行捕获562

27.4恶意软件的初步分析563

27.4.1静态分析563

27.4.2动态分析565

27.4.3normansandbox技术569

第28章破解恶意软件573

28.1恶意软件的发展趋势573

28.1.1嵌入的组件573

28.1.2加密的使用574

28.1.3用户空间隐藏技术574

28.1.4rootkit技术的应用574

28.1.5持久化措施575

28.2对恶意软件进行去混淆处理575

28.2.1加壳程序基础576

28.2.2对二进制文件进行脱壳处理577

28.3对恶意软件进行逆向工程584

28.3.1恶意软件的设置阶段584

28.3.2恶意软件的运行阶段584

28.3.3自动化的恶意软件分析585

图书信息来源:中国互动出版

相关推荐