Birkaç gün önce alışılmadık bir olay meydana geldiLinux çekirdek topluluğunu sarsan ve bu da Linus Torvalds, Kees Cook'un kernel.org'daki hesabının derhal askıya alınmasını emretti.Bu geliştiricinin Git deposunda manipüle edilmiş commit'lerin varlığını tespit ettikten sonra.
Kees Aşçı, liderliğiyle tanındı Ubuntu güvenlik ekibinde ve çekirdeğin bir düzineden fazla güvenlikle ilgili alt sisteminin bakımında, Gerçekler açıklığa kavuşana kadar değişiklik sunması geçici olarak yasaklandı.
Kees Cook arşivindeki yazarlık ve imzaların değiştirilmesi
Sorun bir değişiklik ekleme talebinden kaynaklandı.s 6.16 çekirdek dalına, Linus'un bir depoya yapılan referansları belirlediği içerdiği manipüle edilmiş taahhütler Kendisi yapmamış olmasına rağmen, yazar ve doğrulayıcı olarak ismini kullanmıştır. En ciddi örneklerden biri, orijinaliyle içerik olarak aynı olan ancak farklı bir SHA1 karma değerine sahip olan ve Linus Torvalds'ın imzasını yanlışlıkla içeren bir kopyanın varlığıydı.
Bu değişiklikler sadece kazara bir hataya atfedilemezl bir git rebase işlemi sırasında, çünkü bunlar büyük çaplı değişiklikler içeriyordu hassas bilgilerin yer aldığı, 6.000'den fazla yeniden yazılmış commit'in bulunduğu, bunların 330'unun yazarının Linus olduğu.
Torvalds'ın tepkisi: kasıtlı manipülasyon şüphesi
Linus Torvalds endişesini gizlemedi ve olayları potansiyel olarak kötü niyetli olarak tanımladı:
"Bir veya iki yeniden yazma hata olabilir. Ama bunların binlercesi, çoğu benim sahte imzamla, hata değil," diye beyan etti.
Değişikliklerin büyüklüğü ve resmi çekirdek ağacının bütünlüğüne yönelik risk göz önüne alındığında, Torvalds Konstantin Ryabitsev'e sordu, kernel.org altyapı yöneticisi, qDurum netleşene kadar Kees Cook'un erişiminin engellenmesi.
Cevap olarak, Kees Cook, son zamanlarda teknik sorunlar yaşadığını açıkladı bu olaya sebep olmuş olabilir. Dedi ki, SSD sürücünüz kopyalama işlemleri sırasında hatalarla karşılaşıyordu ve bu da bozulmaya neden oluyordu birkaç depoda. Bu hatalardan sonra, git rebase ve çeşitli otomasyon araçlarını kullanarak deposunun durumunu kurtarmaya çalıştı.
Ancak bu işlemler kritik şubelerde gerçekleştirildifor-next/hardening ve for-linus/hardening gibi, deponun geçmişinde yanlışlıkla bir değişikliğe yol açan ve ayrıca commit'lerin yazarlığında değişikliğe neden olan değişiklikler. Linus, bu açıklamalarına rağmen şüpheciydi.:
"Bu kadar çok değişiklik varken, kazara sollamanın nasıl olabildiğini anlayamıyorum."
Gerçek suçlu: git-filter-repo ve b4 fragmanları
Daha sonraki bir mesajımda, Kees Cook hatanın muhtemel kaynağını belirledi: iki aracın birlikte kullanımı, git-filter-repo ve b4 fragmanları, commit geçmişini manipüle eder ve commit'lerde fragmanlar (Signed-off-by: gibi etiketler).
Bu yanlış kullanım karların binlerce commit'in otomatik olarak yeniden yazılmasına neden olurdu, yazarı varsayılan değerle değiştirmek de dahil (bu durumda Linus Torvalds), Kees o sırada hatayı fark etmedenB4 aracının yazarı Konstantin Ryabitsev bu teoriyi doğruladı ve Cook'un kötü niyetli bir niyetinin olmadığını ileri sürdü. Aslında sistem zaten görmezden gelinen uyarılar üretiyordu.
Durumun netleşmesinin ardından Kees Cook'un kernel.org'a erişimi tekrar sağlandı. Önleyici bir tedbir olarak, aracın duyurulduğu bildirildi b4 yeni bir güvenlik kontrolü içerecektir, Bu, bundan sonra yazarlığı geçerli kullanıcının kimliğiyle uyuşmayan commit'lerin değiştirilmesini önleyecektir. Bu, benzer hataları önlemek ve çekirdek kaynak kodunun bütünlüğünü korumak için tasarlanmıştır.
Kees ise etkilenen dalları yeniden yaratma sözü verdi. bireysel yamalar ve hataya yol açan adımları derinlemesine analiz edin. Olay, takım içindeki ilişkileri gerdi Çekirdek geliştirme, özellikle Linux çekirdeği gibi kritik projelerde, geçmiş yeniden yazma araçlarının dikkatli kullanılmasının önemini de vurguladı.
Son olarak, Linus Torvalds ile Kees Cook arasındaki bu olayın, taahhüt geçmişini manipüle etmenin tehlikeleri konusunda bir uyarı niteliğinde olduğunu ve hızlı müdahale sayesinde kernel.org'dan ve sürecin şeffaflığından sorumlu olanlardan, durum kontrol altına alındı.
Son olarak, eğer bu konu hakkında daha fazla bilgi edinmek istiyorsanız, aşağıdaki ayrıntıları kontrol edebilirsiniz. bağlantı.