Yığın püskürtme, bilgisayar yazılımlarındaki güvenlik açıklarından yararlanmak için kullanılan bir hack tekniğidir. Hafızasının bir bölümünden yararlanarak bir program üzerinde kontrol sahibi olmak için hareket eder. Hafızanın bir kısmı hack kodu ile kontrol edildiğinde, hacker, hafızanın yığın alanında bir tampon taşması uygulayarak kodun yürütülmesini kontrol altına alabilir. Yığın püskürtme için en yaygın uygulama, Internet Explorer® gibi web tarayıcılarını kırmaktır.
Bir "yığın", bilgisayarın programa sanal bir bellek yığını tahsis ettiği için, bilgisayarın belirli bir programa atadığı dinamik bir bellek bloğudur. Bu bir dolap veya masadaki bir depolama alanı gibi düşünülebilir. Bu bellek yığını, yazılım ya da işletim sisteminin toplama kodu serbest bırakana kadar programa aittir. Koleksiyon kodu, program çöktüğünde veya yazılımın kullanımı sona erdikten sonra hafızayı serbest bırakmada başarısız olması durumunda hafızayı geri alan güvenli bir cihazdır.
Yığın püskürtme işleminde bir bilgisayar korsanı, bellek yığınını belirli bir kod bölümü ile "püskürtmeye" çalışır. Amaç, kodu, kapıyı açmaya zorlamak için kaldıraç sağlamak üzere, kapı levhasının kenarına bir levye kamalamak gibi, programın bellek yığını içinde belirli bir konuma yerleştirmektir. Bilgi, ısı püskürtmeyle hafıza yığınına sıkıştırıldıktan sonra, bilgisayar korsanı ya yığın ya da tüm bellek tamponunu taşabilir ve sistemde hatalar ortaya çıkarır. Hatalar oluştuğunda, bilgisayar korsanı sistemde kendi kodunu çalıştırmak için bunlardan yararlanabilir.
Öbek püskürtme, sistemdeki belleğin dinamik olarak tahsis edilmesi nedeniyle çalışır. Bilgisayar programı esas olarak şu an için tüm bellek öbeğine "sahiptir", bu nedenle bilgisayar korsanı, bilgisayarın programa atadığı bellek içindeki göreceli konumu zaten biliyor. Bu nedenle, hacker kodunu çatlaklara sıkıştırmak için çok az spesifikliğe ihtiyaç duyar; Programın çalışmaya devam ettiği sürece, bellek bloğunun her zaman orada kalacağını bilerek kodu körca uygulayabilir. Bu, gözü kapalıyken bir kilit seçmeye çalışmakla karşılaştırılabilir; Kilit hareket ediyorsa görev neredeyse imkansız hale gelir, ancak sabit bir konumda kaldığı sürece - sistemdeki bellek yığını gibi - iş mümkün olur.


