Print Stack Canary

Reading time: 3 minutes

tip

AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE) Azure Hacking'i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

Büyütülmüş yazdırılmış yığın

Bir yığın taşması için kırılgan olan bir programın stack overflow'un bir kısmına işaret eden bir puts fonksiyonunu çalıştırabileceği bir durumu hayal edin. Saldırgan, kanaryanın ilk baytının bir null baytı olduğunu (\x00) ve kanaryanın geri kalanının rastgele baytlar olduğunu bilir. Ardından, saldırgan kanaryanın ilk baytına kadar yığını aşan bir taşma oluşturabilir.

Sonra, saldırgan yükün ortasında puts fonksiyonunu çağırır ve bu, kanaryanın tümünü (ilk null bayt hariç) yazdırır.

Bu bilgiyle saldırgan, kanaryayı (aynı program oturumunda) bilerek yeni bir saldırı oluşturup gönderebilir.

Açıkça, bu taktik çok kısıtlıdır çünkü saldırganın kanaryayı sızdırmak için yükünün içeriğini yazdırabilmesi ve ardından yeni bir yük oluşturup (aynı program oturumunda) gerçek tampon taşmasını gönderebilmesi gerekir.

CTF örnekleri:

Keyfi Okuma

Format dizeleri tarafından sağlanan bir keyfi okuma ile kanaryayı sızdırmak mümkün olabilir. Bu örneğe bakın: https://ir0nstone.gitbook.io/notes/types/stack/canaries ve keyfi bellek adreslerini okumak için format dizelerini kötüye kullanma hakkında okuyabilirsiniz:

Format Strings

tip

AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE) Azure Hacking'i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin