[Pardus-guvenlik] [PLSA 2009-203] Çekirdek: Birden Fazla Zaafiyet

pardus-guvenlik at pardus.org.tr pardus-guvenlik at pardus.org.tr
28 Ara 2009 Pzt 16:29:50 EET


------------------------------------------------------------------------
Pardus Linux Güvenlik Bildirisi 2009-203          guvenlik at pardus.org.tr
------------------------------------------------------------------------
  Tarih: 2009-12-28
   Önem: 4
    Tür: Remote
------------------------------------------------------------------------

Özet
====

Çekirdekte   birden fazla   zaafiyet    giderildi.    Pardus    2008
kullanıyorsanız lütfen sisteminizi hemen güncelleyin.


Açıklama
========

Birden  fazla tampon  taşması  ve  boş  işaretçi   çözümlemesi
düzeltildi. Ek olarak, boş işaretçi çözümlemesi istismarlarının
işe yaramasını daha zor hâttâ imkansız kılmak için MMAP_MIN_ADDR
seçeneği  64K olarak  değiştirildi.  Böylece,   boş   işaretçi
çözümlemeleri bulunsa bile onların  istismar  edilmeleri  imkansız
olacak.



CVE-2009-2908 - eCryptfs boş işaretçi çözümlemesi:

Düşük dizin girdilerinde vfs_unlink() çağrıldığında, d_delete()
eğer d_count 1 ise dizin girdilerini eksi dizin girdisine  çeviriyor.
Bu da read()  veya  write()  yapıldıkça  ve  eksi  dizin  girdisinin
d_inode'u    ecryptfs_read_update_atime() veya    ecryptfs_getxattr()
içerisinde çözümlendikçe zamanla boş işaretçi  çözümlemesine
neden oluyordu.



CVE-2009-3547 - fs: pipe.c boş işaretçi çözümlemesi:

Linux   çekirdeğindeki pipe_read_open(),    pipe_write_open()    ve
pipe_rdwr_open() fonksiyonlarında birer boş işaretçi çözümlemesi
açığı bulundu. Karşılıklı erişim kilidi tutulmuş  durumdayken
i_pipe işaretçisi borunun okuma ve yazma  sayaçları  kullanılmadan
önce diğer süreçler tarafından  bırakılamıyordu.  Bu  da  yerel
hizmet reddine veya yetki aşımına neden olabiliyordu.



CVE-2009-4021 - fuse: fuse_put_request geçersiz işaretçi:

Fuse altsistemindeki fs/fuse/file.c dosyasında bulunan  fuse_direct_io
fonksiyonu    saldırganların olasılıkla     hafıza     tüketme
saldırısıyla ilgili vektörler  yoluyla  hizmet  reddine  (geçersiz
işaretçi çözümlemesi ve OOPS) neden olmasına olanak verebilir.



CVE-2009-3080 - gdth_read_event() dize konumlama zaafiyeti:

drivers/scsi/gdtk.c dosyasındaki gdth_read_event fonksiyonunda bulunan
dize konum hatası bir  IOCTL  isteği  içerisinde  eksi  olay  konumu
yoluyla yerel kullanıcıların hizmet  reddine  neden  olmasına  veya
olasılıkla yetki kazanmasına olanak veriyor.



CVE-2009-3001 - AF_LLC hafıza ifşası:

net/llc/af_llc.c dosyasında bulunan llc_ui_getname() fonksiyonu belirli
veri yapılarını ilklemiyor, bu  da  yerel  kullanıcıların  AF_LLC
soketinde   getsockname() çağırarak   bazı   çekirdek    hafıza
konumlarını okumasına olanak veriyor.



CVE-2009-3002 - getsockname() birden fazla hafıza ifşası:

Linux  çekirdeği getname  fonksiyonları  içerisinde  belirli  veri
yapılarını   ilklemiyor, bu   da   yerel   kullanıcıların   (1)
net/appletalk/ddp.c içerisindeki atalk_getname fonksiyonuyla  alakalı
bir   AF_APPLETALK soketi,   (2)   net/irda/af_irda.c   içerisindeki
irda_getname   fonksiyonuyla alakalı   bir   AF_IRDA   soketi,   (3)
net/econet/af_econet.c   içerisindeki econet_getname   fonksiyonuyla
alakalı bir AF_ECONET soketi, (4) net/netrom/af_netrom.c içerisindeki
nr_getname   fonksiyonuyla alakalı   bir   AF_NETROM   soketi,   (5)
net/rose/af_rose.c  içerisindeki rose_getname  fonksiyonuyla  alakalı
AF_ROSE   soketi, (6)   net/can/raw.c    içerisindeki    raw_getname
fonksiyonuyla  alakalı ham  bir  CAN  soketi  üzerinde  getsockname()
çağırarak  bazı çekirdek   hafıza   konumlarının   içeriğini
okumasına olanak veriyor.



