Güvenlikte Bu Hafta: Pacman, Hetzbleed ve Internet Explorer’ın Ölümü


Bu hafta hakkında konuşmak için bir değil iki yan kanal saldırısı var. yukarı ilk pacman, ARM’nin İşaretçi Kimlik Doğrulama Kodu için bir atlama. PAC, işaretçiler güncellendiğinde bir şifreleme karma değerinin doğru ayarlanması gereken belirli ARM İşlemcilerinde yerleşik bir korumadır. Karma doğru ayarlanmazsa, program basitçe çöker. Buradaki fikir, çoğu istismarın kod yürütmeyi sağlamak için işaretçi manipülasyonunu kullanması ve PAC’nin doğru şekilde ayarlanmasının açık bir talimat çağrısı gerektirmesidir. PAC aslında işaretçinin kendisinin kullanılmayan bitlerinde gösterilir. AArch64 mimarisi, adresleme için 64 bitlik değerler kullanır, ancak adres alanı 64 bitten çok daha azdır, genellikle 53 bit veya daha azdır. Bu, PAC değeri için 11 bit bırakır. Uygulamanın tuşları tutmadığını ve bu değeri hesaplamadığını unutmayın. 11 bit bunu güvenli hale getirmek için yeterli görünmeyebilir, ancak her başarısız girişimin programı çökerttiğini ve her uygulamanın yeniden başlatılmasının anahtarları yeniden oluşturduğunu unutmayın.

Pacman’ın sunduğu şey, saldırganın görmemesi gereken veriler hakkında fikir edinme yöntemi olan bir kehanettir. Bu durumda, kahin Meltdown ve Spectre’a çok benzeyen spekülasyon saldırıları yoluyla çalışır. Anahtar, korumalı bir işaretçi referansını spekülatif olarak denemek ve ardından sistem durumundaki değişikliği sonuç olarak gözlemlemektir. Fark edebileceğiniz şey, bunun PAC oracle tekniğini çalıştırmak için hedef sistemde zaten kod çalıştırmak için bir saldırı gerektirdiğidir. Pacman bir Uzaktan Kod Yürütme kusuru değildir ve RCE elde etmede yararlı değildir.

Bir diğer önemli not da, bu korumadan yararlanmak için bir uygulamanın PAC desteğinin derlenmiş olması gerektiğidir. PAC’yi yaygın olarak kullanan platform, M1 işlemcilerinde yerleşik bir özellik olduğu için MacOS’tur. Saldırı zinciri, muhtemelen PAC desteğinin eksik olduğu bir uygulamada bir uzaktan yürütme hatasıyla başlayacaktır. Ayrıcalıksız kullanıcı alanında bir dayanak oluşturulduğunda, Pacman çekirdeğe karşı bir istismarın parçası olarak kullanılacaktır. Görmek PDF kağıdı tüm detaylar için.

Hertzbleed

Diğer yan kanal tekniği, eski bir fikrin yeni bir yorumudur. Hertzbleed temel frekansta çalışan bir CPU ile bir yükseltme frekansında çalışan CPU arasındaki farkı tespit etmenin mümkün olduğu fikrine dayanır. Bu iki durum arasındaki fark, aslında CPU’nun ne yaptığı hakkında bazı bilgileri sızdırabilir. var ön yayın PDF’si Ayrıntıları kontrol etmek için kağıtlarının. En büyük sonuç, zamanlama saldırılarına karşı standart korumanın, sabit zamanlı programlamanın her zaman güvenilir bir güvenlik önlemi olmamasıdır.

Maksimum frekans işlemcinin Termal Tasarım Gücüne (TDP), bir CPU’nun kullanmak üzere tasarlandığı maksimum güç miktarına ve dağıtılacak ısı miktarına bağlı olduğu için çalışır. Farklı talimatlar aslında farklı miktarlarda güç kullanacak ve buna bağlı olarak az ya da çok ısı üretecektir. Daha fazla ısı, daha erken kısma anlamına gelir. Ve kısma tepki sürelerinde tespit edilebilir. Bunun detayları oldukça etkileyici. Farklı kayıt değerleriyle aynı komutları çalıştırmanın bile biraz farklı güç çekimine neden olduğunu biliyor muydunuz? Kuantum açısından güvenli bir anahtar değişim tekniği olan SIKE adlı tek bir şifreleme algoritması seçtiler ve zamanlama saldırıları yoluyla bir sunucunun gizli anahtarını çıkarmaya çalıştılar.

