Featured image of post NSSctf-专题PWN-writeup

NSSctf-专题PWN-writeup

PWN系列,二进制综合基础,10道急速入门

前言:

出题作者是kagehutatsu,我花了3680金币购买的,虽说还是PWN入门,但我感觉做点浓缩的偏综合的入门PWN题更好些,CTFshow入门PWN题说实话确实适合当时0基础入门!😄

本次入门PWN学习相当于我的第二次“入门”,以两外一种角度带入门者更进一步理解PWN基础知识,在CTFshow-入门PWN专题PWN-1PWN-2PWN-3中出现的前置知识点,在这里有涉及到的我都会有所引用出来。

PWN介绍

题目:xxx;就是没有题目,啥也没

上程序nc连接看看,别说你不会nc……

哎,输入啥都没有…

用IDA分析一下,跟进main函数:

main函数

好家伙,看到system("/bin/sh");有if判断语句,意思就是说让我输入一个数(前面有个read函数限制大小,不过那玩意容量这么大,我再蠢也不会说输入两百多位字符给程序吧😄),这个数会被read函数读取给buf参数,接着到strcmp函数(比较作用,判断是否“不相等”)——if ( !strcmp(buf, "love\n") )意思是buf和“love”字符串相比的话是否相等,如果是真的就跳到下一步,显然if下方是system函数,我们就往程序输入love就好啦。

看到下一步是被PWN通了的,我们可以进行交互模式了,用ls、cat命令拿到flag吧。

Pwntools与GBD使用

«««< HEAD 还是没题目…

IDA分析:

main函数

这题和上题不同的是,这回v5要等于“520”才能执行system函数,但v5再此前是被赋值位“1314”的,单靠我们输入字符给程序不能拿到flag,用其它手段去修改v5。

取自[鹏城杯 2024]tArScR

题目:我的RSA挺有意思。

191b05fa45e02dc8995178e6a8d2c0c238003afb

整数溢出

ROP

ret2text及其变种

函数调用

ROPgadget

ret2sys

ret2shellcode

ret2libc

综合练习

最后更新于 2025-10-04