Stack Tabanlı Bellek Taşma Teorisi

ArViX

Uzman üye
28 Şub 2013
1,273
0
cos a=cos bc
Bu yazımızda stack tabanlı taşmayı ele alacağız.İlk önce stack nedir bunu ele almak gerekiyor.Stack tıpkı heap gibi ram'in içerisinde ki bölgelerden bir tanesidir.Kabataslak söyleyecek olursak eğer programı yazarken boyutlarını belirliyorsak burası stack'e, belirlemiyorsak heap bölgesi üzerinden ayrılır.Tabi ki bu konu hakkında bir çok söz edilebilir fakat bizim için bu kadarı yeterli olur sanırım.Örnek verecek olursak;

int arvixindizisi[5]; // stack bölgesi üzerinden ayrıldı.

int arvixindizisi[]; // heap bölgesi üzerinden ayrıldı.

Bu örneği birde linuxumuz üzerinden ele alalım.
Aşağıda ki kodumuza bakacak olursak;
Pointer vasıtasıyla bir string tanımlamışız bu string'ide açtığımız 2 byte'lık bir diziye aktarmaya çalışmışız. Pointer'da tanımladığımız string 14 byte'lık yer kaplıyorken (1 karakter 1 byte'tır). 2 byte'lık bir diziye aktarınca segmentation fault yani taşma hatasını almış bulunmaktayız.
b38PVK.jpg


 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.