SIKE’de, yine bu araştırmada keşfedilen ve açıklanan bir tuhaflık var, algoritmanın bir kısmına kısa devre yaptırmanın mümkün olduğu, bir dizi dahili, ara adımın sıfır değeriyle sonuçlanmasının mümkün olduğu. Statik anahtarın birden fazla ardışık bitini biliyorsanız, bu tuhaflığa ulaşan bir meydan okuma oluşturmak mümkündür. Ek olarak, bir sonraki bilinmeyen bit için bir tahminde bulunabilirsiniz ve yalnızca doğru tahmin ederseniz tuhaflığa düşer. SIKE, sabit zamanlı programlama kullanır, bu nedenle bu garip davranış önemli olmamalıdır. Ve burada Hertzbleed gözlem faktörleri devreye girer. SIKE algoritması, bu basamaklı sıfır davranışını içeren bir çalışma yaparken daha az güç tüketir. Daha az güç tüketmek, işlemcinin daha uzun süre tam destek saatlerinde kalabileceği anlamına gelir, bu da anahtar değişiminin biraz daha hızlı tamamlandığı anlamına gelir. Yeter ki bir ağ bağlantısı üzerinden bile algılanabilsin. Cloudflare’ın CIRCL kitaplığına ve Microsoft’un PQCrypto-SIDH’sine karşı test ettiler ve her iki uygulamadan da gizli anahtarları sırasıyla 36 ve 89 saatte kurtarabildiler.

Bu özel kusura karşı, basamaklı sıfırları tetikleyebilecek bir sorgulama değeri tespit etmenin ve herhangi bir işlem gerçekleşmeden önce bu değeri engellemenin mümkün olduğu bir azaltma vardır. Aynı teknik kullanılarak diğer algoritmalardaki tuhaflıkların keşfedilip silahlandırılamayacağını görmek ilginç olacak. Ne yazık ki, işlemci tarafında, tek gerçek azaltma, işlemci performansı üzerinde önemli bir olumsuz etkiye sahip olan hızlandırma saatlerini tamamen devre dışı bırakmaktır.

Nest Secure Boot’u yenmek

[Frédéric Basse] bir Google Nest Hub’a sahiptir ve gerçekten kendi Linux dağıtımını üzerinde çalıştırmak istedi. Yine de bir sorun var. Nest, güvenli önyükleme kullanır ve önyükleyicinin kilidini açmanın resmi bir yolu yoktur. Kendini işine adamış bir bilgisayar korsanı ne zamandan beri bunun onu durdurmasına izin verdi? İlk adım, bir şerit kablonun bazı sonlandırılmamış kanallarında gizlenmiş bir UART arayüzü bulmaktı. Daha sonra özel bir devre kartı ve bir U-Boot günlüğü vardı. Sonraki, önyükleme düğmesi kombinasyonlarını gözden geçirmek ve U-Boot’un her biriyle ne yapmaya çalıştığını görmekti. Bu kombinasyonlardan biri, güvenli önyükleme için değilse ideal olan bir recovery.img’den önyüklemeye izin verir.

U-Boot’un en güzel yanı, GPL kapsamında Açık Kaynak olması, yani kaynak kodunun incelenebilir olması gerektiğidir. Bu kaynakta bir hata bulun ve güvenli önyükleme baypasınız olur. Açık Kaynak ayrıca, U-Boot kodunun bölümlerini kullanıcı alanında çalıştırmak ve bir fuzzer ile çalıştırmak gibi bazı eğlenceli yaklaşımlara da izin verir. 512 bayttan büyük bir blok boyutunun arabellek taşmasını tetiklediği bir hatayı bulan yaklaşım budur. 512’den büyük blok boyutuna sahip herhangi bir USB depolama aygıtı olmadığı için bu genellikle güvenli bir varsayımdır.

Asla korkmayın, Raspberry Pi Pico gibi bir cihaz TinyUSB’yi çalıştırabilir, bu da belirlediğiniz blok boyutu ne olursa olsun bir USB cihazını taklit etmeye izin verir. Bir test, bu yaklaşımın gerçek cihazda tekrarlanabilir bir çökmeyle sonuçlandığını belirledi. Kodun yürütülmesi oldukça basittir ve esas olarak bir dizi talimat yazar. noop bir yükü işaret eden kodlar ve ardından dönüş işaretçisinin üzerine yazılır. Kutuda kod yürütme, geriye kalan tek şey komut listesinin üzerine yazmak ve özel bir U-Boot komut dosyasını çalıştırmaktı. Güzel şey.

