讲解SQL Server数据库触发器的安全隐患

作者:佚名 来源:赛迪网 时间:2009-02-24 17:46:00 

触发器权限和所有权

CREATE TRIGGER 权限默认授予定义触发器的表所有者、sysadmin 固定服务器角色成员以及 db_owner 和 db_ddladmin 固定数据库角色成员,并且不可转让。

需要的环境

本文需要的环境是已经获取了sql服务器的以上其中一个权限,目的是为了留下隐蔽的后门,不被管理员发现。即使发现了也是加密的(可以破解,不过有些管理员不懂,也不会注意,相关信息google下)。

触发器是在对表进行插入(insert)、更新(update)或删除(delete)操作时,自动执行的存储过程。最常见用于执行敏感数据操作时做历史记录。

本文以动网论坛dvbbs为例,我们已经拿到了db_owner权限(注意:并不是说dvbbs本身有漏洞)。因为只是db_owner权限,所以读者想去执行“xp_cmdshell”,就不在本文范围了,相信读过本文后,只要有系统权限,做个系统的后门也是简单的。先回想一下通常我们使用数据库时要做什么和关心什么。

为什么要使用触发器作后门?

管理员首先会把sql文件执行下,然后导入mdb的内容,平时使用顶多备份下,还原下。通常不会有人去看触发器的内容,查看触发器可以使用命令“exec sp_helptrigger 'dv_admin'”,或者在企业管理器中选择“管理触发器”。因为动网根本没有用到触发器,也没有提到触发器,所以动网的管理员不会去看的。于是我们在里面写的内容就相对安全了。

思路

触发器主要是用来做历史记录的,当然可以把管理员更改密码和添加用户的历史记录下。放进一个管理员通常不会注意的、普通用户又可以看到的地方。

动网的密码有md5加过密的,加密的操作是asp程序在服务器上来完成的,等数据库拿到数据的时候已经是加过密的了。但是动网同时把密码以明文方式放入dv_log表中,就给了我们方便。只要拿到dv_log表中l_content字段的内容,然后判断是否管理员在执行敏感操作,后门思路就形成了。

标签:SQL,Server数据库,触发器,安全隐患
0
投稿

猜你喜欢

  • windows环境下mysql数据库的主从同步备份步骤(单向同步)

    2024-01-19 16:53:34
  • Python爬虫爬取微博热搜保存为 Markdown 文件的源码

    2023-03-03 23:30:29
  • python3+selenium自动化测试框架详解

    2022-01-29 18:26:01
  • 简单易懂Pytorch实战实例VGG深度网络

    2021-09-07 19:47:24
  • Python基于pillow库实现生成图片水印

    2021-08-01 10:45:38
  • GoLang并发机制探究goroutine原理详细讲解

    2023-08-30 05:41:33
  • 详解如何让页面与 iframe 进行通信

    2024-04-19 09:42:44
  • JS完美实现对象克隆

    2008-08-03 16:51:00
  • MySQL 5.5 range分区增加删除处理的方法示例

    2024-01-22 21:16:19
  • Python根据输入参数计算结果的实例方法

    2021-12-15 08:30:45
  • Python 创建新文件时避免覆盖已有的同名文件的解决方法

    2023-08-23 23:44:46
  • Laravel框架路由管理简单示例

    2023-11-14 13:37:26
  • IIS上设置301跳转,实现ASP带参数跳转

    2011-04-08 12:52:00
  • PL/SQL Number数字类型函数

    2010-07-16 13:09:00
  • 利用python numpy+matplotlib绘制股票k线图的方法

    2022-12-16 07:21:52
  • Oracle数据库快照的使用

    2010-07-28 13:32:00
  • Python基于pygame模块播放MP3的方法示例

    2023-09-22 12:33:19
  • PHP 危险函数全解析

    2023-11-20 15:36:12
  • python select.select模块通信全过程解析

    2022-05-23 13:13:10
  • SQL Server2019数据库之简单子查询的具有方法

    2024-01-21 23:27:31
  • asp之家 网络编程 m.aspxhome.com