CVE-2009-2406  - parse_tag_11_packet()  içerisinde  ecryptfs  yığıt
taşması:

eCryptfs    altsistemindeki fs/ecryptfs/keystore.c     dosyasındaki
parse_tag_11_packet  fonksiyonunda oluşan  yığıt  tabanlı  tampon
taşması bir Tag 11 paketi  içerisindeki  anahtar  imza  uzunluğunun
anahtar imza tampon boyutu ile  uyumlu  olduğunun  garantilenmemesiyle
alakalı  olarak özel  hazırlanmış   eCryptfs   dosyası   içeren
vektörler  yoluyla yerel  kullanıcıların  hizmet  reddine  (sistem
çakılması) neden olmasına veya yetki edinmesine olanak veriyor.



CVE-2009-2407 - çekirdek:  parse_tag_3_packet()  içerisinde  ecryptfs
ayrılmış bellek taşması:

eCryptfs  altsistemindeki fs/ecryptfs/keystore.c  dosyasında  bulunan
parse_tag_3_packet fonksiyonunda oluşan  ayrılmış  bellek  tabanlı
tampon taşması Tag 3 paketi  içerisinde  şifrelenmiş  büyük  bir
anahtar boyutuyla alakalı özel hazırlanmış bir  eCryptfs  dosyası
içeren  vektörler yoluyla  yerel  kullanıcıların  hizmet  reddine
(sistem çakılması) neden olmasına veya ek ayrıcalık  kazanmasına
olanak veriyor.



CVE-2009-3726 - nfs4_proc_lock boş işaretçi çözümlemesi:

NTFv4 istemcisindeki fs/nfs/nfs4proc.c dosyasında bulunan nfs4_proc_lok
fonksiyonu uzak NFS sunucularının hatalı dosya öznitelikleri içeren
belirli bir yanıt göndererek ve böylece NFSv4 durumu içermeyen  bir
dosyanın açılmaya çalışılmasını tetikleyen hizmet reddine (boş
işaretçi çözümlemesi ve panik) neden olmasına izin veriyor.



CVE-2009-3621 - AF_UNIX: kapatma soketine bağlanmada ölü kilit:

net/unix/af_unix.c yerel kullanıcıların sırasıyla AF_UNIX  dinleme
soketinde bir soyut isim  uzayı  oluşturup  bu  sokette  bir  kapatma
işlemi uyguladıktan sonra  yine  aynı  sokete  bir  dizi  bağlantı
gerçekleştirerek hizmet reddine (sistem kilitlenmesi) neden olmasına
izin veriyor.



CVE-2009-2903 - appletalk: DDP datagramları üzerinden tünele alınan
IPlerin ele alınmasında hizmet reddi:

Appletalk ve ipddp bileşenleri yüklü olduğu halde ipddp"N" aygıtı
bulunamadığında appletalk altsisteminde oluşan hafıza sızıntısı
uzak  saldırganların IP-DDP  datagramları  yoluyla  hizmet  reddine
(hafıza tüketimi) neden olmasına olanak veriyor.



r128 sürücüsü CCE ilklemesi:

ATI Rage 128 (=r128) sürücüsü CCE (Concurrent Command Engine) durum
ilklemesini  düzgün şekilde  doğrulamıyor,   ve   bu   da   yerel
kullanıcıların  belirtilmemiş IOCTL  çağrıları  yoluyla  hizmet
reddine (boş işaretçi çözümlemesi ve sistem  çakılması)  neden
olmasına veya ayrıcalıklar elde etmesine olanak veriyor.



tc: ilklenmemiş çekirdek hafıza sızıntısı:

Güncel  durumda ilklenmemiş  çekirdek  hafızasının  üç  baytı
kullanıcı erişimine sızıyor.


Etkilenen paketler:

  Pardus 2008:
    kernel, 2.6.25.20-114-57 öncesi tüm sürümler


Çözüm
=====

kernel için güncelleme mevcut. Paket Yöneticisi'ni  kullanarak,  ya  da
konsolda tek komut ile güncelleme yapabilirsiniz:

    pisi up kernel

Referanslar
===========

  * http://bugs.pardus.org.tr/show_bug.cgi?id=11282
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11526
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11574
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11573
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11092
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11121
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11122
  * http://bugs.pardus.org.tr/show_bug.cgi?id=10691
  * http://bugs.pardus.org.tr/show_bug.cgi?id=10689
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11522
  * http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-3621
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11120
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11164
  * http://bugs.pardus.org.tr/show_bug.cgi?id=11646

------------------------------------------------------------------------


Pardus-guvenlik mesaj listesiyle ilgili daha fazla bilgi