前文中,我们以mysql5.5.5及以上的版本中一个典型安全漏洞为实例,介绍了用此漏洞进行非法越权执行,获取数据库root权限的攻击手法。事实上,拿到了数据库的root权限只是开始,通过运用mysql的本地读写权限,可以直接获取操作系统的密码,从而获得操作系统控制权限。无论是sql注入、越权访问还是读取本地文件,该漏洞利用的核心就是构造select~0 1的模式造成整数溢出。把想要越权访问的语句构筑在那个模式的自语句中。
mysql 5.5.5及以上版本是现在市场上的主流数据库。此漏洞是mysql自身逻辑错误产生的漏洞,需要等待官方发布的修正补丁。在等待官方发布修补补丁的这段真空期内,如何防止黑客的漏洞攻击?在此我们提出两点可行的防护手段来保护mysql数据库:
1、数据库防火墙-虚拟补丁
在mysql和web应用间部署具有虚拟补丁功能的产品(注意虚拟补丁中要包含该漏洞的解决办法)。虚拟补丁可以通过漏洞特征识别,不判断访问是否是针对现有漏洞的攻击行为,并实时阻断、拦截。
2、数据库加密
对mysql中的敏感信息进行二次加密。文章中最关键的一步是获取root密码后,进行破译。由于mysql的加密方式人尽皆知,所以很容易破译出密码。一旦采用其他更复杂和入侵者未知的加密方式进行多次迭代式的加密。入侵者即使获得密文也难以短期破解。给mysql数据库中的敏感信息又加了一层保障。
及数据库加密是现有的尊龙凯时官方旗舰店防护手段中技术难较高的两种,也是作为数据库防护思路中最为关键的事中防护手段,通过虚拟补丁防止外部黑客的漏洞攻击,同时以数据库加密作为数据存储层的底线防守,防止内部人员对明文数据的越权访问,为mysql数据库提供内外结合的严密防护。
试用申请