### 漏洞背景
一个ftp服务器,好像很小,感觉应该没有多少人用这个来开ftp服务,但是存在漏洞,而且zoomeye能够搜到很多设备使用了该服务,而且分析起来很简单。
### 漏洞详情
处理协议的时候有问题,
我们先测试溢出的精确长度
```
buffer_debug = '\x4c'*242+'\x90'*4
```
复制前的栈状态
![](https://images.seebug.org/contribute/a2b577a0-6c68-4665-86bb-e4046855be49)
复制后的栈状态
![](https://images.seebug.org/contribute/6880968c-13c9-4f00-9249-52c1f6282124)
可以很显然的看到我们的这个栈溢出的长度就是242,然后就是retn的地址,那么就可以控制了EIP,我们来看看触发漏洞的汇编代码。
切到ida,我们能够找到错误的的位置位于函数0x402190
![](https://images.seebug.org/contribute/caf82532-7bbb-4072-8a22-17954a995520)
我们再来看看漏洞缓解措施
![](https://images.seebug.org/contribute/d0858be2-9f3e-4eee-aa35-bccd7c2a7f92)
栈不可执行,预料之中,那么后面的事情就是如何rop了
全部评论 (1)