28 Haziran 2021 Pazartesi

Time Stomping ile Anti-Forensics


 

Time Stomping

 


Time stomping anti forensics yöntemlerinden biridir. Bazı malware’lar zamanı durdurma (time stomping) yöntemini kullanmaktalar. Bir sistemde Forensics uygulandığı zaman veya bir malware sisteme bulaştığında temel olarak sormuş olduğumuz ne, kim, nerede, nasıl, neden, ne zaman gibi soruların cevabını bulmaya çalışırız. Anti-forenscis yöntemi olan time stomping yöntemi ile ne zaman sorusuna cevap bulmamız zorlaşmaktadır. Malware’ın bu tekniği uygulamasındaki amacı, hedef uç noktadaki varlığını koruyabilmesi için fark edilmeden ilerlemek ve hedefinden saklanmaktır. Bazı saldırgan aktörleri bu görevi gerçekleştirmeye çalışmasının olası bir yolu, Time Steomping tekniği olarak bilinen malwareların zaman damgalarını değiştirmektedir.

Time Steomping tekniğini uygulayan malware, sistem üzerinde algılanan diğer kötü amaçlı etkinliklerin zaman çizelgesine girmemiş gibi görünmesini sağlamak, analiz eden kişinin yanıltmasını sağlayan zaman damgalarını değiştirmektir. Olayı analiz eden analist, enfekte olan makinedeki uyarıları, günlükleri ve diğer yapıtları gözden geçirmeye başladığında, zaman damgaları malware tarafından değiştirilirse, zamanlanmış bir dosya araştırma kapsamının dışında kalabilir.  Bu tekniğin uygulanıp uygulanmadığını anlamak için söz konusu dosyaya karşılık gelen MFT kaydında ilişkili birden çok zaman damgası karşılaştırılarak algılanabilir. NTFS zaman damgası uyuşmazlığı yapıtığı zaman örneğinin meydana gelmiş olabileceğinden şüphelendiğiniz olay yanıtı araştırmalarında bir başlangıç noktası sağlar. İşte analist burada şüphelenmeye başlar.

Anti Forensics tekniği olan Time stomping yöntemini tam manasıyla anlamak için NTFS dosya sisteminde bahsetmek istiyorum;

Dosya sistemlerinin çalışma yapıları farklılık gösterebilmektedir. Bununla birlikte genellikle tüm dosya sistemleri dosya üstbilgilerini ve dosya içeriklerini diskin farklı yerlerinde tutarlar. Bu durumu bir kitaba benzeterek açıklamak gerekirse, kitabın içindekiler kısmında bulunan konu başlıklarını dosya üstbilgileri olarak, kitabın ilerleyen sayfalarındaki konu içeriklerini ise dosya içerikleri olarak düşünebiliriz. Güncel Windows işletim sistemleri NTFS dosya sistemini kullanırlar.

NTFS Dosya Sistemi (The New Technologies File System) Windows NT sürümünden itibaren Windows işletim sistemleri için “default” dosya sistemi olan NTFS bugün dünyada en çok kullanılan dosya sistemidir. NTFS tüm yönetimsel araçları kullanıcı dosyaları gibi birer dosya şeklinde tutmaktadır. Bu dosyalar üst dosyalar olarak (metafile) isimlendirilmiştir. Spesifik sektörlerin dosya sistemi tarafından ayrıldığı ve kullanıcıların kullanımına kapalı olduğu diğer dosya sistemlerinden NTFS’i ayıran en önemli hususlardan biri her sektörün bir dosyaya tahsis edilmiş olmasıdır. Bu dosyalar içerisinde indeksleme görevini üstlenen MFT dosyasıdır.

MFT Dosya ve klasör üstbilgileri MFT isimli bir dosya içerisinde tutmaktadır. MFT’nin hangi adreste bulunduğu ise dosya sisteminin bulunduğu bölümün ilk sektöründeki “boot” kaydında bulunmaktadır. MFT dosyası her dosya veya klasör için ayrılmış 1024 baytlık kayıtlardan meydana gelir. İlk kayıt kendine yani $MFT dosyasına aittir. Her kayıt içerisinde dosyanın ismi, oluşturma, erişim tarihleri gibi üstbilgiler bulunur. Kritik önemdeki bu dosyanın genellikle ilk dört kaydın bir yedeği MFTMirr dosyasında tutulmaktadır. Her MFT kaydı bölümlerden oluşur. MFT kayıtları içerisinde bulunabilecek bölümler (attributes) $AttrDef içerisinde tanımlanır.

 

