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)

HackTricks'i Destekleyin

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

Bir yığın taşması için savunmasız bir programın stack overflow'un bir kısmına işaret eden bir puts fonksiyonu ç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 sadece ilk baytını aşan bir taşma oluşturabilir.

Sonra, saldırgan yükün ortasında puts fonksiyonunu çağırır ve bu, kanaryayı (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ı ele geçirmek için yükünün içeriğini yazdırabilmesi gerekir ve ardından yeni bir yük oluşturup (aynı program oturumunda) gerçek tampon taşmasını göndermesi gerekir.

CTF örnekleri:

Keyfi Okuma

Keyfi okuma ile format dizeleri tarafından sağlanan bir yöntemle 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)

HackTricks'i Destekleyin