1. 程式人生 > >無法裝載DLL Microsoft原因: 126(找不到指定的模組

無法裝載DLL Microsoft原因: 126(找不到指定的模組

U890帳套引入提示:“無法裝載 DLL Microsoft提示您請誤隨意操作SQL資料庫 以免對起  資料庫造成不必要的麻煩 或該 DLL 所引用的某一 DLL。原因: 126(找不到指定的模組。)。”


由於SQL2000的SA密碼過於簡單導致,被病毒惡意修改系統儲存過程。
需要以下系統儲存過程恢復。
注意:該方案只支援SQL2000

use master

go


--
檢查xp_cmdshell是否被篡改

select * from master..syscomments where object_name(id)='xp_cmdshell' and text<>'xplog70.dll'


go


--
檢查其他儲存過程是否被篡改

select object_name(id), * from master..syscomments where object_name(id) in


('xp_getfiledetails','xp_availablemedia','xp_dirtree','xp_fixeddrives','xp_s

ubdirs',
'xp_fileexist','xp_get_tape_devices','sp_MSgetversion','xp_enumdsn','xp_regr
ead','xp_regwrite','xp_regdeletevalue',
'xp_regaddmultistring','xp_regremovemultistring','xp_regenumkeys','xp_regenu
mvalues','xp_regdeletekey','xp_instance_regread',
'xp_instance_regwrite','xp_instance_regdeletevalue','xp_instance_regaddmulti

string','xp_instance_regremovemultistring',
'xp_instance_regenumkeys','xp_instance_regenumvalues') and text <>N'xpstar.dll'
go
--發現xp_cmdshell被篡改,執行下面語句改回來
--drop procedure xp_cmdshell
--go
--exec sp_addextendedproc N'xp_cmdshell', N'xplog70.dll'
--go
--然後執行下面語句驗證xp_cmdshell是否正確
--xp_cmdshell 'dir c:\'
--
如果該語句異常,還有可能sql server服務的啟用賬戶(一般情況下是system)沒有
訪問system32\cmd.exe檔案的許可權,加上許可權即可


--發現其他儲存過程被篡改,執行下面語句
--drop procedure儲存過程名稱
--go
--exec sp_addextendedproc N'儲存過程名稱', N'xpstar.dll'