欢迎光临
免费的PDF电子书下载网站

从0到1:CTFer成长之路 PDF下载

编辑推荐

暂无

内容简介

本书主要面向CTF入门者,融入了CTF比赛的方方面面,让读者可以进行系统性的学习。本书包括13章的内容,技术介绍分为线上赛和线下赛两部分。线上赛包括10章,涵盖Web、PWN、Reverse、APK、Misc、Crypto、区块链、代码审计。线下赛包括2章,分别为AWD和靶场渗透。第13章通过Nu1L战队成员的故事和联合战队管理等内容来分享CTF战队组建和管理、运营的经验。

作者简介

Nu1L战队成员来自于上海科技大学、西华大学、成都信息工程大学、北京理工大学等全国多所高校,最早是由两个研究Web的同学创建,队名源于计算机中语言中经常出现的"NULL”。

从0到1:CTFer成长之路 PDF下载

目录

目 录
CTF之线上赛
第1章 Web入门 3
1.1 举足轻重的信息收集 3
1.1.1 信息搜集的重要性 3
1.1.2 信息搜集的分类 3
1.1.2.1 敏感目录泄露 4
1.1.2.2 敏感备份文件 7
1.1.2.3 Banner识别 9
1.1.3 从信息搜集到题目解决 9
1.2 CTF中的SQL注入 12
1.2.1 SQL注入基础 12
1.2.1.1 数字型注入和UNION注入 12
1.2.1.2 字符型注入和布尔盲注 17
1.2.1.3 报错注入 22
1.2.2 注入点 24
1.2.2.1 SELECT注入 24
1.2.2.2 INSERT注入 26
1.2.2.3 UPDATE注入 27
1.2.2.4 DELETE注入 28
1.2.3 注入和防御 29
1.2.3.1 字符替换 29
1.2.3.2 逃逸引号 31
1.2.4 注入的功效 33
1.2.5 SQL注入小结 34
1.3 任意文件读取漏洞 34
1.3.1 文件读取漏洞常见触发点 35
1.3.1.1 Web语言 35
1.4.1.2 中间件/服务器相关 37
1.4.1.3 客户端相关 39
1.3.2 文件读取漏洞常见读取路径 39
1.3.2.1 Linux 39
1.3.2.2 Windows 41
1.3.3 文件读取漏洞例题 41
1.3.3.1 兵者多诡(HCTF 2016) 42
1.3.3.2 PWNHUB - Classroom 43
1.3.3.3 Show me the shell I(TCTF/0CTF 2018 FINAL) 45
1.3.3.4 BabyIntranet I(SCTF 2018) 47
1.3.3.5 SimpleVN(BCTF2018) 48
1.3.3.6 Translate(Google CTF 2018) 50
1.3.3.7 看番就能拿Flag(PWNHUB) 51
1.3.3.8 2013那年(PWNhub) 52
1.3.3.9 Comment(网鼎杯2018线上赛) 57
1.3.3.10 方舟计划(CISCN 2017) 58
1.3.3.11 PrintMD(RealWorldCTF 2018线上赛) 60
1.3.3.12 粗心的佳佳(PWNHUB) 62
1.3.3.13 教育机构(强网杯2018线上赛) 64
1.3.3.14 Magic Tunnel(RealworldCTF 2018线下赛) 65
1.3.3.15 Can you find me?(WHUCTF2019,武汉大学校赛) 67
小结 68
第2章 Web进阶 69
2.1 SSRF漏洞 69
2.1.1 SSRF的原理解析 69
2.1.2 SSRF漏洞的寻找和测试 71
2.1.3 SSRF漏洞攻击方式 72
2.1.3.1 内部服务资产探测 72
2.1.3.2 使用Gopher协议扩展攻击面 72
2.1.3.3 自动组装Gopher 80
2.1.4 SSRF的绕过 80
2.1.4.1 IP的限制 80
2.1.4.2 302跳转 82
2.1.4.3 URL的解析问题 83
2.1.4.4 DNS Rebinding 86
2.1.5 CTF中的SSRF 88
2.2 命令执行漏洞 92
2.2.1 命令执行的原理和测试方法 92
2.2.1.1 命令执行原理 93
2.2.1.2 命令执行基础 93
2.2.1.3 命令执行的基本测试 95
2.2.2 命令执行的绕过和技巧 95
2.2.2.1 缺少空格 95
2.2.2.2 黑名单关键字 97
2.2.2.3 执行无回显 98
2.2.3 命令执行真题讲解 100
2.2.3.1 2015 HITCON Babyfirst 100
2.2.3.2 2017 HITCON BabyFirst Revenge 101
2.2.3.3 2017 HITCON BabyFirst Revenge v2 103
2.3 XSS的魔力 104
2.3.1 XSS漏洞类型 104
2.3.2 XSS的tricks 108
2.3.3 XSS过滤和绕过 111
2.3.4 XSS绕过案例 117
2.4 Web文件上传漏洞 121
2.4.1 基础文件上传漏洞 121
2.4.2 截断绕过上传限制 122
2.4.2.1 00截断 122
2.4.2.2 转换字符集造成的截断 125
2.4.3 文件后缀黑名单校验绕过 126
2.4.3.1 上传文件重命名 126
2.4.3.2 上传文件不重命名 127
2.4.4 文件后缀白名单校验绕过 130
2.4.4.1 Web服务器解析漏洞 130
2.4.4.2 APACHE解析漏洞 131
2.4.5 文件禁止访问绕过 132
2.4.5.1 .htaccess禁止脚本文件执行绕过 133
2.4.5.2 文件上传到OSS 134
2.4.5.3 配合文件包含绕过 134
2.4.5.4 一些可被绕过的Web配置 135
2.4.6 绕过图片验证实现代码执行 137
2.4.7 上传生成的临时文件利用 140
2.4.8 使用file_put_contents实现文件上传 142
2.4.9 ZIP上传带来的上传问题 147
小结 156
第3章 Web拓展 157
3.1 反序列化漏洞 157
3.1.1 PHP反序列化 157
3.1.1.1 常见反序列化 158
3.1.1.2 原生类利用 160
3.1.1.3 Phar反序列化 163
3.1.1.4 小技巧 165
3.1.2 经典案例分析 170
3.2 Python的安全问题 172
3.2.1 沙箱逃逸 172
3.2.1.1 关键词过滤 172
3.2.1.2 花样import 173
3.2.1.3 使用继承等寻找对象 174
3.2.1.4 eval类的代码执行 174
3.2.2 格式化字符串 175
3.2.2.1 最原始的% 175
3.2.2.2 format方法相关 175
3.2.2.3 Python 3.6中的f字符串 176
3.2.3 Python模板注入 176
3.2.4 urllib和SSRF 177
3.2.4.1 CVE-2016-5699 177
3.2.4.2 CVE-2019-9740 178
3.2.5 Python反序列化 179
3.2.6 Python XXE 180
3.2.7 sys.audit 182
3.2.8 CTF Python案例 182
3.2.8.1 皇家线上赌场(SWPU 2018) 182
3.2.8.2 mmmmy(2018网鼎杯) 183
3.3 密码学和逆向知识 185
3.3.1 密码学知识 186
3.3.1.1 分组加密 186
3.3.1.2 加密方式的识别 186
3.3.1.3 ECB模式 186
3.3.1.4 CBC模式 188
3.3.1.5 Padding Oracle Attack 191
3.3.1.6 Hash Length Extension 197
3.3.1.7 伪随机数 200
3.3.1.8 密码学小结 202
3.3.2 Web中的逆向工程 202
3.3.2.1 Python 202
3.3.2.2 PHP 203
3.3.2.3 JavaScript 206
3.4 逻辑漏洞 207
3.4.1 常见的逻辑漏洞 207
3.4.2 CTF中的逻辑漏洞 211
3.4.3 逻辑漏洞小结 212
小结 212
第4章 APK 213
4.1 Android开发基础 213
4.1.1 Android四大组件 213
4.1.2 APK文件结构 214
4.1.3 DEX文件格式 214
4.1.4 Android API 215
4.1.5 Android示例代码 216
4.2 APK逆向工具 217
4.2.1 JEB 217
4.2.2 IDA 219
4.2.3 Xposed Hook 220
4.2.4 Frida Hook 222
4.3 APK逆向之反调试 224
4.4 APK逆向之脱壳 224
4.4.1 注入进程Dump内存 224
4.4.2 修改源码脱壳 225
4.4.3 类重载和DEX重组 227
4.5 APK真题解析 227
4.5.1 Ollvm混淆Native App逆向(NJCTF 2017) 227
4.5.2 反调试及虚拟机检测(XDCTF 2016) 230
小结 232
第5章 逆向工程 233
5.1 逆向工程基础 233
5.1.1 逆向工程概述 233
5.1.2 可执行文件 233
5.1.3 汇编语言基本知识 234
5.1.4 常用工具介绍 239
5.2 静态分析 243
5.2.1 IDA使用入门 243
5.2.2 HexRays反编译器入门 249
5.2.3 IDA和HexRays进阶 254
5.3 动态调试和分析 258
5.3.1 调试的基本原理 258
5.3.2 OllyDBG和x64DBG调试 258
5.3.3 GDB调试 264
5.3.4 IDA调试器 265
5.4 常见算法识别 273
5.4.1 特征值识别 273
5.4.2 特征运算识别 274
5.4.3 第三方库识别 274
5.5 二进制代码保护和混淆 276
5.5.1 抵御静态分析 277
5.5.2 加密 280
5.5.3 反调试 289
5.5.4 浅谈ollvm 296
5.6 高级语言逆向 297
5.6.1 Rust和Go 298
5.6.2 C#和Python 301
5.6.3 C MFC 302
5.7 现代逆向工程技巧 303
5.7.1 符号执行 303
5.7.1.1 符号执行概述 303
5.7.1.2 angr 304
5.7.1.3 angr小结 313
5.7.2 二进制插桩 313
5.7.3 Pin 314
5.7.3.1 环境配置 314
5.7.3.2 Pintool使用 317
5.7.3.3 Pintool基本框架 317
5.7.3.4 CTF实战:记录执行指令数 319
5.7.3.5 CTF实战:记录指令轨迹 322
5.7.3.6 CTF实战:记录指令执行信息与修改内存 325
5.7.3.7 Pin小结 330
5.8 逆向中的技巧 331
5.8.1 Hook 331
5.8.2 巧妙利用程序已有代码 331
5.8.3 Dump内存 332
小结 333
第6章 PWN 335
6.1 PWN基础 335
6.1.1 什么是PWN 335
6.1.2 如何学习PWN 335
6.1.3 Linux基础知识 336
6.1.3.1 Linux中的系统与函数调用 336
6.1.3.2 ELF文件结构 337
6.1.3.3 Linux下的漏洞缓解措施 338
6.1.3.4 GOT和PLT的作用 339
6.2 整数溢出 340
6.2.1 整数的运算 340
6.2.2 整数溢出如何利用 341
6.3 栈溢出 341
6.4 返回导向编程 346
6.5 格式化字符串漏洞 350
6.5.1 格式化字符串漏洞基本原理 350
6.5.2 格式化字符串漏洞基本利用方式 352
6.5.3 格式化字符串不在栈上的利用方式 354
6.5.4 格式化字符串的一些特殊用法 357
6.5.5 格式化字符串小结 358
6.6 堆利用 358
6.6.1 什么是堆 358
6.6.2 简单的堆溢出 359
6.6.3 堆内存破坏漏洞利用 360
6.6.3.1 Glibc调试环境搭建 360
6.3.6.2 Fast Bin Attack 361
6.6.3.3 Unsorted Bin List 367
6.6.3.4 Unlink攻击 371
6.6.3.5 Large Bin Attack(0CTF heapstormII) 375
6.6.3.6 Make Life Easier:tcache 379
6.6.3.7 Glibc 2.29的tcache 380
6.7 Linux内核PWN 381
6.7.1 运行一个内核 381
6.7.2 网络配置 381
6.7.3 文件系统 382
6.7.4 初始化脚本 382
6.7.5 内核调试 383
6.7.6 分析程序 383
6.7.7 漏洞利用 384
6.7.8 PWN Linux小结 387
6.7.9 Linux内核PWN源代码 387
6.8 Windows系统的PWN 389
6.8.1 Windows的权限管理 390
6.8.2 Windows的调用约定 390
6.8.3 Windows的漏洞缓解机制 391
6.8.4 Windows的PWN技巧 393
6.9 Windows内核P

从0到1:CTFer成长之路 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:从0到1:CTFer成长之路