PING

alçak ping emretmek. Tek bir paket çifti bize bir ağ ve uzak ana bilgisayar hakkında ne kadar bilgi verebilir? Göre [HD Moore]biraz. Örneğin, bir ping yanıtı için verilen süreyi alın ve milisaniyede 186 mil temelinde bir mesafe hesaplayın. Bu, ev sahibinin uzak olduğu mutlak maksimum mesafedir, ancak bu miktarın dörtte biri ve yarısı bir mesafe tahmini için makul alt ve üst sınırlardır. TTL büyük olasılıkla 64, 128 veya 255’te başladı ve yol boyunca karşılaşılan atlamalar hakkında gerçekten iyi bir tahminde bulunabilirsiniz. Oh, ve bu yanıt 64’te başladıysa, muhtemelen bir Linux makinesi, Windows için 128 ve 255 genellikle BSD’den türetilen bir işletim sistemini gösterir.

Bir “hedef ana bilgisayara erişilemiyor” mesajı almak başlı başına ilginçtir ve size verilen IP’ye ulaşması gereken yönlendirici hakkında bilgi verir. Ardından, mesajı alt ağdaki her IP’ye gönderen yayın IP’si vardır. Paket yakalama için Wireshark gibi bir şey kullanmak burada aydınlatıcıdır. Birden fazla cihaz yanıt vermiş olsa bile komutun kendisi yalnızca bir yanıt gösterebilir. Bu yanıtların her birinin, satıcıyı bulmak için aranabilecek bir MAC adresi vardır. Bir başka ilginç numara da, genel bir IP adresiyle kontrol ettiğiniz bir makineyi kullanarak bir ping paketinin kaynak IP adresini taklit etmektir. Ağdaki her cihaza ping atın ve birçoğu yanıtı varsayılan ağ geçidi aracılığıyla gönderir. Orada olmaması gereken bir İnternet bağlantısı veya VPN bulabilirsiniz. Alçakgönüllülerden bu kadar çok şey öğrenebileceğini kim bilebilirdi? ping.

Bitler ve Baytlar

Internet Explorer Gerçekten, Gerçekten, Öldü. Eğer siz de benim gibi Internet Explorer’ın yıllar önce emekli olduğu izlenimine kapıldıysanız, bunun nihayet bu hafta içinde yapıldığını bilmek sizi şaşırtabilir. Bu ayın Salı yaması, IE’nin resmi olarak desteklendiği son gündü ve şu andan itibaren tamamen desteklenmiyor ve sonunda Windows 10 makinelerinden otomatik olarak kaldırılması planlanıyor. Ayrıca bu ay gelen yama düşüşü nihayet Follina için düzeltmeve diğer birkaç önemli düzeltme.

HTTPS DDOS saldırıları için geçen hafta yeni bir rekor kırıldı: Cloudflare bir saldırıyı hafifletti saniyede 26 milyon istekten oluşur. HTTPS saldırıları, hem ham veri doygunluğu hem de sunucu kaynaklarının tükenmesinden oluşan bir-iki yumruktur. Saldırı, en büyük dilimi Endonezya’dan gelen bir sanal makine ve sunucu botnetinden geldi.

Travis CI’nin ücretsiz katmanını mı çalıştırıyorsunuz? Bunu biliyor muydun günlüklerinize bir Travis API çağrısı aracılığıyla tüm dünya erişebilir? Bunun da ötesinde, 2013’ten bu yana yapılan tüm koşu geçmişi mevcut gibi görünüyor. Bazı erişim anahtarlarını iptal etmenin zamanı gelmiş olabilir. Travis erişim belirteçlerini sansürleme girişiminde bulunur, ancak birçoğu yine de elekten geçer.

Önyükleme sırasında TPM anahtarının koklanması için risk matrisinin nasıl göründüğünü hiç merak ettiniz mi? güzel değil. Secura’daki araştırmacılar, altı popüler şifreleme ve güvenli önyükleme uygulamasını inceledi ve bunların hiçbiri, anahtarları kablo üzerinde şifreleyecek parametre şifreleme özelliklerini kullanmadı. ironik sonuç? ayrık TPM yongaları, anakartın belleniminde yerleşik olanlardan daha az güvenlidir.


Kaynak : https://hackaday.com/2022/06/17/this-week-in-security-pacman-hetzbleed-and-the-death-of-internet-explorer/

Yorum yapın

SMM Panel