MFT’nin yapısı



MFT Header: MFT kaydının başlangıcında “FILE” veya sorunlu kayıtlar için “BAAD” değeri bulunur. Ayrıca bu bölümde, hataların tespiti amacıyla konulan “fixup” değerleri, MFT kaydının boyutu, kullanılan alan, dosyanın kullanımda olup olmadığı ile ilgili olarak ve kaydın bir dosyaya mı veya klasöre mi ait olduğuna dair işaretler yer almaktadır.

$FILE_NAME: Bu bölümde dosyanın hangi klasörde bulunduğu, dosya oluşturma, değiştirme, erişim ve MFT kaydı değişim tarihleri, dosyaya ayrılmış alan, gerçek dosya boyutu, işaretler (gizli, sistemi arşiv vs.) ve dosya ismi gibi bilgiler bulunur.

$STANDARD_INFORMATION: Bu bölümde ise yine oluşturma, dosya değişim, MFT değişim, dosya erişim tarihleri, sınıf ID, sahip ID gibi bilgiler tutulur. Windows dosya özellikleri kısmındaki tarihler bu bölümden gelmektedir

$DATA: Bu bölümde ise dosya içeriği bulunmaktadır. Dosya içeriği MFT kaydına ayrılmış 1024 baytlık alandan kalan kısma sığarsa dosya içeriği için ayrıca bir alan ayrılmamaktadır. Dolayısıyla küçük dosyaların içeriği MFT kaydı içerisinde tutulmaktadır. Ancak daha büyük boyutlu dosyalar için bu dosya içeriklerinin hangi adreslerde tutulduğuna ilişkin listeler $DATA bölümüne kaydedilmektedir.

Logfile: Dosya üstbilgilerindeki değişiklikleri arşivler.

Volume: Bölüm etiketi, dosya sistem versiyonu gibi bölüm ile ilgili bilgileri barındırır.

AttrDef: MFT kayıtlarındaki dosya özelliklerini tutan tablodur. NTFS dosya sistemi dosya adı, dosya erişim yetkisi veya dosya içeriği gibi her şeyi dosya özelliği olarak görür. AttrDef dosyasında da bu özellikler, isimleri ve ID numaraları bulunmaktadır. ,

Bitmap: Bu dosya içerisinde bulunan her bir sektörün bir dosya tarafından kullanılıp kullanılmadığını ifade eder. NTFS dosya sisteminde bu üst dosyalar dışında $BadClus, $Secure, $UpCase gibi başkaca sistemsel dosyalar da bulunmaktadır

 

NTFS Dosya Sisteminde Bir Dosya Oluşturmak

  1.          MFT dosyası içerindeki kullanımda olmayan ilk kayıt $BITMAP taranarak tespit edilir ve burası yeni oluşturulacak kayıt için temizlenir. $BITMAP’te ilgili yer 1’e çevrilir.
  2.          $FILE_NAME ve $STANDARD_INFORMATION bölümleri MFT kaydında oluşturulur.
  3.       Dosya oluşturma ve diğer tarihler ayarlanır.
  4.           Dosyanın kullanımda olduğuna dair (in-use) işaret konur.
  5.        $BITMAP dosyasından disk üzerinde dosyanın boyutuna göre en uygun yer tespit edilerek bu sektörlere dosya verisi kaydedilir. Dosya verisi MFT kaydı içerisine sığacak boyutta ise MFT kaydı içerisine kaydedilir.
  6.        MFT dosyasının beşinci sırasında bulunan “root” klasörünün özelliklerinden dosyanın oluşturulacağı klasör tespit edilir. Klasörün MFT kaydına gidilerek buraya yeni oluşturulan dosya için indeks kaydı oluşturulur.
  7.        Dosya ile ilgili yapılan işlemlerin kayıtları $LogFile dosyasında arşivlenir. Kısacası yeni bir dosya olduğunda disk üzerinde üç ana değişiklik olur. Bunlardan birincisi dosya ile ilgili MFT kaydı oluşturulur. İkincisi $BITMAP’te dosya içeriğinin kaydedildiği sektörler 1’e çevrilir. Üçüncüsü dosyanın oluşturulduğu klasörün MFT kaydı yeni dosya eklenerek güncellenir.

 

