Oprava: Buffer zneužití přetečení Possible s rozšířených uložených procedur

Překlady článku Překlady článku
ID článku: 280380 - Produkty, které se vztahují k tomuto článku.
CHYBA Č: 100932 (SQLBUG_70)
CHYBA Č: 100936 (SQLBUG_70)
CHYBA Č: 101013 (SQLBUG_70)
Chyba #: 351188 (SHILOH_bugs)
Chyba #: 351189 (SHILOH_bugs)
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Příznaky

Chyba v několika rozšířené uložené procedury dodané s SQL Server může povolit vyrovnávací paměti přidělené zásobníku přepsány libovolného daty potenciálně umožnit útočníkovi spustit libovolný kód v prostoru procesu serveru SQL. Libovolný kód může být použit pro účely stejně jednoduché jako vypnutí serveru vytváření různých proces použité převzít řízení serveru.

Příčina

Funkce srv_paraminfo slouží ke kopírování dat do vyrovnávací paměti přidělené rozšířené uložené procedury (volaný) předaná volající. Pokud volaný přiděleny této vyrovnávací paměti v zásobníku a data předaná rozšířené uložené procedury je větší než přidělený prostor zbývající data může zkopírován do zásobníku potenciálně přepsání zpáteční adresu, která zpracuje při vrátí funkce. Sestavením pečlivě vyrovnávací paměti s správné informace, mohou být libovolného pokyny umístěny do paměti na serveru a povoleno spustit.

Řešení

SQL Server 2000

Tento problém vyřešíte získat nejnovější aktualizaci service pack pro 2000 Microsoft SQL Server. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
290211INF: Jak získat nejnovější aktualizaci Service Pack pro SQL Server 2000
Poznámka: Tato oprava hotfix následující vytvořeného před instalací Microsoft SQL Server 2000 Service Pack 1.

Pro SQL Server 2000 Anglická verze této opravy má následující atributy souborů nebo novější:
   Version      File name
   -------------------------

   8.00.0223    Xprepl.dll
   8.00.0223    Xpstar.dll
   8.00.0223    Xpqueue.dll
   8.00.0223    Odsole70.dll
				


SQL Server 7.0

Tento problém vyřešíte získat nejnovější aktualizaci service pack pro Microsoft SQL Server 7.0. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
301511INF: Jak získat nejnovější aktualizaci Service Pack pro SQL Server 7.0
Poznámka: Tato oprava hotfix následující vytvořeného před instalací Microsoft SQL Server 7.0 Service Pack 4.

Anglická verze této opravy má následující atributy souborů nebo novější:
   Version      File name
   ------------------------

   7.00.0918    Xprepl.dll
   7.00.0918    Xpstar.dll
   7.00.0918    Replres.dll
				
Poznámka: Vzhledem k závislostem souborů nejnovější opravy hotfix nebo funkce, která obsahuje předchozí soubory může také obsahovat další soubory. Chcete-li nainstalovat opravu, proveďte následující kroky:
  1. Čtení Microsoft Security Bulletin MS00-092, umístěný na následujícím webu:
    http://www.microsoft.com/technet/security/bulletin/ms00-092.mspx
  2. Výběrem příslušného souboru pro verze SQL Server, architektura procesoru a jazyk stáhnout opravu z následujícího umístění:
    XP Security Downloads
  3. Extrahovat soubory, spusťte samorozbalovací spustitelný soubor jste stáhli. Během procesu extrahování zobrazí výzva pro cílový adresář pro soubory. Zvolte prázdný dočasný adresář, do které chcete extrahovat soubory. Poznámka: oba Alpha a x 86 verze opravy extrahovat spuštěním systému x 86.

  4. Součástí této opravy je souboru Readme.txt, který obsahuje podrobné pokyny k instalaci určitého balíčku. Těchto pokynů aktualizovat systém s těmito soubory.

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny na začátku tohoto článku.

SQL Server 2000
Tento problém byl poprvé opraven v SQL Server 2000 Service Pack 1.

SQL Server 7.0
Tento problém byl poprvé opraven v SQL Server 7.0 Service Pack 4.

Další informace

Seznam ovlivněných rozšířené uložené procedury patří:
  • Na SQL Server 7.0:
             xp_sqlinventory
    					
  • Na SQL Server 7.0 a SQL Server 2000:
             xp_sqlagent_monitor
    					
  • Pouze SQL Server 2000:
             sp_OACreate
             sp_OAMethod
             sp_OAGetProperty
             sp_OASetProperty
             sp_OADestroy
    					
Tato oprava opravuje chybu zabezpečení ve všech dodáno Microsoft rozšířené uložené procedury. Jiných výrobců rozšířené uložené procedury jsou také nainstalovány v systému, může být možné zneužít tento útok pomocí jednoho z těchto postupů Pokud používá otevřít Data Services API srv_paraminfo. Rozšířené uložené procedury nainstalován třetí osoba, požádejte dodavatele, že chcete zjistit, pokud jejich postupy jsou tímto útokem ohrožena.

Zneužití využívá výhod použití vyrovnávací paměti, která je příliš malá pro předávaný data. Abyste zjistili správně délka dat předávaný, je třeba nejprve zavolat srv_paraminfo s jeho šesté parametr pbData jako NULL. Funkce potom vrací skutečná délka dat parametru. Mohou být přiděleny potom odpovídajícím způsobem velikosti vyrovnávací paměti a druhé volání mohou být provedeny načíst data. Funkce srv_paraminfo neumožňuje určit maximální délku dat zkopírovat do své vyrovnávací paměti. Další informace naleznete v tématu srv_paraminfo v SQL Server Books Online.

Vlastnosti

ID článku: 280380 - Poslední aktualizace: 5. září 2007 - Revize: 4.2
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft Data Engine 1.0
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 7.0 Service Pack 1
  • Microsoft SQL Server 7.0 Service Pack 2
Klíčová slova: 
kbmt kbbug kbfix kbsqlserv2000sp1fix KB280380 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:280380

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com