许多程序员在编程时都没有遵循一条规则,即操作字符串时,边界检查是必需的。否则,就有可能出现堆栈缓冲区溢出。不管你是一个开发人员,还是测试或研究人员,理解缓冲区溢出的原理都很重要。尽管操作系统和编译器已经提升了安全性,但最好的安全还是自己能够识别并消除这种潜在的编程错误。
前面介绍过了Windows下的缓冲区溢出案例,这里再介绍一个Linux下的缓冲区溢出案例。缓冲区溢出都是指具体的程序,这次要介绍的案例就是crossfire 1.9.0这个游戏,比较喜欢玩游戏的同学对于这个游戏的中文名:穿越火线,应该都很熟悉。
需要注意的是,32 位和 64 位程序有以下简单的区别 x86 函数参数在函数返回地址的上方 x64 System V AMD64 ABI 中前六个整型或指针参数依次保存在 RDI, RSI, RDX, RCX, R8 和 R9 寄存器中,如果还有更多的参数的话才会保存在栈上。
俗话说,兵马未动,粮草先行。在这个云计算“横行”的年代,保证企业的信息安全就是在保证企业正常运转的“粮草”安全,也就是企业的财产安全。因此,近几年来,不论是国家政府机关,还是大小民营企业,无不对信息安全问题高度重视。
Web服务器攻击常利用Web服务器软件和配置中的漏洞,针对这些漏洞最佳做法是遵循一些方法搭建并运行Web服务器,本文详解了Web服务器保护的一些方法。Web安全分为两大类:· Web服务器的安全性(Web服务器本身安全和软件配置)。