65.9K
CodeProject 正在变化。 阅读更多。
Home

对内置 MS SQL Server WITH ENCRYPTION 机制的简单技巧

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.20/5 (3投票s)

2012 年 3 月 26 日

CPOL

2分钟阅读

viewsIcon

39945

本文介绍了一种简单的技巧,用于破解内置的 MS SQL Server WITH ENCRYPTION 机制。

SQL 专业人士知道,通过 WITH ENCRYPTION T-SQL 关键字实现的内置 MS SQL Server 加密机制是无效的,并且很容易被破解。 更多详细信息请参见 Google 的搜索结果,例如:

{3S} SQL Smart Security 是一个可以安装在 Microsoft SQL Server Management Studio (SSMS) 2005、2008、2008 R2、2012 及其各自 Express 版本的插件。 它使软件公司能够为数据库对象创建安全的内容(注意:目前,在 1.1 版本中只能保护存储过程的内容,但在未来,还将考虑用户定义的函数、触发器和视图)。 与 SQL Server 内置的 WITH ENCRYPTION 机制相比,它为那些希望通过在数据库服务器端创建应用程序逻辑来保护其大量获得的专业技术的软件公司带来了更高水平的保护。 

目前所有可用的 SQL 解密器都无法破解 {3S} SQL Smart Security。 最重要的是,所有加密的数据库对象仍然可以执行! 此外,安装 {3S} SQL Smart Security 不会影响任何设置,也不会完全替换默认的加密选项。 开发人员(最终用户)始终可以选择使用哪种加密设置。 

请参见以下示例,了解通过内置 MS SQL Server WITH ENCRYPTION 机制进行简单破解的简短故事。

警告:在以下示例中,将使用 Devart(前身为 Core Lab)软件开发公司提供的名为 dbForge SQL Decryptor 的优秀免费工具,仅用于出于教育目的解密存储过程。

built-in WITH ENCRYPTION hack – stored procedure encryption by means of built-in MS SQL Server WITH ENCRYPTION mechanism

图 1:内置 WITH ENCRYPTION 破解 – 通过内置 MS SQL Server WITH ENCRYPTION 机制加密存储过程

built-in WITH ENCRYPTION hack – lock on encrypted stored procedure by means of built-in MS SQL Server WITH ENCRYPTION mechanism

图 2:内置 WITH ENCRYPTION 破解 – 通过内置 MS SQL Server WITH ENCRYPTION 机制锁定加密的存储过程

built-in WITH ENCRYPTION hack – stored procedure decrypting by means of dbForge SQL Decryptor

图 3:内置 WITH ENCRYPTION 破解 – 通过 dbForge SQL Decryptor 解密存储过程

built-in WITH ENCRYPTION hack – decrypted stored procedure by means of dbForge SQL Decryptor

图 4:内置 WITH ENCRYPTION 破解 – 通过 dbForge SQL Decryptor 解密的存储过程

通过将 dbForge SQL Decryptor 应用于通过内置 MS SQL Server WITH ENCRYPTION 机制加密的存储过程,可以发现存储过程主体是纯源代码文本!!!

built-in WITH ENCRYPTION hack – encrypted stored procedure by means of {3S} SQL Smart Security

图 5:内置 WITH ENCRYPTION 破解 – 通过 {3S} SQL Smart Security 加密的存储过程

built-in WITH ENCRYPTION hack – decrypted {3S} SQL Smart Security stored procedure by means of dbForge SQL Decryptor

图 6:内置 WITH ENCRYPTION 破解 – 通过 dbForge SQL Decryptor 解密的 {3S} SQL Smart Security 存储过程

通过将 dbForge SQL Decryptor 应用于通过 {3S} SQL Smart Security 加密的存储过程,可以发现存储过程主体不是纯源代码文本,而仅包含 {3S} SQL Smart Security 元数据!!!

其他参考

© . All rights reserved.