Hepinize selamlar, bu makalemde sizlere saldırganların hedef sistemlerde kalıcılık sağlamak için kullandıkları, MITRE ATT&CK matrisinde T1547.001 ATT&CK ID’sine karşılık gelen Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder tekniğini anlatmaya çalışacağım.
Saldırganlar sistemlerde ilk erişimlerini sağladıktan sonra, sistemler üzerine erişimlerini devam ettirebilmek için kendilerini koruma altına almak isterler. Kısacası sistemler üzerinde kalıcılıklarını devam ettirmeyi amaçlarlar.
Persistence (kalıcılık)
Kalıcılık, saldırgan kişi ya da grupların hedef sistemlere initial access (ilk erişim) sağladıktan sonra erişimlerinin kesintiye uğramasını engellemek için kullandıkları yöntemler olarak adlandırılmaktadır.
Hedef sistemlerde persistence(kalıcılık) sağlamak için kullanılan yöntemleri araştırdığınız zaman çok fazla teknik olduğunu göreceksiniz. Bunun için MITRE ATT&CK sayfasını ziyaret ederek detaylı araştırmalar yapabilirsiniz.
Registry Run Keys / Startup Folder
Registry ve Startup Folder, saldırganlar tarafından kalıcılık sağlanmak için kullanılan eski ama en etkili yöntemlerden biridir. Run Key’lere yeni bir giriş eklemek veya Startup Folder içeriğine bir kısayol oluşturmak kullanıcı oturum açtığında kötü amaçlı kodlarımızı çalıştırmamız için yeterli olacaktır. Bu konumlar içerisinde zararlı kodlarımızı çalıştırmamız sonucunda kalıcılık sağlama noktasında yeterli olacaktır.
Şimdi makalemizin içeriğinde yer alan ve bizim için önemli olan bazı teknik kavramlardan bahsedelim.
- Kayıt Defteri: Windows İşletim sistemlerinde donanım ve programlar için bilgilerin yer aldığı, ayarlama ve yapılandırma seçeneklerinin yer aldığı bir veritabanıdır.
- Key – Anahtar: İçerisinde alt anahtarlar ve değerler içeren klasörlere benzeyen yapılardır.
- Değer: Anahtarlarda saklanan veri çiftidir.
- HKEY_LOCAL_MACHINE (HKLM): Yerel bilgisayarlar için tüm ayarların ve yapılandırmaların saklandığı root key. SAM, SECURITY, SYSTEM, SOFTWARE olmak üzere 4 farklı anahtar içerir. Bu ayarlar boot esnasında yüklenir ve tüm kullanıcılar için geçerlidir.
- HKEY_CURRENT_USER (HKCU): Halihazırda oturum açmış kullancılar için ayarların ve konfigürasyonların yer aldığı root key. Bu ayarlar kullanıcı oturum açtığı zaman uygulanmaktadır.
T1547.001 ATT&CK tekniğinde, sistemin her başlatılmasında yürütülebilir zararlı komutun ya da dosyanın çalıştırılması için Startup dizinine zararlı dosyanın eklenmesi ya da registry anahtarının değiştirilmesini içermektedir.
Varsayılan Startup dizinleri:
- Oturum açmış kullanıcılar için:
C:\Users\[User Name]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
- Tüm kullanıcılar için:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
Bu Kalıcılık Yöntemi Ne Kadar Yaygındır
Kayıt defteri çalıştırma anahtarlarını kullanarak kalıcılık sağlamaya çalışmak kötü amaçlı yazılımların ve saldırganların kullandığı en yaygın yöntemlerden birisidir.
Örnek olarak dünya çapında en çok zarar veren saldırıların bazılarından sorumlu olan Ryuk fidye yazılımı, kalıcılık sağlamak için kayıt defteri çalışma anahtarını kullanmıştır.
Aynı şekilde detaylı bir araştırma sonucunda APT39, APT41, FIN7 ve Gameroddon Group gibi APT grupların da saldırıların da kalıcılık sağlamak için kayıt defteri çalışma anahtarlarını veya startup folderları kullanıldığı görülmüştür.
Son olarak Emotet, Hancitor ve IceID gibi genel anlamda daha çok bilinen kötü amaçlı yazılımların bu tekniği bir çok kez kullandıkları tespit edilmiştir.
1. “Run” ve “RunOnce” Kayıt Defteri Anahtarları:
Run ve RunOnce anahtarları, bir kullanıcı sistemde her oturum açtığında programların çalışmasını sağlar. Örnek olarak bir zararlı yazılım sistem her başlatıldığında kalıcılık sağlamak için çalışacaktır.
Aşağıdaki kayıt defteri anahtarları varsayılan olarak oluşturulur:
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\Run
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
2. RunServices” ve “RunServicesOnce” Kayıt Anahtarları:
Bu anahtarlar arka planda çalışan hizmetlerin otomatik olarak başlatılmasını kontrol eder. Saldırganlar da kendi zararlılarını arka planda servis olarak ekleyerek servis gibi çalışmasını sağlamaktadır.
HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices
HKCU\Software\Microsoft\Windows\CurrentVersion\RunServices
HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
HKCU\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
3. “Shell Folders” ve “User Shell Folders” Kayıt Anahtarları:
İlgili anahtarlar, saldırganlar tarafından başlangıç klasörünün konumunu ayarlamak için kullanılır. Bu nedenle “Startup Folder” olarak da adlandırılır.
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
4. “Policies Run” Anahtarları:
Policies Run anahtarları başlangıç programlarını belirtmek için kullanılmaktadır.
HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
5. Winlogon Kayıt Defteri Anahtarları:
Aşağıdaki tuşlar, bir kullanıcı oturum açtığında gerçekleşen eylemleri kontrol eder.
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit
: Genellikle userinit.exe’ye işaret etmektedir. Bir düşman, userinit.exe dosyasını yürütülebilir kötü amaçlı bir yazılımla değiştirebilir veya kötü amaçlı yazılımın yürütülebilir dosyasına işaret eden yeni girdiler ekleyebilmektedir. Bunun sonucunda bu zararlı yürütülebilir yazılım sistem başlangıcında başlayabilmektedir.HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell
: Bu anahtar, yalnızca explorer.exe’yi işaret etmektedir.HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify
: Bu alt anahtar, Secure Attention Sequence (SAS) (Ctrl+Alt+Del) gerçekleştiğinde ve bir DLL yüklediğinde olay tanıtıcılarını bilgilendirmek için kullanılmaktadır. Düşmanlar zararlı yazılımlarını yüklemek için bu DLL dosyasını değiştirmektedir.
6. BootExecute Kayıt Defteri Anahtarı:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager:
Bu
BootExecute
anahtardaki değer, önyükleme sırasında başlatılır. Varsayılan değeri “autocheck autochk ” olmasına rağmen, düşmanlar bu değere başka komutlar, komut dosyaları veya programlar ekleyebilmektedirler.
Bu kısımda ise kırmızı ve mavi takım bakış açısıyla bu saldırıyı nasıl gerçekleştirebiliriz ve nasıl tespit edebiliriz kısımlarına değinelim. 🙂
Red Teaming
Terminal
Kalıcılığı sağlamak için kayıt anahtarları terminalden eklenebilir. Bu anahtarlar kullanıcı oturum açtığında yürütülecektir. Aşağıda örnek olarak vereceğim komutlar saldırgan kişi ya da gruplar tarafından kullanılmaktadır.
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v kadir-test /t REG_SZ /d "C:\Users\kadir.-test\malware.exe"
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce" /v kadir-test /t REG_SZ /d "C:\Users\kadir-test\malware.exe"
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices" /v kadir-test /t REG_SZ /d "C:\Users\kadir-test\malware.exe"
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce" /v kadir-test /t REG_SZ /d "C:\Users\kadir-test\malware.exe"
Yukarıda yer vermiş olduğum komutları terminal ekranımızda çalıştırdığımızda, aşağıdaki görselde görüldüğü gibi hedef vermiş olduğumuz konumda zararlı dosyamızın oluştuğunu görüntüledik.
Kimlik bilgileri elde edilmişse sistemde kimlik doğrulaması yapan kullanıcıdan bağımsız olarak, sistem her başlatıldığında yürütülebilir dosya başlatılacağından yerel makina kayıt konumları kullanılmaktadır.
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v kadir-test /t REG_SZ /d "C:\tmp\malware.exe"
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce" /v kadir-test /t REG_SZ /d "C:\tmp\malware.exe"
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices" /v kadir-test /t REG_SZ /d "C:\tmp\malware.exe"
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce" /v kadir-test /t REG_SZ /d "C:\tmp\malware.exe"
Blue Teaming
Saldırganların kalıcılık aktivitelerini tespit etme için aşağıdaki gibi bir kural yazılabilir. Bu kural ile saldırganların yaptığı davranışlar ve hareketeler tespit edilerek herhangi bi
Son olarak 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ırabilirsiniz. Aynı zamanda bir çok filtreleme yaparak bu yazılımların prodsedür örneklerini de inceleyebilirsiniz.
Kaynak:
- https://attack.mitre.org/techniques/T1547/
- https://gelecegiyazanlar.turkcell.com.tr/blog/mitre-attck-t1547001-registry-run-keys-startup-folder-ile-kalicilik-saglama
- https://www.cyborgsecurity.com/threats/emerging-threats/ryuk-ransomware/
- https://dmcxblue.gitbook.io/red-team-notes/persistence/registry-keys-startup-folder