文章出處

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

 


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()