常见SQL Server 2000漏洞及其相关利用(7)
来源:yesky 发布时间:2007-10-01 14:45:00
3)、测试
设置好后,用aaa用户登陆"SQL 查询分析器",如图21,执行exec xp_cmdshell 'net user user1 /add',出现了期待的结果,没有权限执行。
图21
接着执行Select name FROM sysdatabases where dbid>6,期待的结果是没有权限执行,可实际的结果和图10的查询结果一模一样,aaa用户不是没有master库的权限吗?aaa用户除了不能访问自己建的库wz_cxxt_new外,其它的库都能访问,问题出在哪呢?
问题出在public 角色,下面这段话是SQL Server帮助中写的。
public 角色是一个特殊的数据库角色,每个数据库用户都属于它。public 角色:
· 捕获数据库中用户的所有默认权限。
· 无法将用户、组或角色指派给它,因为默认情况下它们即属于该角色。
· 含在每个数据库中,包括 master、msdb、tempdb、model 和所有用户数据库。
· 无法除去。
如图22是master库中的"public"角色,双击"public",在界面中单击"权限",出现图23界面,可以看到该角色具有sysdatabases的访问权限。可以看到权限分得非常细,有select、insert、update、delete等,如图24,把权限改为禁止,再执行Select name FROM sysdatabases时出现了"拒绝了对对象 'sysdatabases'(数据库 'master',所有者 'dbo')的 Select 权限。"的提示。
图22
图23
图24
Public角色默认没有执行扩展存储过程的权限,但可以赋予该角色执行的权限,有访问库的权限,也可以去掉。看到这,是不是觉得非常麻烦,本来权限的设置就是个 * 剑,设置得过于宽松会有安全漏洞,过于严格在程序运行时可能会出问题,本文无法给出一个彻底的解决方案,只要在懂得原理的基础上,在实践中不断摸索才能理出一个最佳方案。


猜你喜欢
- 前言Node 给前端开发带来了很大的改变,促进了前端开发的自动化,我们可以简化开发工作,然后利用各种工具包生成生产环境。如运行sass sr
- 场景描述今天在将 Hive 表同步到 MySQL 之后,其中有一列是唯一列,但是在 MySQL 中查询的时候 count 与 distinc
- 在Python教程里,针对默认参数,给了一个“重要警告”的例子:def f(a, L=[]): L.append(a) &nbs
- 1. 基本使用remove() 函数可以删除列表中的指定元素语法list.remove( element )参数element:任意数据类型
- 一、var声明的变量会挂载在window上,而let和const声明的变量不会:var a = 100;console.log(a,wind
- 感谢AKA及作者。Perl 中的正则表达式正则表达式的三种形式正则表达式中的常用模式正则表达式的 8 大原则 &nbs
- 举例: 如:在字段名处输入:username,password,email,telphone 注意:不同的字段名用英文逗号隔开,且不支持星号
- Swagger是一个API开发者的工具框架,用于生成、描述、调用和可视化RESTful风格的Web服务。总体目标是使客户端和文件系统服务器以
- 1、下载安装MySQLdb类库http://www.djangoproject.com/r/python-mysql/2、修改setting
- vue2.0里,不再有自带的过滤器,需要自己定义过滤器。定义的方法如下: 注册一个自定义过滤器,它接收两个参数:过滤器 ID 和过滤器函数。
- 前言Python可以操作Excel的模块不止一种,我习惯使用的写入模块是xlwt(一般都是读写模块分开的)python中使用xlwt操作ex
- 本文实例分析了LINUX下Oracle数据库用户创建方法。分享给大家供大家参考,具体如下:1)登录linux,以oracle用户登录(如果是
- 一、当我们用Python matplot时作图时,一些数据需要以百分比显示,以更方便地对比模型的性能提升百分比。二、借助matplotlib
- python cron定时任务触发接口自动化巡检定时任务触发方式有几种类型,日常的工作中,研发同学运用比较多的就是cron方式查了一下APS
- 获取当前文件的路径:from os import path d = path.dirname(__file__) #返回当前文件
- 做一个将本地图片上传到mysql数据库的小实例,顺便也下载下来到桌面检测是否上传成功。在写代码之前得先在数据库中建立image表,用来存储图
- asp判断网址格式是否合法代码 具体实现办法见下列代码:<% function checki
- 录一段音频,把它的音高改变50次并把每一个新的音频匹配到键盘的一个键位,你就能把电脑变成一架钢琴!一段音频可以被编码为一组数值的数组(或者列
- 使用mysql5.5,突然root密码忘记,怎么也登录不了,很急人,该怎么解决呢?下面通过本文给大家介绍mysql5.5忘记root密码的解
- Pandas查询数据的几种方法df.loc方法,根据行、列的标签值查询df.iloc方法,根据行、列的数字位置查询df.where方法df.