问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

SQL server 2008中有个触发器被加密,怎么破解触发器?

发布网友 发布时间:2022-04-11 18:31

我来回答

1个回答

热心网友 时间:2022-04-11 20:01

J老板写的解密存储过程的代码,把其中的procere 通通替换成 trigger,然后试试看

记得要备份

------------------------sql2000大于40000的-----------------
原作:j9988 号:J老师
create PROCEDURE sp_decrypt_sp (@objectName varchar(50))
AS
begin
declare @objectname1 varchar(100)
declare @sql1 nvarchar(4000),@sql2 nvarchar(4000),@sql3 nvarchar(4000),@sql4 nvarchar(4000),@sql5 nvarchar(4000),@sql6 nvarchar(4000),@sql7 nvarchar(4000),@sql8 nvarchar(4000),@sql9 nvarchar(4000),@sql10 nvarchar(4000)
DECLARE @OrigSpText1 nvarchar(4000), @OrigSpText2 nvarchar(4000) , @OrigSpText3 nvarchar(4000), @resultsp nvarchar(4000)
declare @i int , @t bigint
declare @m int,@n int,@q int
set @m=(SELECT max(colid) FROM syscomments WHERE id = object_id(@objectName))
set @n=1
--get encrypted data
create table #temp(colid int,ctext varbinary(8000))
insert #temp SELECT colid,ctext FROM syscomments WHERE id = object_id(@objectName)
set @sql1= 'ALTER PROCEDURE '+ @objectName + ' WITH ENCRYPTION AS '
--set @sql1= 'ALTER PROCEDURE '+ @objectName + ' WITH ENCRYPTION AS '
set @q=len(@sql1)
set @sql1=@sql1+REPLICATE( '- ',4000-@q)
select @sql2=REPLICATE( '- ',4000),@sql3=REPLICATE( '- ',4000),@sql4=REPLICATE( '- ',4000),@sql5=REPLICATE( '- ',4000),@sql6=REPLICATE( '- ',4000),@sql7=REPLICATE( '- ',4000),@sql8=REPLICATE( '- ',4000),@sql9=REPLICATE( '- ',4000),@sql10=REPLICATE( '- ',4000)
exec(@sql1+@sql2+@sql3+@sql4+@sql5+@sql6+@sql7+@sql8+@sql9+@sql10)
while @n <=@m
begin
SET @OrigSpText1=(SELECT ctext FROM #temp WHERE colid=@n)
set @objectname1=@objectname+ '_t '
SET @OrigSpText3=(SELECT ctext FROM syscomments WHERE id=object_id(@objectName) and colid=@n)
if @n=1
begin
SET @OrigSpText2= 'CREATE PROCEDURE '+ @objectName + ' WITH ENCRYPTION AS '--
set @q=4000-len(@OrigSpText2)
set @OrigSpText2=@OrigSpText2+REPLICATE( '- ',@q)
end
else
begin
SET @OrigSpText2=REPLICATE( '- ', 4000)
end
--start counter
SET @i=1
--fill temporary variable
SET @resultsp = replicate(N 'A ', (datalength(@OrigSpText1) / 2))

--loop
WHILE @i <=datalength(@OrigSpText1)/2
BEGIN
--reverse encryption (XOR original+bogus+bogus encrypted)
SET @resultsp = stuff(@resultsp, @i, 1, NCHAR(UNICODE(substring(@OrigSpText1, @i, 1)) ^
(UNICODE(substring(@OrigSpText2, @i, 1)) ^
UNICODE(substring(@OrigSpText3, @i, 1)))))
SET @i=@i+1
END
--drop original SP
--EXECUTE ( 'drop PROCEDURE '+ @objectName)
--remove encryption
--preserve case
SET @resultsp=REPLACE((@resultsp), 'WITH ENCRYPTION ', ' ')
SET @resultsp=REPLACE((@resultsp), 'With Encryption ', ' ')
SET @resultsp=REPLACE((@resultsp), 'with encryption ', ' ')
IF CHARINDEX( 'WITH ENCRYPTION ',UPPER(@resultsp) )> 0
SET @resultsp=REPLACE(UPPER(@resultsp), 'WITH ENCRYPTION ', ' ')
--replace Stored procere without enryption
print @resultsp
--execute( @resultsp)
set @n=@n+1
end
drop table #temp
end
GO

适合40000字符。
每次4000 print出来,自已贴。
切记:我见过的解过程都是对原过程进行破坏。破解前一定要备份!!!!
超过40000的,自已加SQL(我上面用SQL.SQL2--SQL10)
超长的可加SQL11--sql20........
祝你好运!

另:还有个工具,以前用过收藏的,不知道2008管用不,地址如下:
sql server 2008中存储过程怎么解密

--提取对象的类型如是存储过程还是函数,如果是触发器,还要得到其父对象的名称select @objtype=type,@parentname=object_name(parent_object_id)from sys.objects where [object_id]=object_id(@procedure)-- 从sys.sysobjvalues里提出加密的imageval记录SET @real_01=(SELECT top 1 imageval FROM sys.sysobjva...

如何绕过SQL Server登录触发器限制

1.使用SSMS以sysadmin身份登录到新的SQL Server实例。2.首先,让我们使用以下命令来获取连接到SQL server实例的主机名。默认情况下,它将向我们返回连接到SQL Server实例的工作站的主机名。SELECT HOST_NAME()3.创建一个仅允许白名单主机名连接的登录触发器。并按照下图所示执行该触发器。-- Create our ...

如何用SQL语句删除 SQL Server 中的触发器

exec sp_helptext '触发器名'--删除触发器:基本语句如下:drop trigger trigger_name

sql server 2008怎么停止触发器

-- 查看数据库已有触发器use yourdatabasegoselect * from sysobjects where xtype='TR'-- 查看单个触发器exec sp_helptext '触发器名'--删除触发器:基本语句如下:drop trigger trigger_name

关于SQL SERVER 2000,一个表的触发器被加密

触发器有一个Encryption选项,把这个选项改成false,就可以查看代码了。

SQL SERVER如何应用DLL触发器

1、首先打开SQL SERVER 2008数据库管理工具,然后选择服务器,选择Windows身份验证进行连接,如下图所示 2、进入管理工具以后,定位要操作的数据库,然后点击新建查询,如下图所示 3、在新建查询界面中,通过create trigger语句创建DLL触发器,当进行数据库删除和修改的时候进行触发,如下图所示 4、语句编写...

sql server 2008 触发器代码执行过程,发现错误怎么终止执行,不再执行...

不会做后面的工作,而且前面的事务也应该一起回滚了。楼上说的那个是抓住错误类型。在这里没用。如果你想抓的话,我建议你用print,每个begin和end之间写上一个特殊的内容,每次都用print显示出来了,这样到了你那个错误的位置的时候,你就能明显看到了。至少在显示的前后就是了。祝你好运。

sql2008 怎么调试触发器

在项目中,单击右键选择"添加"-&gt;"触发器",代码如下(validateyear.cs):using system;using system.data;using system.data.sqlclient;using microsoft.sqlserver.server;public partial class triggers { // 为目标输入现有表或视图并取消对特性行的注释 [microsoft.sqlserver.server.sqltrigger (name="...

sql server 2008的触发器:以下是一个触发器,请问以下代码中的if Update...

UPDATE 返回一个布尔值,指示是否对表或视图的指定列进行了 INSERT 或 UPDATE 尝试。可以在 Transact-SQL INSERT 或 UPDATE 触发器主体中的任意位置使用 UPDATE(),以测试触发器是否应执行某些操作。对于你的触发器.如果 UPDATE Student SET StudentID = ... WHERE ...那么, 这个时候 U...

SQL触发器SQL触发器语法

SQL触发器是数据库中的一种机制,通过特定的SQL语句定义,用于在特定的数据修改操作(INSERT、DELETE、UPDATE)后自动执行特定的操作。触发器名称需唯一,符合标识符规则,可以使用WITH ENCRYPTION加密并设置NOT FOR REPLICATION防止复制过程中的触发。触发器通常包含Transact-SQL语句,用于检查或修改数据,但不会...

sqlserver触发器在哪 sqlserver建立触发器 sqlserver修改触发器 sqlserver查看触发器 sqlserver触发器实例 sqlserver触发器分类 sql server触发器代码 sqlserver触发器修改表 sql server触发器的作用
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
上海2013中考二模浦东新区和静安区市重点参考录取分数线 2012上海中考自荐 腾讯服务器崩溃了吗 淘宝店铺名怎么工商注册 开淘宝店需要办理工商营业登记册吗?怎么办理? 淘宝开店需要个体户工商证吗?怎么开店? 腾讯垃圾服务器 西安水岸龙庭怎么样?好不好?值不值得买? 任何人都可以发腾讯黄金红包吗? 夫妻是否可以单方面强制离婚 SQL Server 2000 触发器 存储过程 急需!!! 跪求一个能破解SQL2000所有存储过程,触发器,等的软件。(我要不带字节限制的) SQL索引/键,全文索引,XML索引,空间索引各有什么作用? SQL唯一索引,主键索引,聚焦索引,非聚焦索引,全文索引 SQL2008中索引类型为聚集,非聚集,主XML,空间各是什么意思? SQL Server 2008 疑问 sql中把年月日和小时分组合成一个日期字段 group by按月分组统计(SQL) Microsoft windows Search Indexer 已停止工作并已关闭. Microsoft Windows Search索引器停止工作怎么解决啊 Microsoft window search 索引器停止工作怎么办 microsoft search停止工作是怎么回事? “本地计算机上的Windows Search服务启动后停止”怎么解决啊? sqlserver 备份数据库,日志文件会增大吗 sqlserver日志变大会使cpu增加吗 sqlserver 事物复制日志太大怎么解决 SQLServer里面有@@ERROR这个函数捕获错误,Oracle有什么函数可以捕获吗? mysql中有没有类似sqlserver中的@@error全局变量用来标记上一操作的错误信息? SqlServer中的@@ERROR在Mysql中是什么 MSSQL 2005 SQL语句 怎么获取某个字段的数据是在哪个表中? 关于SQL2000上的存储过程和触发器 存储过程的触发器 SQL Server数据库出现超出了存储过程、函数、触发器或视图的最大嵌套层数(最大层数为 32)这个问题 不会生成一个系统,就是链接数据库,还有sql语句不会写,不会建立视图,触发器和存储过程 SQL Server数据库中between、and的使用 MSSQL中 select …… where &lt;属性列名&gt; between&lt;属性列名1&gt; and&lt;属性列名&gt; 怎么使用的?是怎么查询的? mysql 里 between and 能用在 【不是数字】 的地方吗 sql 中between是否能用来做连接? SQL中的not between and 包括等号吗 sql 中 between and 字段中含有 特殊符号 SQLServer中有没有输出提示信息的方法 我使用oledb连接sqlserver数据库时出现以下提示是怎么回事 sqlserver提示超过最大前缀 如何解决SQL 2005连接失败问题,提示SQL server 不存在或是拒绝访问 eclipse连接sqlserver错误提示 打开电脑,弹出对话框提示sqlserver.exe 错误?? 老提示未与信任 SQLSERVER 连接相关联 MSSQL提示以前的某个程序安装以挂起 数据库删除重复数据保留一条数据 sql 语句 查询 为空的