SQL服务器安全措施推荐
修改默认的SQL服务器端口
最普遍的SQL的攻击甚至在安全公告也没有包含。这就是使用一个空白的口令企图简单地登录SA账户。微软的SQL服务器安装了默认采用一个口令空白的SA账户,这是你需要修改的第一件事情。
另一个产生空白口令的常见原因是产品。例如,某些版本的Visio安装微软的SQL服务器2000桌面引擎(MSDE)从来不修改SA口令。用户甚至都不知道他们在运行MSDE。你可以从eEye数字安全公司下载一个程序扫描你的网络查找拥有空白SA账户的SQL服务器。
SQL服务器安全检查**
1.设置一个SA账户口令,并且限制这个账户的使用。你还要定期修改口令以防止口令扩散,并且被开发人员或者太多的管理员所使用。如果任何知道SA口令的人离开公司,你都需要修改SA口令。使用eEye的工具扫描你的网络查找没有SA口令的SQL服务器。
2.将你的SQL服务器设置在防火墙后面,与你的IIS服务器或者网络服务器分开。仅允许这些指定的网络服务器连接SQL服务器。你的SQL服务器永远不要向互联网开放或者允许公开访问。
3.从sysadmin角色中删除BUILTIN/Administrators ,然后将SQL管理权限赋予需要SQL管理功能的域账户。
4.如果可能的话,使用Windows身份识别或者仅使用Windows模式。采用这种方式,潜在的黑客必须首先向这个域验证身份,而不是仅向SQL服务器验证身份。
5.不要在域控制器上运行SQL服务器。
6.把SQL服务器启动账户改为非本地帐户。
7.启用失败登录选项(服务器属性/安全标签),这样你就可以查看失败的登录,看看是否有未经过允许的个人设法访问这个服务器。如果可能的话,监视SQL记录并且使用NETSEND或者电子邮件在SQL中设置报警。
8.为操作系统和SQL保持最新的补丁更新和服务包。某些选项可以参考确保IIS安全的工具。
9.保护任何扩展的存储过程。控制存储过程对数据的访问,批准访问这些数据,而不是对数据本身提供全面的db_datareader和db_datawriter许可。
10.使用设置工具修改标准的SQL服务器端口,关闭默认端口1433。让你的网络管理员打开新的端口。
11.确保everyone组无SQL服务器注册表键的写权。