万本电子书0元读

万本电子书0元读

顶部广告

CTF特训营:技术详解、解题方法与竞赛技巧电子书

售       价:¥57.85

607人正在读 | 0人评论 7.2

作       者:FlappyPig战队

出  版  社:机械工业出版社

出版时间:2020-06-01

字       数:45.3万

所属分类: 科技 > 计算机/网络 > 计算机理论与教程

温馨提示:此类商品不支持退换货,不支持下载打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书主要从Web、Reverse、PWN、Crypto、APK、IoT 6个方面对CTF的入门知识、学习方法和常见题型进行了介绍,并且结合实际题目对相关知识点进行讲解,同时结合线上赛、线下赛对竞赛技巧进行了总结。从定位上来说,本书并不能让读者读完就成为“职业竞技选手”,而是希望读者能够从本书中知道自己对哪些方面感兴趣,要进一步学习哪些方面的知识,达到CTF入门的目的。因此,本书面向的人群是CTF的初学者。当然,如果有经验的读者想要跨领域学习其他类型的题目的解法,也可以从本书中获取一些灵感。
目录展开

前言

第一篇 CTF之Web

第1章 常用工具安装及使用

1.1 Burp Suite

1.2 Sqlmap

1.3 浏览器与插件

1.4 Nmap

第2章 SQL注入攻击

2.1 什么是SQL注入

2.2 可以联合查询的SQL注入

2.3 报错注入

2.4 Bool盲注

2.5 时间盲注

2.6 二次注入

2.7 limit之后的注入

2.8 注入点的位置及发现

2.9 绕过

2.10 SQL读写文件

2.11 小结

第3章 跨站脚本攻击

3.1 概述

3.2 常见XSS漏洞分类

3.3 防护与绕过

3.4 危害与利用技巧

3.5 实例

第4章 服务端请求伪造

4.1 如何形成

4.2 防护绕过

4.3 危害与利用技巧

4.4 实例

第5章 利用特性进行攻击

5.1 PHP语言特性

5.1.1 弱类型

5.1.2 反序列化漏洞

5.1.3 截断

5.1.4 伪协议

5.1.5 变量覆盖

5.1.6 防护绕过

5.2 Windows系统特性

第6章 代码审计

6.1 源码泄露

6.2 代码审计的方法与技巧

第7章 条件竞争

7.1 概述

7.2 条件竞争问题分析及测试

第8章 案例解析

8.1 NSCTF 2015 Web实例

8.2 湖湘杯2016线上选拔赛Web实例

8.3 0CTF 2017 Web实例

8.4 2019 WCTF大师赛赛题剖析:P-door

本篇小结

第二篇 CTF之Reverse

第9章 Reverse概述

9.1 逆向分析的主要方法

9.2 汇编指令体系结构

9.2.1 x86指令体系

9.2.2 x64指令体系

9.3 逆向分析工具介绍

9.3.1 反汇编和反编译工具

9.3.2 调试器

9.3.3 Trace类工具

第10章 Reverse分析

10.1 常规逆向分析流程

10.1.1 关键代码定位

10.1.2 常见加密算法识别

10.1.3 求解flag

10.2 自动化逆向

10.2.1 IDAPython

10.2.2 PythonGdb

10.2.3 pydbg

10.2.4 Angr

10.3 干扰分析技术及破解方法

10.3.1 花指令

10.3.2 反调试

10.3.3 加壳

10.3.4 控制流混淆

10.3.5 双进程保护

10.3.6 虚拟机保护

10.4 脚本语言的逆向

10.4.1 .NET程序逆向

10.4.2 Python程序逆向

10.4.3 Java程序逆向

本篇小结

第三篇 CTF之PWN

第11章 PWN基础

11.1 基本工具

11.2 保护机制

11.3 PWN类型

11.4 常见利用方法

11.5 程序内存布局

11.6 真题解析

第12章 栈相关漏洞

12.1 栈介绍

12.1.1 函数栈的调用机制

12.1.2 函数参数传递

12.2 栈溢出

12.2.1 基本概念

12.2.2 覆盖栈缓冲区的具体用途

12.3 栈的特殊利用

12.4 栈喷射

12.5 线程栈

12.6 真题解析

12.6.1 {ZCTF-2015}guess(PWN100)

12.6.2 {ZCTF-2015}spell(PWN300)

12.6.3 {Codegate-2015}Chess(PWN700)

12.6.4 {RCTF-2015}Welpwn(PWN200)

第13章 堆相关漏洞

13.1 堆介绍

13.1.1 堆基本数据结构chunk

13.1.2 堆空闲块管理结构bin

13.1.3 malloc基本规则

13.1.4 free基本规则

13.1.5 tcache

13.2 漏洞类型

13.3 利用方法

13.3.1 最基本的堆利用

13.3.2 unlink

13.3.3 fastbin attack

13.3.4 forgotten chunk

13.3.5 house of force

13.3.6 house of spirit

13.3.7 house of orange

13.3.8 堆喷射

13.3.9 更多堆利用技巧

13.4 真题解析

第14章 格式化字符串漏洞

14.1 基本概念

14.2 信息泄露与修改

14.3 额外技巧

14.4 真题解析

14.4.1 {CCTF-2016}PWN3(PWN350)