Temel bilgileri hatırladıysak Time Stomping kısmına tekrar dönelim;

NTFS uç noktasında depolanan bir dosyanın MFT kaydında, bir dosya hakkında çeşitli türde bilgiler içeren birden çok bölüm veya öznitelik olduğundan bahsettik. Bu yeni yapıt için $Standard_Information ($SI) ve $File_Name ($FN) özniteliklerinin zaman damgası ile bilgileri muhafaza ettiğinde bu dosyalara odaklanacağız. Time stomping anti forensics Malware dosyalarının zaman damgalarını değiştirilebilir. Bu değişikliğin ne zaman nasıl yapıldığını öğrenmek için timestamp değerlerine bakarız. Temel olarak MFT'de 8 zaman damgasını oluşturan 2 farklı küme var her kümede Oluşturma zamanı, değişiklik zamanı, MFT süresi, son erişilen saat bilgileri bulunur. Bu kümeler, Standard Information file attributes ve File Information attributes 'dir.

$FILENAME: Dosya ve dizinlerin adlarını saklamaktadır. Ayrıca bir dosyanın oluşturulma tarihi, son değiştirilme tarihi, son erişim tarihi ve MFT deki son değişim tarihi olmak üzere toplam 4 adet zaman damgası bulunur.

$STANDAR_INFORMATION: Bir dosyadaki standart bilgileri, sahiplik bilgileri, metadata bilgileri, dosyanın oluşturulma tarihi, son değiştirilme tarihi, son erişim tarihi, MFT de son değiştirilme tarihi olmak üzere toplam 4  zaman damgası vardır. Windows Gezgini'nde normal olarak görüntülenenlerdir.

STANDARD_INFORMATION ve FILENAME arasındaki temel fark;  STANDARD_INFORMATION kullanıcı tarafından değiştirilebilir zaman damgalarını barındırmaktadır. FILENAME zaman damgası ise ancak sistem çekirdeği tarafından değiştirilebilmektedir.

Çoğu zaman time stomping yöntemini uygulayan zararlılar yalnızca $STANDARD_INFORMATION kümesini değiştirir. Hem $STANDARD_INFORMATION hem de $FILE_NAME özniteliklerini görüntüleyen araçları kullanarak, bir dosyanın zaman değişimine uğrayıp uğramadığını belirlemek için iki kümedeki değeleri karşılaştırabiliriz. $STANDARD_INFORMATION daki değeler $FILE_NAME'den daha önce geliyorsa geliyorsa, olası bir şüphelenmemiz gerekmektedir.

  

Örnekle açıklamak gerekirse;




















(M: Modigied, A: Accessed, C:Changed($MFT değiştirme Zamanı), B: Birth (Dosya oluşturma zamanı))

şüpheli dosyanın $STANDARD_INFORMATION ve $FILE_NAME özniteliklerini inceleyerek, bir uyumsuzluk olduğunu gördük bu nedenle, diğer göstergelerle birleştirilip analiz edildiğinde burada Time Stomping uygulanadığını söyleyebiliriz. Gördüğünüz gibi, kırmızıyla vurgulanan $STANDARD_INFORMATION, $FILE_NAME tarihlerinden önce gelmektedir yukarda da bahsettiğim gibi şüphelenmemiz gerekir.

Bir malware farklı sistemlerde farklı $STANDARD_INFORMATION ve $FILE_NAME değerinlerini farklı değere sahip olabilir

Misalen yukardaki A sistemi olsun aşağıdaki de B sistemi olsun görüldüğü gibi FILE_NAME kısmı farklı değerlere sahiptir.



 

Buna benzer bir şüpheli dosya ile karşılaşırsak;

change.log dosyalarını geri yükleme noktalarını kontrol edebilirsiniz. Bu dosyalar, dosya oluşturma ve yeniden adlandırma gibi değişiklikleri izler, şüpheli dosyanın oluşturulup oluşturulmadığını ve yeniden adlandırıldığını görmek için USN dosyası da analiz edilebilir.

  

 

