CET & Shadow Stack

AWS hackleme konusunda sıfırdan kahramana kadar öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)!

HackTricks'ı desteklemenin diğer yolları:

Kontrol Akışı Uygulama Teknolojisi (CET)

CET, Dönüşe Yönelik Programlama (ROP) ve Atlamaya Yönelik Programlama (JOP) gibi yaygın kontrol akışı ele geçirme saldırılarını engellemek amacıyla donanım düzeyinde uygulanan bir güvenlik özelliğidir. Bu tür saldırılar, bir programın yürütme akışını manipüle ederek kötü amaçlı kodu yürütmek veya zararsız kod parçalarını bir araya getirerek kötü amaçlı bir eylem gerçekleştirmek için kullanılır.

CET, Dolaylı Dalış İzleme (IBT) ve Shadow Stack olmak üzere iki ana özellik sunar.

  • IBT, dolaylı sıçramaların ve çağrıların yalnızca geçerli hedeflere yapıldığından emin olur. Bu, geçerli hedefleri belirleyen yeni bir talimat setinin kullanımıyla gerçekleştirilir, böylece saldırganların kontrol akışını keyfi konumlara yönlendirmesini engeller.

  • Shadow Stack, dönüş adresleri için bütünlük sağlayan bir mekanizmadır. Normal çağrı yığınından ayrı, güvenli ve gizli bir dönüş adresi kopyasını tutar. Bir işlev döndüğünde, dönüş adresi shadow stack'te saklanan değerle karşılaştırılarak doğrulanır, bu da saldırganların kontrol akışını ele geçirmek için yığında dönüş adreslerini üzerine yazmasını engeller.

Shadow Stack

Shadow stack, yalnızca dönüş adreslerini depolamak için kullanılan özel bir yığıntır. Normal yığınla birlikte çalışır ancak korunur ve normal program yürütmesinden gizlenir, bu da saldırganların müdahale etmesini zorlaştırır. Shadow stack'in temel amacı, dönüş adreslerinde yapılan herhangi bir değişikliğin kullanılmadan önce tespit edilmesini sağlamaktır, bu da ROP saldırılarını etkili bir şekilde azaltır.

CET ve Shadow Stack Nasıl Saldırıları Önler

ROP ve JOP saldırıları, bir uygulamanın kontrol akışını ele geçirme yeteneğine dayanır ve onları yığında işaretçileri veya dönüş adreslerini üzerine yazmalarına izin veren zayıflıkları kullanarak yürütme akışını ele geçirir. Var olan kod parçaları veya dönüşe yönelik programlama parçaları dizilerine yönlendirerek saldırganlar keyfi kodu yürütebilir.

  • CET'in IBT özelliği, dolaylı sıçramaların yalnızca açıkça geçerli hedeflere sıçramasını sağlayarak bu saldırıları önemli ölçüde zorlaştırır. Bu, saldırganların ikili dosya üzerine yayılmış keyfi parçaları yürütmesini imkansız hale getirir.

  • Shadow stack ise, saldırganın normal yığında bir dönüş adresini üzerine yazabilse bile, işlevden dönerken, bozulmuş adresin shadow stack'te saklanan güvenli kopya ile karşılaştırıldığında uyumsuzluk tespit edilecektir. Adresler eşleşmezse, program saldırının başarısız olmasını sağlamak için sonlandırılabilir veya diğer güvenlik önlemleri alınabilir.

Last updated