CTF比赛,那可是网络安全圈的华山论剑。想在里面混出名堂?光有理论知识可不行,得有实战经验,还得会各种骚操作。今天,我就把多年来在CTF赛场上摸爬滚打总结出的100个解题思路分享出来,别说我没提醒你,能看懂一半,绝对是高手中的高手!
一、Web安全?那是基本功!(25个让你起飞的姿势)
-
SQL注入?不存在的!花式绕过姿势了解一下: 别再死磕那些老掉牙的注入手法了。WAF也不是吃素的。试试
/*!50000*/
这种骚操作,说不定能绕过检测。联合查询的时候,字段数必须对上,不然等着报错吧。 -
文件包含?直接读源码!骚就完事了:
php://filter
这玩意儿,谁用谁知道。读源码的时候,别忘了加上base64
解码,不然全是乱码。 -
SSTI?一招鲜吃遍天?图样!:
{ {7*7}}
?太low了!直接上{ {config.items()}}
,把所有配置信息都dump出来,看看有没有敏感信息。当然,别忘了识别模板引擎类型,Jinja2、Twig、Smarty,玩法都不一样。 -
JWT?别告诉我你还在用HS256!:
alg
改成none
?小学生都这么玩。试试HS256/RSA算法混淆攻击,让服务器自己把自己玩死。 -
SSRF?内网漫游?gopher协议yyds: 光打外网算什么本事?用
gopher
协议构造Redis未授权访问EXP,直接拿下内网服务器。 -
反序列化?Apache Commons Collections?过时啦!: 别再盯着CC链了,试试其他的Gadget链,比如ROME、Fastjson,说不定有惊喜。
-
条件竞争?手速不够,工具来凑: Burp Intruder的pitchfork模式,并发请求安排上,让服务器CPU直接爆炸。
-
XSS?CSP?不存在的!:
unsafe-inline
?太明显了!试试预加载列表劫持,让浏览器自己加载你的恶意脚本。 -
GraphQL?API结构?一览无余!: Introspection查询,直接把API结构扒个精光。有了这个,还怕找不到漏洞?
-
WebSocket?劫持?CSRF?: 别以为WebSocket就安全了,劫持
ws
协议,照样可以搞CSRF攻击。 -
云环境?AWS Metadata?信息泄露?: 云环境的坑,可不止一个。AWS Metadata接口,说不定能泄露你的Access Key和Secret Key。
-
文件上传?绕过?组合拳了解一下:
00
截断、双扩展名、Content-Type伪造,这都是基本操作。试试图片马,说不定能直接getshell。 -
HTTP走私?CL-TE?TE-CL?傻傻分不清楚?: 搞清楚CL-TE和TE-CL两种模式的区别,才能精准打击。
-
OAuth2.0?redirect_uri?账户劫持?:
redirect_uri
参数没校验?直接劫持用户账户,美滋滋。 -
XXE?读取/etc/passwd?小儿科!: 通过外部实体读取
/etc/passwd
?太low了!试试读/proc/self/environ
,说不定能拿到更敏感的信息。 -
Cookie?__Host-前缀?绕过?: 利用
__Host-
前缀绕过路径限制,提高Cookie的安全性。 -
Web缓存投毒?X-Forwarded-Host?: 篡改
X-Forwarded-Host
头,让缓存服务器缓存你的恶意页面,然后等着用户上钩吧。 -
子域名接管?CNAME记录?: 找到CNAME记录指向未注册的云服务,直接接管子域名。
-
服务端原型污染?JSON合并?: 通过JSON合并修改敏感配置,想想就刺激。
-
HSTS绕过?子域名?国际化域名?: 利用子域名或国际化域名降级HTTPS,让用户暴露在HTTP的风险之下。
-
参数污染?WAF?规则冲突?: 通过重复参数触发WAF规则冲突,让WAF直接懵逼。
-
WebAssembly?逆向?wasm模块?: 使用
wabt
工具拆解wasm模块,分析里面的逻辑。 -
CSP绕过?CDN域名白名单?: 通过CDN域名白名单加载恶意脚本,绕过CSP的限制。
-
浏览器特性滥用?window.opener?钓鱼?: 利用
window.opener
进行钓鱼攻击,让用户在不知不觉中泄露敏感信息。 -
服务端请求伪造?DNS重绑定?: 利用DNS重绑定攻击内网系统,打通内网的任督二脉。
二、逆向工程?不只是体力活!(20个让你脑洞大开的技巧)
-
动态脱壳?Frida Hook?DEX加载过程?: 通过Frida Hook DEX加载过程,摆脱壳的束缚。
-
反调试对抗?ptrace?/proc/self/status?: 检测ptrace、
/proc/self/status
等特征,让调试器无处遁形。 -
虚拟机检测绕过?Hook getprop?修改返回值?: Hook
getprop
相关函数修改返回值,欺骗虚拟机检测。 -
混淆代码分析?Angr?符号执行?: 使用Angr符号执行定位关键函数,让混淆代码无所遁形。
-
加密算法识别?S盒?Feistel结构?: 查找S盒、Feistel结构特征,快速识别加密算法。
-
代码注入攻击?LD_PRELOAD?GOT表?: 通过
LD_PRELOAD
劫持GOT表,实现代码注入。 -
UPX脱壳?内存dump?PE文件?: 通过内存dump重建PE文件,摆脱UPX壳的束缚。
-
.NET逆向?dnSpy?混淆后的程序集?: 使用dnSpy调试混淆后的程序集,还原代码逻辑。
-
固件提取?SPI闪存编程器?芯片数据?: 通过SPI闪存编程器读取芯片数据,提取固件。
-
代码签名绕过?PE文件?校验和字段?: 修改PE文件的校验和字段,绕过代码签名验证。
-
栈字符串恢复?push指令?加密字符串?: 追踪push指令重构加密字符串,还原关键信息。
-
动态Hook框架?Frida Stalker?执行流?: 使用Frida Stalker模式追踪执行流,动态分析程序行为。
-
反编译优化?IDA Python?混淆控制流?: IDA Python脚本修复混淆控制流,提高代码可读性。
-
寄存器分析?EAX返回值?关键判断?: 通过EAX返回值定位关键判断,快速找到关键代码。
-
密码学函数定位?常量?0x6A09E667?SHA256?: 搜索常量
0x6A09E667
识别SHA256,快速定位密码学函数。 -
多线程逆向?CreateThread参数?业务逻辑?: 通过CreateThread参数定位业务逻辑,分析多线程程序的行为。
-
异常处理分析?SEH链?反调试陷阱?: 跟踪SEH链定位反调试陷阱,绕过反调试机制。
-
虚拟化保护破解?LLVM IR?中间层?: 通过LLVM IR中间层还原逻辑,破解虚拟化保护。
-
移动端Hook?Xposed模块?系统API调用?: Xposed模块拦截系统API调用,监控和修改应用程序的行为。
-
代码模拟执行?Unicorn引擎?反虚拟机检测?: 使用Unicorn引擎绕过反虚拟机检测,模拟执行代码。
三、PWN?溢出?堆?栈?玩的就是心跳!(15个让你肾上腺素飙升的技巧)
-
ROP链构造?Ropper?gadgets?: 通过Ropper工具搜索可用gadgets,构造ROP链。
-
堆风水布局?fastbin dup?任意地址写?: 利用fastbin dup实现任意地址写,控制程序流程。
-
格式化字符串漏洞?%n?GOT表?: 通过
%n
覆写GOT表条目,劫持函数调用。 -
整数溢出?size_t?回绕?超大内存?: 通过
size_t
回绕分配超大内存,触发整数溢出。 -
沙箱逃逸?open/read/write?seccomp?: 通过
open/read/write
组合绕过seccomp,逃离沙箱。 -
内核漏洞利用?cred结构体?提权?: 修改cred结构体实现提权,获取root权限。
-
栈迁移?leave ret?栈帧位置?: 通过
leave ret
调整栈帧位置,实现栈迁移。 -
内存泄漏?unsorted bin?libc地址?: 通过unsorted bin泄露libc地址,为后续攻击做准备。
-
House of系列攻击?tcache机制?现代堆利用?: 结合tcache机制的现代堆利用,玩转各种House of攻击。
-
FSOP攻击?IO_FILE结构体?任意写?: 伪造IO_FILE结构体实现任意写,控制文件操作。
-
侧信道攻击?时序分析?ASLR偏移?: 通过时序分析获取ASLR偏移,绕过地址随机化。
-
类型混淆?C++虚表指针?执行流?: 利用C++虚表指针劫持执行流,控制程序行为。
-
未初始化内存?堆喷?可控数据?: 通过堆喷填充可控数据,利用未初始化内存漏洞。
-
信号处理漏洞?sigreturn?SROP攻击?: 劫持sigreturn实现SROP攻击,控制程序流程。
-
内核ROP?commit_creds(prepare_kernel_cred(0))?: 构造
commit_creds(prepare_kernel_cred(0))
链,直接提权。
四、密码学?不止是数学公式!(20个让你怀疑人生的技巧)
-
异或加密破解?频率分析?密钥长度?: 通过频率分析寻找密钥长度,破解异或加密。
-
RSA共模攻击?扩展欧几里得算法?明文?: 利用扩展欧几里得算法恢复明文,破解RSA共模攻击。
-
AES-ECB模式攻击?块替换?加密数据?: 通过块替换篡改加密数据,破解AES-ECB模式。
-
椭圆曲线密码?无效曲线攻击?私钥?: 利用无效曲线攻击获取私钥,破解椭圆曲线密码。
-
哈希长度扩展?SHA1?Merke-Damgård结构?合法签名?: 通过SHA1的Merke-Damgård结构构造合法签名,破解哈希长度扩展攻击。
-
维吉尼亚密码?Kasiski方法?密钥长度?: 使用Kasiski方法确定密钥长度,破解维吉尼亚密码。
-
LFSR破解?Berlekamp-Massey算法?初始状态?: 通过Berlekamp-Massey算法重建初始状态,破解LFSR。
-
RC4漏洞利用?Fluhrer-Mantin-Shamir攻击?WEP密钥?: 通过Fluhrer-Mantin-Shamir攻击恢复WEP密钥,破解RC4。
-
同态加密破解?Gentry方案?已知明文攻击?: 在Gentry方案中实施已知明文攻击,破解同态加密。
-
时间侧信道攻击?响应时间差?AES密钥?: 通过响应时间差猜测AES密钥,破解时间侧信道攻击。
-
选择密文攻击?PKCS#1 v1.5填充错误信息?: 利用PKCS#1 v1.5填充错误信息,破解选择密文攻击。
-
离散对数问题?Pohlig-Hellman算法?加速求解?: 使用Pohlig-Hellman算法加速求解,破解离散对数问题。
-
格基约减攻击?LLL算法?背包密码?: 通过LLL算法破解背包密码,破解格基约减攻击。
-
证书伪造?MD5哈希碰撞?合法签名?: 构造MD5哈希碰撞获得合法签名,伪造证书。
-
盐值破解优化?彩虹表?GPU加速?: 使用彩虹表结合GPU加速,破解盐值哈希。
-
分组密码模式攻击?CBC字节翻转攻击?: CBC字节翻转攻击实战,篡改加密数据。
-
多项式方程求解?Z3约束求解器?密码算法?: 在Z3约束求解器中建模密码算法,求解多项式方程。
-
随机数漏洞?预测MT19937算法的输出序列?: 预测MT19937算法的输出序列,利用随机数漏洞。
-
量子密码分析?Shor算法?CTF?: Shor算法在CTF中的模拟应用,体验量子密码分析。
-
隐写分析?卡方检验?LSB隐写异常?: 通过卡方检验检测LSB隐写异常,发现隐藏的信息。
五、杂项?啥都会一点才能走得更远!(20个让你技能树点满的技巧)
-
流量分析?Wireshark显示过滤器?flag关键词?: Wireshark显示过滤器定位flag关键词,快速找到目标。
-
内存取证?Volatility?进程注入痕迹?: 使用Volatility分析进程注入痕迹,发现恶意行为。
-
隐写术破解?zsteg?PNG文件的LSB隐写?: 通过zsteg检测PNG文件的LSB隐写,提取隐藏的信息。
-
协议逆向?Scapy?修改后的网络包?: 用Scapy重放修改后的网络包,分析协议逻辑。
-
二维码处理?zxing?畸变图像?: 通过zxing解码后处理畸变图像,还原二维码信息。
-
磁盘镜像分析?Autopsy?删除的FAT32文件?: 使用Autopsy恢复删除的FAT32文件,找回丢失的数据。
-
编码识别?熵值分析?Base家族类型?: 通过熵值分析判断Base家族类型,快速识别编码方式。
-
声音隐写?Audacity频谱图?高频信号?: Audacity频谱图查看高频信号,发现隐藏的声音信息。
-
文档隐写?olevba?恶意宏代码?: 通过olevba提取恶意宏代码,分析恶意文档。
-
时间戳转换?Epoch Converter?NTFS时间?: Epoch Converter处理NTFS时间,还原文件创建时间。
-
数据雕刻?foremost?原始数据?文件头?: 使用foremost从原始数据提取文件头,恢复文件。
-
压缩包破解?明文攻击?ZIP密码?: 通过明文攻击恢复ZIP密码,解开加密的压缩包。
-
围棋密码?在线SGF编辑器?坐标?: 通过在线SGF编辑器解析坐标,解开围棋密码。
-
条形码分析?zxing?Code128编码数据?: 使用zxing识别Code128编码数据,提取条形码信息。
-
磁盘加密破解?已知文件头?Veracrypt?: 通过已知文件头破解Veracrypt,解密磁盘。
-
内存字符串提取?strings命令?grep?:
strings
命令配合grep
快速筛选,提取内存中的字符串。 -
字频统计攻击?替换密码?词频分析?: 对替换密码实施词频分析,破解加密的文本。
-
元数据分析?exiftool?照片GPS坐标?:
exiftool
查看照片GPS坐标,获取地理位置信息。 -
协议模糊测试?Boofuzz?畸形HTTP请求?: 用Boofuzz构造畸形HTTP请求,测试协议的健壮性。
-
竞赛策略?自动化脚本?批量提交flag?: 编写自动化脚本批量提交flag,提高效率。
深度剖析:
每个技巧背后都隐藏着高能漏洞场景。就拿House of Orange来说(第54条),不仅仅是控制chunk的size和fd,更要考虑到libc版本和堆的布局,一不小心就Segmentation fault了。再比如椭圆曲线攻击(第64条),选错曲线,那就是白费功夫。自动化脚本(第100条),别只想着pwntools,多线程、异步IO也得安排上,不然等着超时吧。
实战真言:
- CTF解题流程SOP:信息收集 -> 漏洞挖掘 -> EXP编写 -> 环境适配,缺一不可。
- 遇到不会的题?别慌!差分分析大法好,改一点,看一点,总能找到突破口。
- 密码学常数表、文件头特征、系统调用表,这些都是你的宝贝,离线存档,随时查阅。
(这些解题思路,都是我用血与泪换来的,在各大CTF比赛中都经过实战验证。建议各位选手结合靶场环境,模块化训练,并持续关注最新的CVE漏洞在CTF中的各种变体,才能在比赛中立于不败之地!)
```
黑客/网络安全学习包
资料目录
-
成长路线图&学习规划
-
配套视频教程
-
SRC&黑客文籍
-
护网行动资料
-
黑客必读书单
-
面试题合集
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************
1.成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************
2.视频教程
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************
3.SRC&黑客文籍
大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录
SRC技术文籍:
黑客资料由于是敏感资源,这里不能直接展示哦!
4.护网行动资料
其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!
5.黑客必读书单
**
**
6.面试题合集
当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
更多内容为防止和谐,可以扫描获取~
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*********************************