npm ve Github’da bulunan iki JavaScript modülünün yapımcısı, gönüllü olarak bu iki modülü çalışmaz hale getiren iki güncelleme yayınladı. Güncellemeler, iki projeden birini yükleyen programlarda sonsuz bir döngüye neden olan ve proje konsolunda gereksiz karakterlerin görüntülenmesine neden olan bir mekanizma içeriyordu. Projeye eklenen beni oku dosyalarında geliştirici, Aaron Swartz’ın ölümüne atıfta bulunan bir mesaj yayınladı. #AaronSwartz hashtag’i, geliştiricinin Twitter hesabında da kötü niyetli güncellemeleri iddia eden bir gönderide yankılandı.
Faker.js uygulama testi amacıyla anında sahte veri oluşturmak için bir kütüphanedir. Bu program 2.500’den fazla proje tarafından kullanıldı ve haftada en az 2,8 milyon indirme aldı. Colors.js sırasıyla 19.000’den az projede kullanıldı ve 23 milyon haftalık indirildi. Bu modül, özellikle metne belirli renkler uygulayarak, uygulama içindeki metni biçimlendirmek için kullanılan kısmı içindi.
İlk başta, birçok kullanıcı garip bir saldırıdan şüphelendiyse, aslında iki projenin yazarının kasıtlı olarak kendi kodunu sabote ettiği görülüyor. Faker ve Colors davasında, iki projenin yapımcısı, kodunun artık büyük şirketler tarafından tazminatsız kullanılmasını istemediği gerçeğinden daha önce bahsetmişti. Bleeping Computer tarafından bildirildiği gibi. Ancak bu güncellemenin arkasındaki geliştiricinin kişiliğini ve kesin amaçlarını saptamak zor, bu güncelleme hem Aaron Swartz’ın anısını hatırlatıyor hem de Ghislaine Maxwell davası ve Twitter hesabındaki Gamergate ile bağlantılı birkaç komplo tezine atıfta bulunuyor. Geçen haftadan ve durumla ilgili birkaç görünüşte ironik mesajın yayınlanmasından bu yana, iki projenin yazarının Twitter hesabı sessiz kalıyor ve hareketinin nedenlerine dair daha kesin bir açıklama sunmuyor.
Aksine Leftpad veya Log4shell?
Geliştiricinin Twitter hesabına göre, Github, kötü amaçlı güncellemenin yayınlanmasına yanıt olarak hesabını askıya aldı ve npm, platformunda yayınlanan iki projenin çalışan sürümlerini geri yükledi. Karar, birçok geliştiricinin tepki göstermesine neden oldu, Github ve npm gibi platformların bir kullanıcı tarafından silinen içeriği geri yükleme hakkını kendilerine verdiğini görünce şaşırdı. Ancak bu tam olarak bir ilk değil: 2016’da, bu sefer Leftpad JavaScript modülünü içeren benzer bir durumda, npm, yazarı tarafından silinen ve birçok projenin dayandığı bir modülü eski durumuna getirerek tam olarak aynı şeyi yapmayı seçti. npm’nin Github ve Microsoft tarafından devralınmasından çok önce, paket yöneticisi bu nedenle, ilk projenin yapımcısının iradesinden ziyade, etkilenen modüllere bağlı projelerin düzgün işleyişini tercih etmeyi seçmişti.
Dava ayrıca, Log4j’de keşfedilen kusurlar tarafından zaten ön plana çıkarılan açık kaynak yönetiminin zorlu sorununa da ışık tutuyor. Açık kaynak projeleri, birçok iş projesinin yapı taşları haline gelir, ancak bu temel projeler üzerinde çalışan bakımcılar ve geliştiriciler nadiren ücret alır ve bazen yarı gönüllü olarak çalışırlar. Para sorununun yanı sıra, birçok açık kaynak projesi yalnızca bakım yapanların ve geliştiricilerin iyi niyeti sayesinde var olur ve bir projenin geri çekilmesi domino etkisiyle binlerce başka projeyi etkileyebilir.