怎么利用SQL SERVER的触发器制作后门

技术怎么利用SQL SERVER的触发器制作后门小编给大家分享一下怎么利用SQL SERVER的触发器制作后门,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起

边肖将与大家分享如何使用SQL SERVER的触发器来制造后门。相信大部分人还不太了解,所以分享这篇文章给大家参考。希望你看完这篇文章会有很多收获。我们一起来看看吧!

触发权限和所有权

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

所需环境

本文需要的环境是已经获得了sql server的上述权限之一,以便留下一个隐藏的后门而不被管理员发现。即使被发现,也是加密的(可以破解,但有些管理员不了解,不会关注,相关信息,谷歌)。

文本:

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

本文以dvbbs为例,我们获得了db_owner权限(注意:并不是dvbbs本身就有)。因为它只是db_owner权限,所以如果读者想执行“xp_cmdshell”,就不在本文的讨论范围之内了。看完这篇文章,相信只要有系统权限,做系统的后门很简单。回想一下我们在使用数据库时通常做什么和关心什么。

为什么要用触发器做后门?

管理员将首先执行sql文件,然后导入mdb的内容,MDB通常最多用于备份和恢复。通常,没有人会看触发器的内容。要查看触发器,可以使用命令“exec sp _ help trigger‘dv _ admin’”,或者在企业管理器中选择“管理触发器”。因为根本没有触发器,也没有提到触发器,所以移动网络的管理员不会看。所以我们在里面写的东西相对安全。

思考

触发器主要用来做历史记录。当然,您可以记录管理员更改密码和添加用户的历史。放在管理员平时不注意,普通用户也能看到的地方。

移动网络的密码用md5加密。加密操作是由服务器上的程序完成的,并且在获得数据时已经加密。但是,我们可以方便地将密码以明文形式同时放入dv_log表中。只要我们得到dv_log表中l_content字段的内容,然后判断管理员是否在执行敏感操作,后门思想就会形成。

使用过程代码分析

代码片段:创建触发器。

创建触发器dv_admin_history

在Dv_log上

通过加密

对于insertas

如同

触发器需要建立在Dv_log表上,明文密码放在这里。我们不知道管理员密码设置了多久。我们只能取出所有有密码的字段。触发器最好是加密的。加密后,即使管理员看到了,也不知道这里有什么。在插入数据时执行触发器。

提取的值应该放在普通用户可以看到的地方,这样只要有普通用户的权限,就可以看到密码。在动态网络数据库中,能够存储数据的最大字段管理员通常会看到它。所以要找一个管理员不会看,其他用户不会注意的地方。

我选择把它放在一个新创建的用户(以下简称“王采”,行行好)的用户信息里,这样我们登录的时候就可以看到了(注意:登录的时候是有日志的,记录了最后一次登录的ip,我们自己可以解决)。

以下字段适合存储:

1.Userphoto,字段类型:varchar(255)。记录了王采的照片地址。可以存储小于255的数据。

2.Usersign,字段类型:varchar(255)。王采的签名,如果放在这里,不能由王采张贴,否则后果自负(张贴会显示签名,地球上的每个人都可以看到)。

3.Useremail,字段类型:nvarchar(255)。王采的电子邮件在使用时需要转换。

4.Userinfo,字段类型:文本。王采的用户档案。这个领域很特别,有很多"",每一对" "都有不同的含义。互联网是懒惰的。为了避免字段太多,把一堆信息放在一个字段里,用“”把它分开。查询某一项信息时,拿出来再分,这就是需要的数据。

需要解决的问题:

1.如果都满了。

理论上,如果我们在第一个字段中看到了什么,我们应该做笔记并删除它们。触发器将自动检查大小并继续使用。再次,本文中的例子是针对移动网络的,我们应该分析具体的问题。

2.管理员日志中有许多日志。如何判断是在记录密码的更改?

当管理员操作用户时,他当然会在user.asp或admin.asp操作,所以我们判断条件需要是:

从插入的l_type=1和(l_touser=' user.asp '或l_touser=' admin.asp ')中选择@passinfo=l_content

当l_touser是user.asp或admin.asp时,表示管理员正在操作(查看、更新、删除)用户或管理员。当l_type=1时,表示已经执行了更新操作,并且l_content字段中有密码(如果管理员更新了密码或者创建了新账户)。因此,在插入的表中查询l_content,并将其分配给@passinfo。

以上就是《如何使用SQL SERVER触发器制作后门》一文的全部内容。感谢您的阅读!相信大家都有一定的了解,希望分享的内容对大家有所帮助。想了解更多知识,请关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/102060.html

(0)

相关推荐

  • ADO.NET中如何使用连接模式访问数据库中的数据

    技术ADO.NET中如何使用连接模式访问数据库中的数据本篇内容介绍了“ADO.NET中如何使用连接模式访问数据库中的数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处

    攻略 2021年12月3日
  • apache pulsar 管理界面(国内哪些公司在使用apachepulsar)

    技术Apache Pulsar的系统架构及设计理念是什么今天就跟大家聊聊有关Apache Pulsar的系统架构及设计理念是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可

    攻略 2021年12月15日
  • 调表不调账,财务)

    技术调表不调账,财务) 调表不调账(财务)账里的数字一定要在报表中有所体现,报表中的数字却不一定要跟账完全一致,听起来不可思议,其实是有道理的,主要原因是两者的功能不完全一样。
    财务报表是编制给管理层和

    礼包 2021年12月6日
  • Python代码里面如何进行设置IP切换头

    技术Python代码里面如何进行设置IP切换头这篇文章给大家分享的是有关Python代码里面如何进行设置IP切换头的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Pythonrequests

    攻略 2021年11月30日
  • BZOJ从入门到入土

    技术BZOJ从入门到入土 BZOJ从入门到入土[Jsoi2010]连通数:有向图求每一个点到能到达的点的个数的和(包括自己到自己)SCC+bitset+dp
    #includebits/stdc++.h

    礼包 2021年11月29日
  • 如何浅析mysql中的double write

    技术如何浅析mysql中的double write这篇文章给大家介绍如何浅析mysql中的double write ,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。介绍double write之前我们

    攻略 2021年11月16日