Ana içeriğe geç
Güvenlik

Klasik return-into-libc yontemleri PaX korumasini asmak icin gelistirildi

Öne çıkanlar

  • Klasik return-into-libc teknigindeki arguman ve tekil cagri kisitlari yeni zincirleme yontemleriyle asildi.
  • Frame faking teknigi sayesinde 'leave; ret' dizileri kullanilarak ardisik islev cagrilari yapilabiliyor.
  • Dinamik baglayicinin dl-resolve() mekanizmasi uzerinden PaX bellek adresi rastgelelestirmesi atlatilabiliyor.

Guvenlik arastirmacisi Nergal tarafindan yayimlanan calisma, calistirilamaz yigin (non-executable stack) onlemlerini asmak icin kullanilan gelismis "return-into-libc" tekniklerini ve PaX guvenlik mekanizmasina yonelik cozumleri ele aliyor. Klasik return-into-libc yaklasimindaki tekil islev cagrisi sinirlandirmalarini asmayi hedefleyen arastirma, birden fazla kutuphane islevinin ardisik olarak baglanmasini saglayan yeni metodolojiler sunuyor.

Yazida "esp lifting" ve "frame faking" (sahte cerceveleme) yontemleri ayrintili sekilde aciklaniyor. -fomit-frame-pointer bayragiyla derlenen ikililerde yigin isaretcisini kaydiran epilog talimatlari kullanilarak islevler zincirlenirken, cerceve isaretcisi kullanan yazilimlarda "leave; ret" dizileri uzerinden sahte yigin cerceveleri olusturuluyor. Bu teknikler, ayricalik yukseltme gibi cok adimli islemlerin basariyla yurutulmesine imkan taniyor.

Calismanin ikinci bolumunde bellek adresi rastgelelestirmesi (ASLR/mmap randomization) ve PaX korumalarina odaklaniliyor. Dinamik baglayicinin (dynamic linker) sembol cozumleme mekanizmasi olan dl-resolve() islevini dogrudan cagiran ozgun bir yontem tanitilarak, rastgelelestirilmis bellek duzenlerinde bile korumalarin asilabilecegi gosteriliyor. Yontemler Linux i386 mimarisi uzerinde orneklenmekle birlikte genel mimarilere tasinabilir nitelik tasiyor.

Kaynak

Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.