Uygulama

  1.          Test amaçlı 2 txt dosyasını oluşturdum1 tanesine Time Stomping uygulayacağım bir tanesinide taririhndeki değerleri göreceğim



 

2-     Daha sonra oluşturulan bu txt dosylarından timestommping.exe aracı ile maygun.txt Time Stomping yöntemini uyguladım.

 


Görüldüğü gibi tarihini değiştirid,m değiştirme tarihinde 2003 olduğu görülüyor.


3-      3- Bir dosyaya time stomping uygulanıp uygulanmadığını tespit etmek için MFT den analiz etmemiz gerekmektedir. FTK Imager ile MFT dosyasını export ettim.



4-     4- Export edilen MFT dosyasnı parse etmek için MFTanlayzer kullandım.


MFTanalyese tool sayesin outout.csv şeklinde bir çıktım aldım.

 

5-     5- Aldığım çıktıyı daha rahat kullanabilmek için TimeExplorere aracına output.csv dosyasını import ettim ve analiz işlemimi gerçekleştirdim.



Görülüğü gibi FILENAME ve STANDAR_INFORMATION arasında farkların olduğunu görebildik.

 

 

 

 

 

 

  

 

 

Kaynak:

http://az4n6.blogspot.com/2014/10/timestomp-mft-shenanigans.html

Expose Evidence of Timestomping with the NTFS Timestamp Mismatch Artifact | Magnet Forensics

how to use MFT as a determine if time stomping has occurred


 



Anti-freonsics

Digital Forensics

Muhammed AYGUN

DFIR

Adli Bilişim Blog

Adli Bİlişim Mühendisi



 

12 Haziran 2021 Cumartesi

Olay Müdahale Planı Nasıl Oluşturulur?




Siber tehdit aktörlerinin hedefinde olan her kuruluş yani günümüzde dijitalleşemeye adım atan her kuruluş gerçekleşebilecek bir saldırıda olay müdahalesi planına sahip olmalıdır. Siber saldırılarından %100 korunmak çok güzel olurdu ancak bunun pek mümkün olmadığını üzülerek söylemek durumundayız. Bundan dolayı her kuruluş bir siber saldırıya maruz kalacaktır. Bunun farkında olan ve belirli bir olgunluğa ulaşmış kuruluşların belirlemiş olduğu bir siber olay müdahale (Incident Response) planı bulunmaktadır çünkü ne tür bir önlem almış olsalar bile ciddi bir siber olay ile karşılaşacaklarını bilirler bundan dolayı siber saldırılarına ilişkin planlarını belirleyen belgelere sahiptirler.

Olay müdahale planın anlamak için Olay müdahalesinin ne olduğunu bilmek önemlidir. Olay müdahalesi, bir siber güvenlik ihlalini tespit edip ortadan kaldırmayı ve saldırıdan kurtarmayı amaçlayan bir dizi eylemlerdir. Olay müdahalesinde başarılı olmak için sistematik yani olaya planlı bir şekilde yaklaşmak gerekir.   

Olay müdahale planı yapan kuruluşların amacı, bir siber saldırıya maruz kaldığı andan itibaren saldırının etkisini en aza indirmek ve olaya olabildiğince hızlı bir şekilde cevap vermeyi hedefler yani kaçınılmaz bir siber saldırıda kuruluş üzerindeki olumsuz etkileri en aza indirmektir. Bir olayı bildirmek izleme olay müdahalesi ekibinin işi değildir, ancak ilgili uyarıların uygun şekilde incelenmesini ve analiz edilmesini sağlamak olay müdahalesi ekibinin görevidir. Sistemi izleme ister kurum içinde olsun ister dışarda isterse de hibrit bir yapı olsun olay müdahalesi planı doğrultusunda olay müdahalesi ekip liderine doğru ve hızlı bir şekilde hareket etmesini sağlamak için olayı ele alma, inceleme ve analiz sürecini tanımlamalıdır.  Olay müdahalesi (IR) planı iyi iletilen ve koordine edilen özlü, metodik eylemler, etkiyi azaltmanın anahtarıdır.