14.4.2 {RCTF-2015}nobug(PWN300)

14.4.3 {LCTF-2016}PWN200

第15章 整型漏洞

15.1 宽度溢出

15.2 符号转换

15.3 数组越界

15.4 真题解析

第16章 逻辑漏洞

16.1 基本概念

16.2 竞态条件漏洞

16.3 真题解析

第17章 Attack&Defense模式

17.1 修补方案

17.1.1 大小修改法

17.1.2 函数替换法

17.1.3 .eh_frame段Patch法

17.1.4 其他方法

17.2 攻防策略

本篇小结

第四篇 CTF之Crypto

第18章 Crypto概述

第19章 编码

19.1 hex

19.2 urlencode

19.3 morsecode

19.4 jsfuck

19.5 uuencode

19.6 base家族

第20章 古典密码

20.1 移位密码

20.1.1 简单移位密码

20.1.2 曲路密码

20.1.3 云影密码

20.1.4 栅栏密码

20.2 替代密码

20.2.1 单表替代密码

20.2.2 多表替代密码

第21章 现代密码

21.1 分组密码和序列密码

21.1.1 DES/AES基本加解密

21.1.2 分组密码CBC bit翻转攻击

21.1.3 分组密码CBC选择密文攻击

21.1.4 分组密码CBC padding oracle攻击

21.1.5 Feistel结构分析

21.1.6 攻击伪随机数发生器

21.2 公钥密码

21.2.1 RSA基础

21.2.2 直接模数分解

21.2.3 费马分解和Pollard_rho分解

21.2.4 公约数模数分解

21.2.5 其他模数分解方式

21.2.6 小指数明文爆破

21.2.7 选择密文攻击

21.2.8 LLL-attack

21.2.9 Wiener Attack&Boneh Durfee Attack

21.2.10 共模攻击

21.2.11 广播攻击

21.2.12 相关消息攻击

21.2.13 DSA

21.3 哈希

21.3.1 哈希碰撞

21.3.2 哈希长度扩展攻击

第22章 真题解析

22.1 SUPEREXPRESS

22.2 VIGENERE

22.3 Revolver

22.4 Railgun

本篇小结

第五篇 CTF之APK

第23章 APK基础

23.1 Android题目类型

23.2 Android基本架构

23.2.1 Android的Dalvik虚拟机

23.2.2 Native层

23.3 ARM架构基础知识

23.3.1 函数调用/跳转指令

23.3.2 出栈入栈指令

23.3.3 保存/恢复寄存器的值

23.4 adb

23.5 APK文件格式

第24章 Dalvik层逆向分析

24.1 Dalvik基础知识

24.1.1 寄存器

24.1.2 类型

24.1.3 方法

24.1.4 指令特点

24.2 静态分析

24.2.1 使用Apktool反编译APK程序

24.2.2 使用dex2jar生成jar文件

24.2.3 使用jd-gui查看反编译的Java代码

24.2.4 使用FernFlower反编译Jar文件

24.2.5 使用Android Killer/jadx/APK Studio逆向分析平台

24.2.6 使用JEB进行静态分析

24.2.7 其他的静态分析软件

24.3 动态调试

24.3.1 使用log调试

24.3.2 smali动态调试

24.3.3 使用Xposed框架Hook进程

24.3.4 使用Frida框架Hook进程

24.4 Dalvik层混淆及加固技术

24.4.1 ProGuard混淆

24.4.2 DEX破坏

24.4.3 APK伪加密

24.4.4 APK增加数据

24.4.5 DEX隐藏

第25章 Native层逆向

25.1 Native层介绍

25.1.1 正向——使用NDK编写Native层应用

25.1.2 JNI调用特征分析

25.2 使用IDA Pro静态分析

25.3 动态调试

25.3.1 使用IDA Pro进行动态调试

25.3.2 使用GDB进行动态调试

25.3.3 使用Frida框架HOOK进程

25.4 OLLVM混淆及加固技术

25.4.1 -fla

25.4.2 -bcf

25.4.3 -sub

本篇小结

第六篇 CTF之IoT

第26章 IoT基础知识

26.1 什么是IoT

26.2 什么是嵌入式系统

26.3 嵌入式系统的基本概念

26.4 CTF中常见的IoT题型归类

第27章 IoT固件逆向工程

27.1 常见IoT架构介绍

27.2 芯片手册的寻找与阅读

27.3 使用IDA手动寻找固件入口点

27.4 寄存器地址和SRAM地址的处理方法

27.5 IDA之CPU高级选项

27.6 动态调试环境搭建

27.7 专业调试工具

27.8 反编译工具

第28章 固件结构分析

28.1 常见固件类型

28.2 Flash文件系统

28.3 固件基地址确定方法

28.4 固件分析工具

第29章 无线信号分析

29.1 无线通信基本理论介绍

29.2 常见调制方式与解调方法

29.3 Matlab在数字信号处理中的应用

第30章 经典赛题讲解

30.1 PCTF2016:Confused ARM

30.2 UCTF2016资格赛:TWI

30.3 UCTF2016决赛:Normandie

30.4 ACTF2016:4G Radio

30.5 UCTF2016资格赛:传感器(1)(2)

30.6 UCTF2016资格赛:Add

本篇小结

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部