Bloga geri dön
Persistence taktiği altında, işletim sistemine, saldırganın sahip olduğu erişim seviyesine göre farklılık gösteren çok sayıda teknik mevcut. Bu yazıda en yaygın tekniklerden biri olan, MITRE ATT&CK matrisinde T1547.001 ATT&CK ID’sine karşılık gelen Registry Run Keys/Startup Folder tekniğini ele alacağız.
Öncesinde Windows Registry kavramına göz atalım.
Registry; yazılım programları, donanım aygıtları, kullanıcı tercihleri ve işletim sistemi konfigürasyonlarına ilişkin bilgileri key-value çiftleri şeklinde tutan hiyerarşik bir veritabanıdır. Sistem genelindeki registry ayarları “C:\Windows\System32\Config” altında saklanır. Benzer şekilde her kullanıcı “C:\Windows\Users\{Username}\NTUser.dat” dizininde kendisine ait ayarların kopyasına sahiptir.
“Registry Run Keys”, sistemin başlatılması esnasında, belirli ayarların ve konfigürasyonların otomatik olarak yüklenmesine olanak tanıyan anahtarlardır. Bununla birlikte, çalıştırılabilir dosyaları işaret ederek, programların/DLL dosyalarının başlangıçta tetiklenmesine izin verir.
Startup dizini benzer şekilde sistemin başlatılması esnasında tetiklenecek dosyaları barındırır.
T1547.001 tekniği de, sistemin her başlatılmasında zararlı komutun/dosyanın çalıştırılması için registry anahtarlarının değiştirilmesini veya Startup dizinine zararlı dosyanın eklenmesini içermektedir.
Varsayılan olarak Startup dizinleri:
C:\Users\[User Name]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
Saldırganlar tarafından sık kullanılan registry anahtarları:
1. Run/Runonce Anahtarları:
Run ve Runonce Anahtarları, bir kullanıcı sistemde her oturum açtığında programın tetiklenmesini sağlar. Zararlı yazılımlar bu anahtarları düzenli olarak kullanır, kullanım kolaylığı sebebiyle en fazla kullanılan anahtarlardır.
Aşağıdaki anahtarlar, Windows sistemlerde varsayılan olarak oluşturulur:
“HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnceEx” anahtarı varsayılan olarak gelmez, ancak registry üzerinde oluşturulup kullanılabilir.
2. Startup Anahtarları:
İlgili anahtarlar, saldırganlar tarafından Startup klasörünün konumunu ayarlamak için kullanılır.
3. RunServices/RunServicesOnce Anahtarları:
Çoğu servisin boot esnasında çalışması gerekir. Bu anahtarlar arka planda çalışan servislerin otomatik olarak başlatılmasını kontrol eder. Saldırganlar, ilgili anahtarları kullanarak, zararlı dosyaları arka planda çalışan bir servis olarak çalıştırabilirler.
4. “Policies Run” Anahtarları:
Policy anahtarları başlangıçta tetiklenecek programları belirtmek için kullanılabilir.
5. Winlogon Anahtarları:
İlgili anahtarlar kullanıcı oturum açtığında gerçekleşen aktiviteleri kontrol eder.
6. Boot Anahtarları:
İlgili anahtar, sistem başlamadan önce disklerin bütünlüğünün doğrulanması için autochk.exe veya autochk dosyalarına işaret eder. Anahtar, değer listesi kabul etmektedir, böylece zararlı yazılımlar kendilerini bu anahtara ekleyip, autochk ile birlikte sistemin çalışma süresi boyunca çalışabilmektedir.
Prosedür Örnekleri
Any.run sandbox ortamında herkese açık olarak paylaşılmış, T1547.001 tekniğini kullanan zararlı yazılımları aşağıdaki filtre ile sınıflandırabiliriz.
Zararlı yazılımlardan bazılarının yaptığı değişikler ekran görüntülerindeki gibidir. Any.run üzerinde daha fazla zararlı yazılım için prosedür örnekleri bulabilirsiniz.
* Saldırgan hedef sistemde kalıcı olabilmek için, smss.exe, explorer.exe, IMEDICTUPDATE.exe zararlı yazılımlarını Run anahtarına ekleyerek, sistemde her oturum açılışında dosyaların çalıştırılmasını sağlıyor.
* Saldırgan hedef sistemde kalıcı olabilmek için için kullandığı zararlı komutu RunOnce anahtarının değer kısmına yazıyor. Böylece sistemde her oturum açılışında, advpack.dll dosyasındaki DelNodeRunDLL32 fonksiyonuna kendi .TMP uzantılı zararlı dosyasını parametre olarak verip çalıştırıyor.
** Saldırgan hedef sistemde kalıcı olabilmek için, admin kullanıcısının Startup dizinine zararlı dosyayı ekliyor. Böylece admin kullanıcısı sistemde her oturum açtığında zararlı dosya çalıştırılıyor.
Önleme & Tespit
Atak Windows sistem özelliklerini kötüye kullandığından doğrudan önleyici bir faaliyet bulunmuyor. Tespiti için yukarıda bahsedilen Run Keys başta olmak üzere registry aktiviteleri ve startup dizininde yapılan değişiklikler/eklemeler izlenmeli.
Çok güzel bir yazı olmuş ellerinize sağlık