Kuruluşun bir olay müdahale planın olması önemlidir çünkü bir stres ve baskı altında durumu kontrol altına alarak doğru kararlar ve aksiyonlar almasını sağlar. 

 

Siber Olay müdahale planını tasarlamak için yapılması gereken aşamalar; 

 

1.      Hazırlık aşaması: Siber olay müdahale planındaki en önemli ilk adımdır. Bu adımı alt adımlara ayırmak daha doğru bir yaklaşım olacaktır.

i)       Ekip içerisinde kaliteli bir iletişim kurmak için planlı iletişim kanalını oluşturulmalıdır: Bir IR planının, hem planlı iletişimini hem de bir olaya yanıt vermek için gereken adımları gerçekleştirmesi gereken bir süreç akışı taslağına ihtiyacı vardır. Akış başlangıç izleme ekibinde ve resmi olay bildirim sürecinden gelen artıştır. Bir olay bildirilirse akış, tehdidi içerme ve kurtarma adımlarını an hatlarıyla belirtir.

ii)    Kim, ne, ne zaman, nerede, nereden ve nasıl sorularına cevap verebilen kontrol listeleri ve gerekli kılavuz oluşturulmalıdır.

iii)  Siber olaya müdahale edecek ekibin daha önceden sistem üzerinde gerekli izinlerin verilmiş olması kontrol edilmelidir.

iv)   Olay müdahalesi ekibinin kendi içerisinde kullanacağı araçları önceden test etmiş olması gerekmektedir.

v)      Süreç akış taslağı oluşturulmuş olmalıdır. Bir IR planının, hem planın iletişimini hem de bir olaya yanıt vermek için gereken adımları gerçekleştirmesi gereken bir süreç akışı taslağına ihtiyacı vardır. Akışın başlangıcı, izleme ekibinden ve resmi olay bildirim sürecinden gelen artıştır. Bir olay bildirilirse akış, tehdidi içerme ve kurtarma adımlarını ana hatlarıyla belirtir.

vi)   Bir olayı bir kişi üstlenmelidir: IR ekibi lideri, daha geniş siber güvenlik ekibiyle işbirliği içinde, olay bildiriminden sorumludur. Plan, IR ekibinin bunu yapması için gereken sürecin ana hatlarını verecektir. İlk olarak, IR sorumlusu, izleme ekibinden toplanan verileri gözden geçirerek ve gerektiğinde yeni bilgiler alarak olayı daha da doğrulamalıdır. Daha sonra lider, bir olayı ilan etmek amacıyla tanımlanmış paydaşlarla bir toplantı düzenleyebilir. Bu toplantı için sanal veya fiziksel bir savaş odası ve birincil yöntemler mevcut değilse geri dönüş iletişim yöntemlerini belirleyin.

vii) IR ekibinin kimlerin dahil olduğunu, sürece ne zaman dahil olduklarını ve hangi eylemlerin yapılması gerektiğini hızlı bir şekilde belirleyebilmesi için her olay türü için kilit paydaşların bir listesini oluşturun. Yalnızca rolleri değil, gerçek isimleri ve mevcut kişileri listelemek, hesap verebilirliği sağlamak ve IR planının güncel kalmasını sağlamak için en iyi uygulamadır. IR ekibi, plan belgesinin sahibi olmaktan ve sürdürmekten sorumludur.

2.      Olayı belirleme: Bu aşamada, çeşitli kaynaklardan ilgili tüm verileri toplayarak, anomali tespiti olup olmadığını tespitiyle ilgilidir. Belirli bir olayın bir olay olduğu belirlenirse, olay müdahale ekibi kanıt toplamak ve sonraki adımlara hazırlanmak için yeterli zaman tanımak için mümkün olan en kısa sürede rapor etmelidir. Bir olay ilan edildiğinde, IR liderinin ve ekibinin harekete geçme zamanı gelmiştir. Ekip etkilenen kullanıcıları, sistemleri, uygulamaları veya diğer kaynakları izole etmeye çalıştığından, kapsam öncelikli olmalıdır. IR planı, çevreleme stratejisini belirlemek için saldırının aşamasını ve ciddiyetini göz önünde bulundurmalı ve çevreleme stratejisinin nasıl uygulanacağını ve yetkinin kimde olduğunu tanımlamalıdır.

