Blockchain güvenlik platformu Cyvers’ın arkasındaki ekibe göre 14 Aralık tarihinde birden fazla Web3 uygulamasından en az 484 bin dolar çalan saldırgan, Web3 kullanıcılarını sahte bağlantılarla kandırarak onay vermelerini sağladı.
Olayın içinde bulunan birden fazla tarafın kamuoyuna yaptığı açıklamalara göre saldırı 14 Aralık sabahı gerçekleşti. Saldırgan, eski bir Ledger çalışanının bilgisayarını ele geçirmek için kimlik avı saldırısı gerçekleştirdi ve çalışanın node package manager javascript (NPMJS) hesabına erişim sağladı.
We have identified and removed a malicious version of the Ledger Connect Kit.
A genuine version is being pushed to replace the malicious file now. Do not interact with any dApps for the moment. We will keep you informed as the situation evolves.
Your Ledger device and…
— Ledger (@Ledger) December 14, 2023
Saldırganlar, bilgisayara erişim sağladıktan sonra Ledger Connect’in GitHub deposuna kötü amaçlı bir güncelleme yükledi. Ledger Connect, Web3 uygulamaları için yaygın olarak kullanılan bir platform olarak biliniyor.
Bazı Web3 uygulamalarının yeni sürüme geçmesiyle kötü amaçlı kod kullanıcıların tarayıcılarına da dağıldı. Zapper, SushiSwap, Phantom, Balancer ve Revoke.cash gibi uygulamalar da saldırıdan etkilendi.
Sonuç olarak saldırgan, uygulama kullanıcılarından en az 484 bin dolar çalmayıi başardı. Uzmanlar, diğer uygulamaların da etkilenmiş olabileceği ve güvenlik açığının tüm Ethereum Sanal Makinesi (EVM) ekosistemini etkileyebileceği konusunda uyarılarda bulundu.
Saldırı nasıl gerçekleşmiş olabilir
Cointelegraph’a konuşan Cyvers CEO’su Deddy Lavid, baş teknoloji sorumlusu Meir Dolev ve blockchain analisti Hakal Ünal, saldırının nasıl gerçekleşmiş olabileceğine dair yorumlarda bulundu.
Yorumlara göre saldırgan, yüksek ihtimalle kullanıcı cüzdanlarında kafa karıştırıcı işlem verileri sunmak amacıyla kötü amaçlı kod kullanarak kullanıcıyı istemediği işlemleri onaylamaya yönlendirdi.
Dolev, geliştiricilerin Web3 uygulamaları oluştururken uygulamaların kullanıcı cüzdanlarına bağlanmasını sağlamak için açık kaynak kodlu “bağlantı kitleri” kullandıklarını ve bu kitlerin, birden fazla uygulamaya yüklenebilen stok kod parçalarından oluştuğunu, geliştiricilerin kod yazmak için zaman harcamalarına gerek kalmadan bağlantı sürecini yönetmelerini sağladığını belirtti. Ledger’ın bağlantı kiti, bu görevi yerine getirmek için mevcut seçeneklerden biriydi.
It sounds like today’s security incident was the culmination of 3 separate failures at Ledger:
1. Blindly loading code without pinning a specific version and checksum.
2. Not enforcing “2 man rules” around code review and deployment.
3. Not revoking former employee access.
— Jameson Lopp (@lopp) December 14, 2023
Bir geliştirici uygulamasını ilk kez yazdığında, genellikle Node Package Manager (NPM) aracılığıyla bir bağlantı kiti yükler. Yapı oluşturulduktan ve web sitesine yükledikten sonra uygulama, kodunun bir parçası olarak bağlantı kitini daha sonra kullanıcı siteyi her ziyaret ettiğinde kullanıcının tarayıcısına indirir.
Cyvers ekibine göre Ledger Connect Kit’e eklenen kötü amaçlı kod, saldırganın kullanıcı cüzdanında gerçekleştirilen işlemleri değiştirmesine olanak sağlamış olabilir. Uygulamayı kullanma sürecinin parçası olarak kullanıcının, genellikle token sözleşmelerine onay vermesi gerekir, bu da uygulamanın kullanıcı cüzdanından token harcamasına izin verir.
Blokzincir verileri, saldırı kurbanlarının kötü niyetli sözleşme üzerinden çok büyük miktarlar için onay verdiğini gösteriyor. Örneğin, saldırgan tek bir işlemde 0xAE49C1ad3cf1654C1B22a6Ee38dD5Bc4ae08fEF7 Ethereum adresinden 10 bin doların üzerinde para çekmiş. Bu işlemin kaydı, kullanıcının kötü niyetli sözleşme tarafından çalınmak üzere çok büyük miktarda USDC transferini onayladığını gösteriyor.
Cyvers ekibi, bu onayın muhtemelen kötü amaçlı kod nedeniyle kullanıcı tarafından istem dışı gerçekleştirildiğini belirtti ve cüzdanlar, kullanıcılara ne konuda onay verdikleri konusunda her zaman net bilgi vermediği için bu tür bir saldırıdan kaçınmanın son derece zor olduğu konusunda uyardı. Bu durum konusunda yardımcı olabilecek bir güvenlik uygulaması ise uygulamayı kullanırken ortaya çıkan her işlem onay mesajını dikkatlice değerlendirmektir. Ancak, işlem kolayca okunamayan veya kafa karıştırıcı bir şekilde görüntüleniyorsa güvenlik uygulaması da yardımcı olmayabilir.
Cyvers, platformlarının işletmelerin sözleşme adreslerini kontrol ettiğini ve bu adreslerin herhangi bir olaya karışıp karışmadığını belirlemelerine olanak tanıdığını iddia etti. Cyvers, bu saldırıda kullanılan akıllı sözleşmeleri oluşturan hesabın 180 olaya karıştığını tespit edildi.
Ekip Cointelegraph’a yaptığı açıklamada, gelecekte Web3 araçlarının bu gibi saldırıların önceden tespit edilmesine ve engellenmesine olanak sağlayabileceğini ancak sektörün bu sorunu çözmekte hala “kat etmesi gereken uzun bir yol” olduğunu ifade etti.