通过本案例可以学习到:
扫描MSSQL密码的一种方法;
通过SQLcmd连接数据库并在Sqlcmd提示符下执行各种命令。
SQL Server 2000数据库一般都是安装在Server操作系统中的,在网络入侵过程中,对数据库的攻击也是典型的攻击手段之一;加之目前市面上很多安全检测和入侵软件均具有数据库密码扫描功能,一旦获取了数据库中的sa用户的密码,入侵者便可以执行添加用户等危险命令,可以很容易地被入侵者完全控制。常见的数据库攻击主要有以下几种。
(1)通过互联网直接连接进行攻击。数据库要正常使用必须开放1433(1434)或者指定其他一个端口,这些端口在互联网上都可以探测到。如果没有对IP地址做限制,则在互联网上的任何用户都可以访问这台服务器的1433端口,SQL Slammer蠕虫就是针对SQL服务器的漏洞来实施攻击的,这些直接的攻击能够导致拒绝服务攻击、缓存溢出和其他攻击。
(2)安全漏洞扫描。安全漏洞扫描通常指针对操作系统、网络应用程序或者数据库系统本身的弱点进行扫描。攻击者在安全扫描过程中可以很轻松地发现没有使用SQL安全补丁、互联网信息服务(IIS)设置弱点以及SNMP(简单网络管理协议)等漏洞,并且实施攻击,从而导致数据库被攻破。入侵者在攻击过程中可能使用公开的工具,也有可能使用专用工具,还有可能利用一些大型公司提供的安全扫描程序,例如Qualys公司的普通扫描工具QualysGuard,SPI Dynamics公司的网络应用程序扫描工具WebInspect等。
(3)列举SQL服务器解析服务攻击。Chip Andrews的"SQLPing v 2.5"可用来查看SQL服务器系统、查看数据库实例以及确定版本编号等。当长时间的SQL服务器请求发送到UDP端口1434的广播地址的时候,会出现缓存溢出问题。
(4)破解SA密码。攻击者可以通过破解SA密码的方法进入SQL服务器数据库。Application安全公司的AppDetective和NGS软件公司的NGSSQLCrack等商业性工具软件都有破解SA密码的功能,还有一些其他扫描工具软件也可以很好地破解SA密码,在下面的案例中我们会着重介绍如何扫描SA密码并实施完全控制的方法。
(5)直接利用安全漏洞攻击。可以利用Metasploit等工具软件直接实施攻击,它是利用在正常的安全漏洞扫描过程中发现的安全漏洞来实施攻击的。这种攻击手段非常有效,攻击者还可利用这种手段突破系统、从事代码注入或者取得非经授权的命令行访问权限。
(6)SQL注入攻击。SQL注入攻击是目前网络上最为流行的一种攻击,它主要通过构建SQL语言脚本来实施攻击。流行的SQL注入攻击工具有很多种,例如教主的HDSI3.0版、明小子的Domain3.5等,利用这些工具来攻击,操作简单。
(7)Google hacks。Google hacks利用强大的Google搜索引擎搜出可公开访问的系统泄露的SQL服务器的错误,如"Incorrect syntax near",黑客能够使用Google找到密码、网络服务器中的安全漏洞、基本的操作系统、公开提供的程序以及其他能够用来攻破SQL服务器系统的东西。
(8)熟读网站源代码寻找0day。目前很多网站的BBS、Blog、文章系统、内容管理系统都是使用公开发行的版本,通过阅读这些公开的程序源代码,研究和分析系统代码中存在的问题,这些问题极有可能是0day,找到以后就可利用并实施攻击和控制。下面是使用Hscan扫描MSSQL密码并实施攻击的一个案例,具体步骤如下。
设置Hscan,运行Hscangui程序后,分别设置一个扫描IP端的起始IP和结束IP,然后在扫描模块中只选中"check MSSQL weak accounts"选项,如图3-24所示,设置完毕后,在菜单中单击"start"命令进行扫描。
 |
图3-24 设置扫描MSSQL弱密码模块 |
查看扫描结果。在Hscan扫描中有三个地方存放扫描结果,一个是Reports文件夹下的HTML文件,一个是log文件夹下的Hscan.log,最后一个是在HScan扫描窗口左下方区域,该区域中显示了IP地址、用户名称(username)、密码(password)以及类型(type),如图3-25所示。
 |
(点击查看大图)图3-25Hscan的扫描结果 |
说明
① Hscan.log文件是每次扫描进行内容完全覆盖,不保留以前的扫描记录,因此每一次扫描结束后,必须更改文件名称或者另存为其他文件。
② 关闭Hscangui程序后,Hscan扫描区域左下方的扫描结果会自动清除。
【责任编辑: 云霞 TEL:(010)68476606】
|