题目链接
分析
我们来看这道题,首先checksec并运行一下

可以看到是32位程序,有两个输入点,保护只有 NX。
接下来我们在ida中看看分析。在hello函数的最后我们可以看到这些东西

这就是程序给我们的两个输入点,可以看到第二个是 gets ,那就很方便了,直接溢出利用就行,翻看其他函数我们可以发现有一个system函数

很遗憾的是只有system函数而没有我们需要的shellcode
看来只能我们自己往程序里面写了,可以发现的是第一个输入点哪儿有一个name,点击跟进

.bss 段的一个地址,我们知道NX开启的时候&#x