3.      Toplanan Delileri Muhafaza Etme: Bu aşamada çeşitli yöntemler ile elde edilen delillerin zarar görmesini engellemek, yok edilmesini önlemek ve gerçekliğini kaybetmeden gerekli mercilere sunmalıdır.

4.      Sisteme Sahip olan Saldırganları dışarı atma: Bu aşama, etkilenen tüm sistemlere bir malware bulaşmış ise bunu kaldırmak ve almış olduğu saldırın nedenini belirlemek ve güvenlik açığı var ise gerekli önlemleri alarak kapatmalıdır.

5.      Sistemi Eski Haline Getirme: Kurtarma aşaması olarak da adlandırılabilir bu aşamada zarar görmüş sistemleri dikkatli ve kontrollü bir şekilde eski haline getirmesi adımıdır. Sistemlere başka yollarla yeniden enfekte olmadıklarını doğrulamak için test etmek, izlemek ve doğrulamak önemlidir.

6.      Yaşanılan Olay İle İlgili Ders Çıkarmak: Bu aşamada siber olay yaşandı ve olaya müdahale edildikten sonra uygulanılan son adımdır. Bu kritik aşamanın amacı, olay sırasında yapılamayan ve gelecekteki olaylar için faydalı olabilecek her türlü dokümantasyonu tamamlamaktır.

                                i.            Devam eden bir olayın tüm yönlerini belgelemek mümkün olmayabilir ve kapsamlı belgelere ulaşmak, gelecek için dersleri belirlemek açısından çok önemlidir. Bir olay raporu yayınlamak: Belge, öğrenilen dersler toplantısı sırasında ortaya çıkabilecek soruları cevaplayabilecek bir rapor şeklinde yazılmalıdır.

                             ii.            Alınan dersler toplantısı oluşturulmalıdır: Olayı ve hemen uygulanabilecek öğrenilen dersleri tartışmak için Olay müdahalesi ekibi ve diğer paydaşlarla düzenli aralıklarda toplantı yapılmalıdır.

                           iii.            Geçiş bir IR planı, tekrarlama olasılığını azaltmayı amaçlayan resmi bir olay sonrası öğrenme sürecini içermelidir. Aynı olayı iki kez yaşamamaktan kaçınmaya çalışmanın yanı sıra, öğrenme, bir olayı bildirmek veya eyleme geçmek için koordinasyon ve karar verme konusunda ince ayar yapmanıza olanak tanıyan ekip hazırlığı için gözetim sağlar. IR sürecindeki herhangi bir değişikliğin plan belgesinde güncellendiğinden emin olun.

 

 

 

 

Öneriler

-         Oluşturmuş olduğunuz siber olay müdahale planını test edin.

-         Belirli aralıklarda siber tatbikatlar düzenleyin.

-         Manuel delil toplamak yerine tam ve doğru olarak otomasyon düzeni kullanılmalıdır.

-         Kurumunuzdaki varlıkların keşfi yapılması gerekmektedir. Varlık envanterleri veya veri sınıflandırması ve yönetimi gibi şeylerin üstesinden gelememek birçok hataya yol açabilir.

-         SOC analistlere çeşitli olayların nasıl önceliklendirileceği ve ilgili kanıtların nasıl toplanacağı konusunda yol gösterilmelidir.

-         Bir siber olay yaşandıktan sonra bu soruların cevaplanması kurum için önemlidir; mevcut olmayan ve etkinleştirilmesi gereken herhangi bir ek günlük var mı? Güvenlik ekibinin becerilerinde bir boşluk var mı?
Şirketin yama politikasının gözden geçirilmesi gerekiyor mu?

-         İzinsiz girişi önleme ve dosya bütünlüğü izleme sistemlerinizin ne kadar doğru sonuç verdiğini test edin.

-         Belirli periyotlarda yedek alın.

-         olay müdahalesi ekibinin sorumlulukları konusunda uygun ve düzenli bir şekilde eğitin.

-         Siber olay yaşandıktan sonra alınan dersler uygulandığını test edin.

-         Olay Müdahalesinden bulunacaksanız bu üç unsura önem vermelisiniz; Plan, Ekip ve Araçlar