CET & Shadow Stack
Last updated
Last updated
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)
CET, Return-Oriented Programming (ROP) ve Jump-Oriented Programming (JOP) gibi yaygın kontrol akışı ele geçirme saldırılarını engellemek için tasarlanmış, donanım seviyesinde 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ü niyetli kod çalıştırmak veya zararsız kod parçalarını birleştirerek kötü niyetli bir eylem gerçekleştirmek için kullanılır.
CET, iki ana özellik sunar: Dolaylı Dalga İzleme (IBT) ve Gölge Yığın.
IBT, dolaylı atlamaların ve çağrıların geçerli hedeflere yapılmasını sağlar; bu hedefler, dolaylı dallar için yasal varış noktaları olarak açıkça işaretlenmiştir. Bu, geçerli hedefleri işaretleyen yeni bir talimat setinin kullanılmasıyla sağlanır ve böylece saldırganların kontrol akışını rastgele yerlere yönlendirmesi engellenir.
Gölge Yığın, dönüş adresleri için bütünlük sağlayan bir mekanizmadır. Dönüş adreslerinin güvenli, gizli bir kopyasını normal çağrı yığınından ayrı tutar. Bir fonksiyon döndüğünde, dönüş adresi gölge yığın ile doğrulanır ve bu, saldırganların yığın üzerindeki dönüş adreslerini geçersiz kılmasını engeller.
Gölge yığın, sadece dönüş adreslerini saklamak için kullanılan özel bir yığındır. Normal yığınla birlikte çalışır ancak normal program yürütmesinden korunur ve gizlidir, bu da saldırganların buna müdahale etmesini zorlaştırır. Gölge yığınının temel amacı, geleneksel yığındaki dönüş adreslerine yapılan herhangi bir değişikliğin kullanılmadan önce tespit edilmesini sağlamaktır; bu, ROP saldırılarını etkili bir şekilde azaltır.
ROP ve JOP saldırıları, bir uygulamanın kontrol akışını ele geçirmek için yığın üzerindeki işaretçileri veya dönüş adreslerini geçersiz kılmalarına izin veren zafiyetleri kullanma yeteneğine dayanır. Akışı mevcut kod gadget'larına veya dönüş odaklı programlama gadget'larına yönlendirerek, saldırganlar rastgele kod çalıştırabilirler.
CET'in IBT özelliği, dolaylı dalların yalnızca açıkça geçerli hedefler olarak işaretlenmiş adreslere atlama yapabilmesini sağlayarak bu saldırıları önemli ölçüde zorlaştırır. Bu, saldırganların ikili dosya üzerinde yayılmış rastgele gadget'ları çalıştırmasını imkansız hale getirir.
Gölge yığın ise, bir saldırgan normal yığındaki bir dönüş adresini geçersiz kılabilse bile, dönüşten sonra bozulmuş adres ile gölge yığında saklanan güvenli kopya karşılaştırıldığında uyumsuzluğun tespit edilmesini sağlar. Adresler eşleşmezse, program sona erebilir veya diğer güvenlik önlemleri alabilir, böylece saldırının başarılı olmasını engeller.
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)