SQL Server密码管理的六个危险判断
发布时间:2008-10-23 13:57:00
管理SQL Server内在的帐户和密码时,我们很容易认为这一切都相当的安全。但实际上并非如此。在这里,我们列出了一些对于SQL Server密码来说非常危险的判断。
当管理SQL Server内在的帐户和密码时,我们很容易认为这一切都相当的安全。毕竟,你的SQL Server系统被保护在防火墙里,而且还有Windows身份验证的保护,所有用户都需要密码才能进入。这听起来非常的安全,特别是当你认为所有人都这么做的时候。可实际上,它并不像我们想象得那么安全。
在这里,我们列出了一些对于SQL Server密码来说非常危险的判断:
密码测试无需计划
当进行测试时,直接就开始尝试破解密码将是一个很大的错误。无论你是在本地还是通过互联网进行测试,我都强烈建议你获得权限,并建议一个帐户被锁定后的回滚方案。最后你要做的就是确保在账户被锁定时,数据库用户无法进行操作,而且与之相连的应用程序也将无法正常运行。
通过互联网,密码仍然是安全的
对于通过混合方式实现的SQL Server,你可以很容易的通过一些分析软件(比如OmniPeek、Ethereal)立刻从网上抓到它的密码。同时,Cain and Abel可以用来抓取基于TDS的密码。你可能以为通过内网交换机就可以避免这一问题?然而,Cain的ARP中毒路由功能就可以很轻松的破解它。在大约一分钟之内,这个免费软件就可以攻破你的交换机,并看到本地网络的内部数据交换,从而帮助其它软件更容易的抓取密码。
事实上,问题并没有就此结束。有些误解认为在SQL Server中使用Windows身份验证是很安全的。然而,事实并非如此。上述软件同样可以迅速的从网上抓到Windows、Web、电子邮件等相关的密码,从而获得SQL Server的访问权限。
通过使用密码政策,我们就可以不用测试密码
无论你的密码政策有多严厉,却总会有一些办法可以绕开它。比如现在有一个未进行配置的服务器、一个Windows域外的主机、一个未知的SQL Server或者一些特殊的工具,它们可以破解最强壮的密码。这些东西就可以利用你密码的弱点并是你的代码政策变得无效
另外,同样重要的是,有些测试结果可能会说由于你的密码已经非常强壮,你的数据库很安全,但你千万不要轻信。一定要自己在测试并验证一下,密码缺陷是否还在。尽管你可能会觉得一切都很好,但实际上你可能落掉了一些东西。
既然SQL Server密码是不可重获的,那如果我知道他很强壮、很安全,我有为什么要破解他呢?
事实上,SQL Server的密码是可以重获的。在SQL Server 7和SQL Server 2000中,你可以使用像Cain and Abel或者收费的NGSSQLCrack这种工具来获得密码哈希表,而后通过暴力对其破解进行攻击。这些工具使你可以对SQL Server密码SHA哈希表进行反向工程。尽管破解的结果并不能够保证,但它确实是SQL Server的一个弱点。
我使用MBSA检查过SQL Server密码的缺陷,并没有发现什么严重的问题
Microsoft Baseline Security Analyzer是一个用来根除SQL Server弱点的工具,但他并不完善,特别是在密码破解方面。对于深层的SQL Server和Windows密码破解,我们需要使用第三方软件,如免费的SQLat和SQLninja(可以在SQLPing 3中找到)和Windows密码破解工具,如ElcomSoft's Proactive Password Auditor和Ophcrack。
此外,使用在SQL Server中使用Windows身份验证并不表示你的密码就是安全的。一些人只要了解如何破解Windows密码,在花一些时间,就可以破解你的密码并控制整个网络。特别是,如果他们使用<>Ophcrack's LiveCD来攻击一个物理上不安全的Windows主机,比如笔记本电脑或者易可达的服务器,那将变得更加容易。
你只需担心你主数据库服务器
我们很容易把关注点集中在自己的SQL Server系统上,而忽略了网络中可能有的MSDE、SQL Serve Express和其它一些可能的SQL Server程序。这些系统可能正在使用不安全的默认设置,甚至根本就没有密码。通过使用SQLPing 3这样的工具来对数据库服务器上的这些系统进行攻击,你将很容易地被破解。
IT像其他东西一样,你总是被一些细节所打倒。如果可以抛弃这些对SQL Server密码的危险判断,你必将改善你的SQL Server的安全。
猜你喜欢
- 事件背景最近业务研发反映了一个需求:能不能让现有基于 gin 的 webservice 框架能够自己输出 response 的信息,尤其是
- 今天遇到一个需要用javascript将url中的某些参数替换的需求,想起了不久前从网上淘到了一个parseUrl函数,正好可以借此实现,代
- 抽象工厂模式Abstract Factory Pattern是什么抽象工厂模式是一种创建型模式,它提供了一种创建一系列相关或相互依赖对象的最
- 1.先用 for 循环取for item in l: if isinstance(item ,list): &nb
- 下面写一下,这两个要是有no了,怎么恢复。。 如果是slave_io_running no了,那么就我个人看有三种情况,一个是网络有问题,连
- 如何用net/http构建一个简单的web服务Golang提供了简洁的方法来构建web服务package main import ( &nb
- 本文实例讲述了Python显示进度条的方法,是Python程序设计中非常实用的技巧。分享给大家供大家参考。具体方法如下:首先,进度条和一般的
- 导读:由于banner一般用于专题类网站,在门户网站的二级页面,用户进来之前,在首页已经对主题有一定的了解和认识,所以banner的作用是在
- 实战场景本篇博客为大家介绍一款新的自动化测试工具,效果类似 selenium,但是这个模块年轻。模块名称为 playwright-pytho
- 本文实例讲述了Python使用sax模块解析XML文件。分享给大家供大家参考,具体如下:XML样例:<?xml version=&qu
- 之前我给粉丝们搞过个投票,寻找MySQL中那个最熟悉的陌生人~~MySQL中哪些技术点是你既熟悉又陌生的?前三名和我预料大差不差,分别是
- 本文使用的是最新的FCKeditor 2.3.1版本 官方网站下载: http://ckeditor.com/download[建议直接在官
- <html><head><title>不刷新页面查询的方法</title><meta
- 1 数据概览学生课程成绩:studentID、name、english、chinese、math,存在一定缺失值2 任务定义基于学生课程成绩
- 切片从list或tuple中取部分元素。list = [1, 2, 3, 4]list[0 : 3] # [1, 2, 3]list[-2
- Git合并多次提交有时候需要合并几个提交历史记录为一个提交,该怎么办呢?可以使用 git rebase !也可以使用 g
- python 数据的清理行为实例详解数据清洗主要是指填充缺失数据,消除噪声数据等操作,主要还是通过分析“脏数据”产生的原因和存在形式,利用现
- 本文实例为大家分享了python交互式图形编程的具体代码,供大家参考,具体内容如下#!/usr/bin/env python3# -*- c
- 本文实例为大家分享了python3 pillow模块验证码的具体代码,供大家参考,具体内容如下直接放代码吧,该写的注释基本都写了# -*-
- Python2.7Mac OS抓取的是电影天堂里面最新电影的页面。链接地址: http://www.dytt8.net/html/gndy/