Düzeltme: Genişletilmiş saklı yordamları ile arabellek taşması yararlanma erken

Makale çevirileri Makale çevirileri
Makale numarası: 280380 - Bu makalenin geçerli olduğu ürünleri görün.
# HATA: 100932 (SQLBUG_70)
# HATA: 100936 (SQLBUG_70)
# HATA: 101013 (SQLBUG_70)
# Hata: 351188 (SHILOH_bugs)
# Hata: 351189 (SHILOH_bugs)
Hepsini aç | Hepsini kapa

Bu Sayfada

Belirtiler

Bazı genişletilmiş saklı yordamlar SQL Server ile birlikte gelen BIR kusur, bir bellek Arabellek rasgele verilerle olası bir saldırganın SQL Server işlem alanında rasgele kod çalıştırmasına izin üzerine yığında tahsis verebilir. Bu rasgele kod, sunucunun denetimini ele geçirmesine kullanılabilir farklı bir işlem üretiliyor sunucuya kapatma gibi basit amacıyla kullanılabilir.

Neden

Srv_paraminfo işlevi, genişletilmiş saklı yordam (aranan) tarafından ayrılan bir bellek arabelleği içine çağıran tarafından ayrıştırılan verileri kopyalamak için kullanılır. Bu arabellek yığında Aranan ayrılan ve genişletilmiş saklı yordamına Geçilen veri bu ayrılan alan büyükse, kalan verileri potansiyel işlevi döndürdüğünde, yürütür dönüş adresini yazarak yığının kopyalanabilir. Doğru bilgileri ile bir arabellek dikkatle oluşturarak rasgele yönergeleri sunucunun belleğe yerleştirilir ve olması çalışmasına izin.

Çözüm

SQL Server 2000

Bu sorunu gidermek için <a0></a0>, Microsoft SQL Server 2000 için en son hizmet paketini edinin. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
290211BILGI: en son SQL Server 2000 hizmet paketi nasıl elde edilir
Not: aşağıdaki düzeltmeyi Microsoft SQL Server 2000 Service Pack 1 için önce oluşturuldu.

SQL Server 2000 için bu düzeltmenin ingilizce sürümü aşağıdaki dosya öznitelikleri olmalı veya daha yenisi:
   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

Bu sorunu gidermek için <a0></a0>, Microsoft SQL Server 7.0 için en son hizmet paketini edinin. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
301511BILGI: en son SQL Server 7.0 hizmet paketi nasıl elde edilir
Not: aşağıdaki düzeltmeyi Microsoft SQL Server 7.0 Service Pack 4 öncesinde oluşturulmuş.

Bu düzeltmenin ingilizce sürümünde aşağıdaki dosya öznitelikleri olmalı veya daha yenisi:
   Version      File name
   ------------------------

   7.00.0918    Xprepl.dll
   7.00.0918    Xpstar.dll
   7.00.0918    Replres.dll
				
Not: Dosya bağımlılıkları nedeniyle, en son düzeltme veya özellik, yukarıdaki dosyaları içeren ek dosyalar da içerebilir. Düzeltmeyi yüklemek için aşağıdaki adımları gerçekleştirin:
  1. Okuma Microsoft Güvenlik Bülteni MS00-aşağıdaki Web sitesinde bulunan 092:
    http://www.microsoft.com/technet/security/bulletin/ms00-092.mspx
  2. Düzeltme ekini, SQL Server sürümü, işlemci mimarisi ve kullandığınız dile uygun dosyayı seçerek aşağıdaki konumdan yükleyin:
    XP Security Downloads
  3. Dosyaları ayıklamak için <a0></a0>, karşıdan yüklediğiniz bir kendi kendine ayıklanan yürütülebilir dosyayı çalıştırın. Ayıklama işlemi sırasında dosyalar için hedef dizini için istemde bulunulur. Extract dosyaları. Not içine boş bir geçici dizin seçin: both alfa ve x 86 sürümleri düzeltme ekini x 86 tabanlı bir sistemde çalışan tarafından açılmasını.

  4. Bu düzeltme ekini yükleme yönergeleri için belirli bir paket ayrıntılı bir Benioku.txt dosyası içerir. Bu dosyaları sisteminizi güncelleştirmek için bu yönergeleri izleyin.

Durum

Microsoft, bu makalenin başında listelenen Microsoft ürünlerinde bir sorun olduğunu onaylamıştır.

SQL Server 2000
Bu sorun ilk olarak SQL Server 2000 Service Pack 1'de giderilmiştir.

SQL Server 7.0
Bu sorun, ilk SQL Server 7.0 Service Pack 4'de giderilmiştir.

Daha fazla bilgi

Etkilenen genişletilmiş saklı yordamların listesi şunları içerir:
  • SQL Server 7.0:
             xp_sqlinventory
    					
  • SQL Server 7.0 ve SQL Server 2000:
             xp_sqlagent_monitor
    					
  • Yalnızca SQL Server 2000:
             sp_OACreate
             sp_OAMethod
             sp_OAGetProperty
             sp_OASetProperty
             sp_OADestroy
    					
Bu düzeltme, tüm Microsoft sevk genişletilmiş saklı yordamları güvenlik açığını giderir. Saklı yordamlar genişletilmiş diğer üçüncü taraf bir sistemde yüklü olan, açık olan veri hizmetleri API srv_paraminfo kullanıyorsa bu yordamlardan birini kullanarak bu saldırıyı yararlanmaya çözmesi olasıdır. Yüklü olan saklı yordamlar genişletilmiş bir başkası, kendi yordamlar bu saldırıya karşı savunmasız olup olmadığını öğrenmek için bu satıcıya başvurun.

Yararlanma Geçirilmekte olan veri için çok küçük bir arabellek kullanımının yararlanır. Geçirilmekte olan verilerin uzunluğunu doğru olarak belirlemek için <a0></a0>, ilk srv_paraminfopbData, altıncı parametresi, BOş olarak çağırmalısınız. Işlev, daha sonra parametre verilerini gerçek uzunluğunu döndürür. Uygun boyutta bir arabellek sonra ayrılabilir ve verileri almak için ikinci bir çağrı yapılabilir. Srv_paraminfo işlevi, arabelleğine kopyalamak için verilerin uzunluğu en fazla belirtmek izin vermiyor. Daha fazla bilgi için SQL Server Books Online'da srv_paraminfo konusuna başvurun.

Özellikler

Makale numarası: 280380 - Last Review: 5 Eylül 2007 Çarşamba - Gözden geçirme: 4.2
Bu makaledeki bilginin uygulandığı durum:
  • 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
Anahtar Kelimeler: 
kbmt kbbug kbfix kbsqlserv2000sp1fix KB280380 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:280380

Geri Bildirim Ver

 

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