Registry Analizi
Tehdit Aktörleri “Cyber Kill Chain” aşamalarını adım adım uygularken aynı zamanda yakalanmamak için “evasion” teknikleri kullanmaktadırlar. Her ne kadar bu tehditleri kullansalarda bunlarla sadece güvenlik ürünlerini bir noktaya kadar “bypass” edebilirler. Ancak meraklı bir “Incident Responder” rutin bir şekilde tehdit avcılığı yaparsa, sistemde gerçekleşen anormal izleri tespit edip yakalayabilir ve araştırmasında bunları “indicator” olarak kullanabilir. Bu işlemleri gerçekleştirirken bugün ki konumuz olan windows registry keys kavramını inceleyeceğiz ve tehdit avcılığı yaparken hangilerine dikkat etmemiz gerektiğini göreceğiz.
Windows Registry Key nedir?
Bu noktada çok güzel bir tanımlama daha önce yapılmış. Ozan Unal’ın tanımına göre “Registry, anahtarlara (keys) ve değerlere (values) ayrılmış belirli bir yapıya sahiptir. Dizin yapısı gibi Root key’ler kök dizini, Key’ler onu altındaki dizinleri, Subkey’ler en alt dizinleri ve Value’lar dosyaları temsil etmektedir.”
Genel olarak değerlendirdiğimizde, Windows’ta Registry (Kayıt Defteri), işletim sisteminin temel bileşenlerinden biridir ve Windows’un yapılandırma verilerini, ayarlarını ve sistem bilgilerini içeren bir merkezi veritabanıdır.
Registry, Windows işletim sisteminin düzgün çalışması ve birçok uygulamanın ayarlarını saklama görevini üstlenir. Temel olarak, Windows sistem ve uygulama ayarlarını saklayan hiyerarşik bir veri yapısıdır.
Registry’de birçok bilgi ve ayar saklanır, bunlar arasında şunlar bulunur:
- Sistem Ayarları: Bilgisayar donanımı, ağ bağlantıları, güç yönetimi ve diğer sistem ayarları gibi genel sistem ayarları burada saklanır.
- Kullanıcı Ayarları: Kullanıcı profillerine ait ayarlar, masaüstü özelleştirmeleri, uygulama tercihleri ve diğer kullanıcıya özgü ayarlar burada bulunur.
- Yazılım Ayarları: Yüklü uygulamaların ayarları, lisans bilgileri ve yapılandırma bilgileri Registry’de saklanır.
- Hizmetler ve Sürücüler: Windows hizmetleri, sürücü ayarları ve hizmetlere ait yapılandırmalar bu bölümde yer alır.
Registry, hiyerarşik bir yapıya sahiptir ve “anahtarlar” ve “değerler” içerir. Anahtarlar, klasörleri veya yapılandırma seviyelerini temsil ederken, değerler ise her bir anahtarda saklanan verileri içerir. Registry, kullanıcıların ve sistem yöneticilerinin Windows işletim sistemi ve uygulamalarını özelleştirmesine, yapılandırmasına ve sorunları gidermesine olanak tanır.
Registry’ye doğrudan müdahale, dikkatli ve özenli bir iş gerektirir, çünkü yanlış yapılandırma veya silme işlemleri ciddi sorunlara yol açabilir. Bu nedenle Registry düzenlemesi yapmadan önce dikkatli olunmalı ve gerektiğinde yedek alınmalıdır. Windows’un yerleşik “Registry Düzenleyici” (Registry Editor) aracı, Registry’ye erişmek ve düzenlemek için kullanılır.
Peki bu Windows Registry Keys bölümüne nasıl ulaşırız?
Windows + R kısa yoluna tıkladığınızda karşınıza “çalıştır” penceresi çıkacaktır. O pencere içerisine “Regedit” yazdığınız zaman karşınıza gelen pencere Windows Registry Penceresidir.
Registry Yapısı
Yukarıdaki görselde Registry Editor’ün içerisinde bulunan klasörlerin yapısı gösterilmiştir. Üç farklı unsur mevcuttur.
- Hives
- Keys
- Values
Bunların içerisinden Hives olarak adlandırılanlar genel olarak 5 adettir.
- HKEY_CLASSES_ROOT: Kullanıcı dosyalarının bağlantı bölümüdür. İlgili bölümün silinmesi durumunda bilgisayar açılır ancak herhangi bir dosyaya erişim gerçekleşemez.
- HKEY_CURRENT_USER: O anda oturumu açık olan kullanıcının bilgilerinin ve ayarlanın saklandığı bölümdür. HKEY_USERS alanıyla bağlantılıdır.
- HKEY_LOCAL_MACHINE: Bilgisayarın donanım ayarlarının tutulduğu bölümdür. Bu alan bilgisayardan bilgisayara değişiklik gösterebilmektedir.
- HKEY_USERS : Bilgisayarda varolan bütün kullanıcıların kendilerine özel ayarlarının kayıt altına alındığı bölümdür (Örnek vermek gerekirse: masaüstü arkaplanı, denetim masası ayarları, vb.)
- HKEY_CURRENT_CONFIG : HKEY_LOCAL_MAHINE ile bağlantılı olup donanımların konfigürasyonunun yapıldığı bölümdür.
Keys (Anahtar)
Buradaki anahtar kavramı, genellikle bir programın veya Windows’un belirli bir özelliğini temsil eder.
Values (Değerler)
Değerler ise bu anahtarlar altında depolanan verileri içerir. Anahtarlar ve değerler, Windows’un nasıl çalıştığını özelleştirmek veya belirli bir programın yapılandırmasını değiştirmek için kullanılabilir.
Buraya kadar genel manada Windows Registry yapısını öğrenmiş olduk.
Tehdit Avcılığı Yaparken İncelenmesi Gereken Alanlar
- HKEY_LOCAL_MACHINE\SOFTWARE: Bu yol, yüklenen yazılımların ve sistem yapılandırmasının önemli bilgilerini içerir.
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services: Sistem hizmetleri ve sürücüler hakkında bilgi içerir.
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager: Sistem oturumu yönetimi ve önyükleme işlemleri hakkında bilgi içerir.
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion: Windows işletim sistemi ve yüklü uygulamalar hakkında bilgi içerir.
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run: Otomatik başlangıçta çalışan uygulamaların listesini içerir.
- HKEY_CURRENT_USER\Software: Geçerli kullanıcının yüklü uygulamaların ve ayarlarının bilgilerini içerir.
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist: Kullanıcının hangi uygulamaları ne sıklıkta kullandığını izleyen bilgiler içerebilir.
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run: Geçerli kullanıcının otomatik başlangıç uygulamalarının listesini içerir.
- HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ComputerName: Bilgisayar adı hakkında bilgiler içerir.
- HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\EventLog: Günlük kayıtları hakkında bilgi içerir.
Başlıca Registry’leri sıraladık peki bunları nasıl incelemeliyiz? Aşağıda buna dair genel yaklaşımı paylaşacağım.
Inceleme Esnasında Dikkat Edilmesi Gerekenler
Windows Registry path’lerini incelemek, kötü amaçlı bir eylemin izlerini bulmak için önemlidir, ancak bu işlem dikkat ve özen gerektirir. İşte bu inceleme sırasında dikkate almanız gereken bazı önemli noktalar:
- Zaman damgaları (timestamps): Registry girdilerinin oluşturulma ve değiştirilme tarih saat bilgilerine dikkat edin. Bu, şüpheli etkinliklerin zamanlamasını belirlemenize yardımcı olabilir.
- Değişiklikler ve ilişkiler: Registry içeriğindeki değişiklikleri izleyin ve ilişkili girdileri inceleyin. Örneğin, bir kötü amaçlı yazılımın kendini otomatik olarak başlatmasını sağlayan bir kayıt defteri girdisi bulabilirsiniz.
- Bilinmeyen veya garip girdiler: Registry’de normalde bulunmayan veya garip görünen girdilere dikkat edin. Bu, kötü amaçlı yazılımın veya başka bir istenmeyen etkinliğin belirtisi olabilir.
- Kullanıcı profili ve oturum bilgileri: Registry, kullanıcı profili ve oturum bilgilerini içerir. Bu bilgilere erişmek kötü amaçlı bir etkinliğin izini sürmek için önemlidir.
- Programlar ve hizmetler: Otomatik olarak başlatılan programlar ve hizmetlerin listesini inceleyin. Kötü amaçlı yazılımlar, sistemi bu yolla ele geçirmeye çalışabilir.
- Registry anahtarlarının değişim geçmişi: Registry anahtarlarının değiştirilme geçmişini inceleyin ve hangi işlemlerin ne zaman gerçekleştiğini izlemeye çalışın.
- Hash değerleri: İncelediğiniz anahtarların veya girdilerin hash değerlerini alın. Bu, daha sonra kontrol amacıyla kullanabileceğiniz bir güvenlik önlemidir.
- Olağandışı ağ etkileşimleri: Registry’de olağandışı ağ etkileşimleri bulmaya çalışın. Bu, kötü amaçlı yazılımın diğer kötü amaçlı kaynaklarla iletişim kurduğu durumları tespit etmenize yardımcı olabilir.
- Güvenlik duvarı kayıtları ve olay günlükleri ile karşılaştırma: Registry analizini, güvenlik duvarı kayıtları ve olay günlükleri gibi diğer verilerle karşılaştırarak yapın. Bu, anormallikleri tespit etmeye yardımcı olabilir.
- Yasal ve etik gereksinimlere uyma: Registry analizi sırasında yasal ve etik kurallara uymaya özen gösterin. İzinsiz olarak başkasının bilgisayarına girmek veya gizli bilgilere erişmek yasa dışıdır.
Registry analizi hassas bir işlemdir ve bu konuda deneyimli bir uzmana danışmanız veya gerektiğinde yasal makamlara başvurmanız önemlidir. Kötü amaçlı etkinliklerin izlerini bulma işlemi ciddi bir sorumluluk gerektirir ve bu sürecin yasal çerçeve içinde gerçekleşmesi önemlidir.
Analizleriniz için araştırma yapılan alanlar özelinde daha detaylı ve kapsamlı registry için aşağıdaki dökümanı incelemenizi öneririm.
Registry Attack Vectors: https://media.licdn.com/dms/document/media/D561FAQGt0vjl7JwxyA/feedshare-document-pdf-analyzed/0/1699254728373?e=1700092800&v=beta&t=rBJj605f47tbDatqr6jONwVyVMfpCqZSmY3bj4HVOhQ
Okuduğunuz için teşekkür ederim.
Referans
- https://medium.com/@ozan.unal/registry-forensics-b%C3%B6l%C3%BCm-1-registry-yap%C4%B1s%C4%B1-24d609eff1f3#:~:text=Registry%2C%20anahtarlara%20(keys)%20ve,Value'lar%20dosyalar%C4%B1%20temsil%20etmektedir.
- https://mspoweruser.com/windows-10-build-10558-microsoft-adds-new-icon-for-the-registry-editor-and-more/
- https://www.hosting.com.tr/bilgi-bankasi/regedit-nedir/#:~:text=Regedit%2C%20yaz%C4%B1l%C4%B1m%20programlar%C4%B1%2C%20donan%C4%B1m%20ayg%C4%B1tlar%C4%B1,ayarlar%C4%B1n%20depoland%C4%B1%C4%9F%C4%B1%20Windows%20veri%20taban%C4%B1d%C4%B1r.
- https://www.xcitium.com/edr-security/threat-hunting/
- https://www.cisco.com/c/en/us/products/security/endpoint-security/what-is-threat-hunting.html