Return Oriented Programming (ROP)

Return Oriented Programming (ROP)​

Tekrardan merhaba. Yaklaşık 1 aydır birşeyler yazmıyordum ve liste birazcık kabarmaya başladı o yüzden tekrar bir ROP ile giriş yapayım istedim. Eğer önceki yazımı 12 okuduysanız çok fazla teknik detaylara girmeden ve uygulama yapmadan kısaca konuyu özetlemeye çalışmıştım. Açıkcası bi uygulama yapmadığım için pek anlaşıldığını düşünmediğimden bir de uygulamalı ROP yazmaya karar...
İçeriğin tamamını görüntüleyebilmeniz için foruma üye olmanız gerekmektedir. Giriş yap veya üye ol.
 
Hocam aslında burada nx biti açık olsa da bişey farketmez ki zaten protostar ın kendi makinesinde NX biti kapalı olarak derlenmiş şekilde geliyor stack6,
buradaki

if((ret & 0xbf000000) == 0xbf000000) { [18](https://exploit-exercises.lains.space/protostar/stack6/#n18) printf("bzzzt (%p)\n", ret)

kısmı zaten NX bitiyle benzer bir kontrol yapıyor, stack bölgesinde herhangi bir yere dönüş yapmanızı engelliyor, bu yüzden dışarıdan bir değişkenle Shellcode çalıştırabiliyorsunuz.

Sevgiler…
 
NX korumasının aktif olduğunu varsaydığımızı düşünerek anlattım aslında 🙂 Bunun dışında sorunun açıklamasında ret2libc veya rop gibi tekniklerden bahsedildiği için ve makine zaten bende kurulu olduğundan onun üzerinden anlatmak istedim 😅
 
Üst