缓冲区溢出攻击非常常见，
因此，针对这种攻击也存在着相对比较完善的对策。
首选就是采用支持缓冲区边界自动检查的编程语言。
这些语言包括Java和Python。
一个更好的解决方案就是架构化，
并使用内置在开发语言中更具体的库模块，
这些模块可以实现在
安全缓冲区处理时，对表单中的信息的验证。
要检查是否存在着正确管理缓冲区的缺陷，
推荐使用一些代码扫描工具来检查
是否存在着任何的缓冲区溢出漏洞。
当程序员进行了一次
不安全的函数调用时，编译器也会给出警告。
更高级的编译器可以
在自动编译程序的过程中，
自动防止程序遭受缓冲区溢出的攻击。
最后，你的操作系统可以让发起缓冲区溢出攻击更加困难。
例如，操作系统可以强制实施
更加严格的内存访问控制，
这样，缓冲区攻击无法
违反规则以进入到受保护的主内存区域。
同时，还有很多种防止缓冲区溢出攻击的方法，
在软件开发人员的角度上讲，采用
安全编码最佳实践的方法
是防止缓冲区溢出攻击最好的途径。