Kötü Niyetli Depolarla Yazılımcılara Yönelik Saldırı Kampanyası
Yazılım geliştiricilere yönelik kötü niyetli depolarla gerçekleştirilen koordineli saldırı kampanyası, iş temalı tuzaklar kullanarak dikkat çekiyor. Bu kampanya, uzaktan kod çalıştırma (RCE) hedefli olup, geliştiricilerin makinelerinden hassas verilerin çalınmasını ve tehlikeli yüklü yazılımların sisteme entegre edilmesini amaçlıyor.
Saldırı Nasıl Çalışıyor?
Next.js, web uygulamaları geliştirmek için kullanılan popüler bir JavaScript framework’üdür. React’in üzerinde çalışmakta ve arka planda Node.js kullanmaktadır. Microsoft Defender ekibi, saldırganların Next.js ile inşa edilmiş sahte web uygulaması projeleri oluşturduğunu bildirmektedir. Bu projeler, iş görüşmeleri veya teknik değerlendirmelerde geliştiricilerle paylaşmak için kodlama projeleri olarak gösterilmektedir.
Araştırmacılar, başlangıçta bir Bitbucket repository’sinde ev sahipliği yapan bir kötü niyetli depoyu keşfetti. Ancak zamanla, aynı kod yapısını, yükleyici mantığını ve adlandırma kalıplarını paylaşan birçok depo tespit edildi.
Etkilenen Sistemler
Hedef, repository’yi klonladığında ve yerel olarak açtığında, uygulama başlatıldığında otomatik olarak çalıştırılan kötü niyetli JavaScript’i tetikler. Bu script, saldırganın sunucusundan ek kötü niyetli kodu (bir JavaScript arka kapısı) indirir ve bunu mevcut Node.js sürecinde Bellek’te çalıştırır, böylece makinede uzaktan kod çalıştırma (RCE) sağlanmış olur.
Çözüm ve Korunma
Microsoft’un açıklamasına göre, saldırganlar, kötü niyetli depolar içinde birden fazla yürütme tetikleyici yerleştirerek enfeksiyon oranını artırmayı başarmıştır. Bu tetikleyiciler aşağıdaki gibi özetlenebilir:
- VS Code tetikleyici –
.vscode/tasks.jsondosyasırunOn: "folderOpen"olarak ayarlanmışsa, proje klasörü açıldığında bir Node script’i çalıştırılır. - Geliştirici sunucu tetikleyici – Geliştirici
npm run devkomutunu çalıştırdığında, trojanize edilmiş bir varlık (örneğin, değiştirilmiş bir JS kütüphanesi) gizli bir URL’yi çözerek uzaktan bir yükleyici indirip Bellek’te çalıştırır. - Arka uç başlangıç tetikleyici – Sunucu başlatıldığında, bir arka uç modülü
.env‘den bir base64 endpoint’ini çözer,process.envbilgilerini saldırgana gönderir ve yanıt olarak JavaScript alıpnew Function()ile çalıştırır.
Enfeksiyon süreci, makinenin profilini çıkartan ve komut-kontrol (C2) endpoint’i ile kaydolan bir JavaScript yükü (Aşama 1) bırakmaktadır. Daha sonra enfeksiyon, ayrı bir C2 sunucusuna bağlanan bir görev kontrolörü (Aşama 2) ile yükselir. Bu aşama, sunucuya görev kontrolü yapar, Bellek’te sağlanan JavaScript’i çalıştırır ve başlatılan süreçleri takip eder.
Aksiyon: Neler Yapmalısınız?
Microsoft, geliştiricilerin standart iş akışlarını yüksek riskli saldırı yüzeyleri olarak görmekle birlikte uygun önlemleri almalarını önemli bir tavsiye olarak belirtmektedir. Önerilen tedbirler şunlardır:
- VS Code Workspace Trust/Restricted Mode uygulamasını etkinleştirin.
- Attack Surface Reduction (ASR) kurallarını kullanın.
- Riskli oturum açma işlemlerini Entra ID Protection ile izleyin.
- Geliştirici uç noktalarındaki saklanan gizli bilgileri en aza indirin ve mümkün olduğunca en az yetkiye sahip geçici token’lar kullanın.
Yazılımcılar, yukarıdaki önlemleri alarak ve güncellemeleri sürekli takip ederek kendilerini ve sistemlerini bu tür tehditlere karşı koruyabilirler.


