Kayıtlar

Haziran, 2016 tarihine ait yayınlar gösteriliyor

TR | Code Reuse Saldırıları (ret2libc & rop)

Resim
Merhabalar, bu yazımda sizlere binary exploitationda sıkça kullanılan bir teknikten bahsedeceğim. Diğer bir teknik olan Egg Hunting hakkındaki yazımı okumadıysanız buradan okuyabilirsiniz. Tekniğe giriş yapmadan önce binary exploitation saldırılarının yapısı ve bu tekniğe neden ihtiyaç duyulduğundan biraz bahsetmek istiyorum. Bildiğiniz üzere "program" dediğimiz şey belli bir işi yapmak üzere, belli bir algoritmaya göre bir araya getirilmiş talimatlardan başka birşey değildir. Bu programlar genellikle kullanıcıdan bir girdi verisi alır, bu veriyi işler ve bir çıktı verisi üretir. Örnek vermek gerekirse bir e-ticaret sitesi düşünelim. Bu sitede yer alan ürünlerin her birine atanmış özel bir ID değeri vardır. Kullanıcı bir ürünün özelliklerine bakmak istediğinde, (arkaplanda) ilgili ürünün ID bilgisini sunucu tarafındaki yazılıma girdi olarak verir. Yazılım bu ID bilgisini alır ve sahip olduğu veritabanında bu bilgiyi sorgulatarak o ID'ye sahip

TR | Stack Overflow'da Egg Hunting Tekniği

Resim
Bu yazımda yığın taşması zafiyetinin istismarında kullanılan Egg Hunting adı verilen bir teknikten bahsedeceğim. Adını bir paskalya bayramı geleneğinden alan bu teknik shellcode'umuzu yerleştireceğimiz buffer'da yeterli alan yoksa kullanılır. "Execve /bin/sh" gibi ufak boyutlu shellcode'larda bu tür sorunlar genelde ortaya çıkmasa da reverse-tcp gibi görece daha büyük shellcode'lar kullanıldığında, bunun üstünede IPS benzeri güvenlik önlemlerini atlatmak için encoding işlemi yapıldığında shellcode'umuz gittikçe daha büyük boyutlara ulaşmaktadır ve şayet yeterli alan bulunmuyorsa Egg hunting gibi tekniklere başvurulmalıdır. Bu tekniğin temel mantığı asıl çalıştırmak istediğimiz shellcode'un önüne etiket görevini üstlenecek bir string ( yabancı kaynaklarda TAG olarak geçer ) koymak ve oluşturulan bu EGG shellcode 'unu istismar edilecek programın erişebileceği bir hafıza alanına yerleştirmek ( örneğin programın aldığı başka bi