微軟:四種方法暫時屏蔽IE最新漏洞

字號:

微軟日前針對最近熱議的IE 7 0day高危漏洞進行了調(diào)查,并發(fā)布了一份安全通報,介紹該漏洞影響的操作系統(tǒng)及相關(guān)軟件,并提出了臨時解決辦法,指導(dǎo)用戶暫時屏蔽該漏洞。
    據(jù)微軟官方通報表示,運行在Windows XP SP2及其以后版本微軟操作系統(tǒng)上的IE 7均存在該漏洞,其中包括Windows XP Service Pack 2、Windows XP Service Pack 3、Windows Server 2003 Service Pack 1、Windows Server 2003 Service Pack 2、 Windows Vista、Windows Vista Service Pack 1和Windows Server 2008。而所有Windows系統(tǒng)上的IE 5.01 SP4、IE6 SP1、IE6和IE 8 Beta2也存在受該漏洞影響的可能。
    微軟表示,引起該漏洞的原因是IE瀏覽器數(shù)據(jù)綁定功能中的一個非法指針指向,微軟指出,可以通過屏蔽OLEDB32.dll這個文件來暫時屏蔽該漏洞,可以通過以下四個方法來實現(xiàn):
    方法一:使用系統(tǒng)訪問控制列表(SACL)禁用IE使用OLEDB32.dll
    通過使用SACL條目來禁用IE瀏覽器訪問OLEDB32.dll,保護IE瀏覽器免受攻擊,同時保證其它依賴OLEDB32.dll的應(yīng)用能正常運行。值得注意的是該系統(tǒng)僅支持Windows Vista以后版本,而且使用此方法時,IE瀏覽器需運行在保護模式啟用情況下。
    1、將以下內(nèi)容保存到一個臨時文件夾中:
    ·對于32-bit系統(tǒng)
    保存以下文本內(nèi)容到BlockAccess_x86.inf文件中:
    [Unicode]
    Unicode=yes
    [Version]
    signature="$CHICAGO$"
    Revision=1
    [File Security]
    "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
    ·對于64-bit系統(tǒng)
    保存以下文本內(nèi)容到BlockAccess_x86.inf文件中:
    [Unicode]
    Unicode=yes
    [Version]
    signature="$CHICAGO$"
    Revision=1
    [File Security]
    "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
    保存以下文本內(nèi)容到BlockAccess_x64.inf文件中:
    [Unicode]
    Unicode=yes
    [Version]
    signature="$CHICAGO$"
    Revision=1
    [File Security]
    "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
    2、在該臨時文件夾中以Administrator權(quán)限打開命令行窗口。
    3、在命令提示符中輸入以下命令,然后按回車:
    SecEdit/configure/db BlockAccess.sdb/cfg
    其中為inf 文件路徑。
    4、如果上述命令成功執(zhí)行,你將會看到“任務(wù)成功結(jié)束”的提示。
    方法二:禁用OLEDB32.dll的“Row Position”功能
    值得注意的是,這個方法需要修改注冊表,因此在修改之前務(wù)必做好注冊表的備份,并嚴(yán)格按照指令修改。
    打開注冊表,刪除以下注冊表子鍵:
    HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}
    刪除該子鍵后,所有使用RowPosition屬性的ADO應(yīng)用會受影響,所有使用OLE DB Row Position庫的OLE DB應(yīng)用也會受影響。MSHTML或不能正常使用。
    方法三:取消OLEDB32.dll注冊
    對于Windows 2000、Windows XP、Windows Server 2003、Windows Vista和Windows Server 2008等32-bit系統(tǒng)來說,運行如下命令:
    Regsvr32.exe/u "Program Files\Common Files\System\Ole DB\oledb32.dll"
    對于Windows XP Professional x64 Edition、Windows Server 2003 x64 Edition、Windows Vista x64 Edition、Windows Server 2008 for x64-based Systems和Windows Server 2008 for Itanium-based Systems來說,運行如下命令:
    Regsvr32.exe/u "Program Files\Common Files\System\Ole DB\oledb32.dll"
    Regsvr32.exe/u "Program Files (x86)\Common Files\System\Ole DB\oledb32.dll"
    該方法會導(dǎo)致所有依賴于OLE DB數(shù)據(jù)訪問的應(yīng)用不能正常運行。
    方法四:使用SACL完全禁用OLEDB32.dll
    ·對于Windows 2000、Windows XP和Windows Server 2003,運行如下命令:
    cacls "Program Files\Common Files\System\Ole DB\oledb32.dll"/E/P everyone:N
    ·對于Windows XP Professional x64 Edition、Windows Server 2003 x64 Edition和Windows Server 2003 for Itanium-based Systems,運行如下命令:
    cacls "Program Files\Common Files\System\Ole DB\oledb32.dll"/E/P everyone:N
    cacls "Program Files (x86)\Common Files\System\Ole DB\oledb32.dll"/E/P everyone:N
    ·對于 Windows Vista和Windows Server 2008 for 32-bit Systems,運行如下命令:
    takeown/f "Program Files\Common Files\System\Ole DB\oledb32.dll"
    icacls "Program Files\Common Files\System\Ole DB\oledb32.dll"/save %TEMP%\oledb32.32.dll.TXT
    icacls "Program Files\Common Files\System\Ole DB\oledb32.dll"/deny everyone:(F)
    ·對于Windows Vista x64 Edition、Windows Server 2008 for x64-based Systems和Windows Server 2008 for Itanium-based Systems,運行如下命令:
    takeown/f "Program Files\Common Files\System\Ole DB\oledb32.dll"
    icacls "Program Files\Common Files\System\Ole DB\oledb32.dll"/save %TEMP%\oledb32.32.dll.TXT
    icacls "Program Files\Common Files\System\Ole DB\oledb32.dll"/deny everyone:(F)
    takeown/f "Program Files (x86)\Common Files\System\Ole DB\oledb32.dll"
    icacls "Program Files (x86)\Common Files\System\Ole DB\oledb32.dll"/save %TEMP%\oledb32.64.dll.TXT
    icacls "Program Files (x86)\Common Files\System\Ole DB\oledb32.dll"/deny everyone:(F)