[转帖]Mssql和Mysql的安全性分析_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1900 | 回复: 0   主题: [转帖]Mssql和Mysql的安全性分析        下一篇 
lxk
注册用户
等级:上尉
经验:547
发帖:109
精华:0
注册:2011-8-18
状态:离线
发送短消息息给lxk 加好友    发送短消息息给lxk 发消息
发表于: IP:您无权察看 2014-12-11 15:18:17 | [全部帖] [楼主帖] 楼主

数据库是电子商务、金融以及ERP系统的基础,通常都保存着重要的商业伙伴和 

客户信息。大多数企业、组织以及政府部门的电子数据都保存在各种数据库中,他们 

用这些数据库保存一些个人资料,还掌握着敏感的金融数据。但是数据库通常没有象 

操作系统和网络这样在安全性上受到重视。数据是企业,组织的命脉所在,因此选择 

一款安全的数据库是至关重要的。大型网站一般使用oracle或DB2,而中小型网站大 

多数使用更加灵活小巧的mssql数据库或者mysql数据库。那么,在同样的条件下,微 

软的mssql和免费的mysql哪个更加安全呢?

我在我的机子上面用管理员帐号默认安装了mssql和mysql以便在相同的情况下测 

试他们的安全性。我的系统配置如下:操作系统Microsoft windows 2000 Version5.0, 

安装了sp4,ftp服务和iis服务,支持asp和php。系统只有一个管理员帐号admin,guest 

帐号没有禁用。

  一.系统内部安全性分析

1.mysql数据库权限控制问题

mysql的权限控制是基于mysql这个数据库的,叫做授权表,一共包括包括六个表 

columns_priv,db,func,host,tables_priv和user。先使用desc user命令查看非 

常重要的user表的结构以便查询内容,现在可以查看他的权限设置了。 

使用命令select host,user,password,delete_priv,update_priv,drop_priv from user; 

这个命令查看了几个比较危险的权限,显示结果如下: 

mysql> select host,user,password,delete_priv,update_priv,drop_priv from user;
+-----------+------+------------------+-------------+-------------+-----------+
| host | user | password | delete_priv | update_priv | drop_priv |
+-----------+------+------------------+-------------+-------------+-----------+
| localhost | root |0e4941f53f6fa106 | Y | Y | Y |
| % | root | | Y | Y | Y |
| localhost | | | Y | Y | Y |
| % | | | N | N | N |
+-----------+------+------------------+-------------+-------------+-----------+
4 rows in set (0.00 sec)


第一条表示在本机使用root用密码登陆,拥有删除记录,修改记录,删除表等权限, 

好,这是安全的。第二条表示在任何主机使用root不需密码登陆,拥有删除记录, 

修改记录,删除表等权限。第三条表示在本机匿名登陆,拥有删除记录,修改记 

录,删除表等权限。最后条表示可以再任何主机匿名登陆,但是没有任何权限。 

显然,第二,三,四都是不安全的!第二条不用说,就第三条而言,就算你在本地 

是guest权限,但是也可以登陆mysql数据库,而且拥有全部权限。这样,就可以对数 

据库为所欲为了。 

解决方法:如果你不需要远程维护,删除掉第二条,delete from user where 

host="%" and user="root";或者给它加个强壮的密码。删除第三条,delete from 

user where host="localhost" and user="";


--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论