Memory Forensics Part -I

ÖZET

Bilişim sistemlerinde çeşitli saldırılar ve suçlar oluşmaktadır. Bu saldırıları tanımlama ve sucu aydınlatmak amacıyla adli bilişim teknikleri kullanılmaktadır. Bu teknikleri kullanabilmek için verilerin analizi sağlanmalıdır. Bilgisayarlar, verileri iki şekilde depolamaktadır. Birincisi işlem esnasında geçici olarak verilen barındırıldığı bellek olarak adlandırılan RAM ikincisi ise kayıtlı kalmasını sağlayan sabit disklerde yani hard disklerde muhafaza etmektedir. Sabit diskler verilere tekrar tekrar ulaşılabilme imkanı sağlarken, RAM bellekler ise sabit belleklerin aksine sistem kapatıldığında ya da elektrik gücü kesildiğinde bellek üzerinde bulunan tüm veriler kaybolmaktadır. Bundan dolayı RAM bellekte muhafaza edilen verilere uçucu veriler denilmektedir. Adli bilişim tekniklerini uygularken bu uçucu verileri elde etmek, muhafaza etmek ve analiz etmek önemli bir işlem prosedürüdür. Bu prosedürlere genel anlamda bellek adli bilişim denilmektedir. Bellek adli bilişimi sayesinde; bilişim sistemlerinde ihlal meydana gelirse siber olay müdahale ekibi tarafından hack’i tanımlamak, saldırının kaynağını tam olarak anlamlandırmayı sağlayabilir ya da bilişim vasıtasıyla yapılan bir suç aydınlatılabilir. Delillere ulaşmaya çalışmak için, dijital adli kopya alma ve dijital delillerin içeriğini incelemek için kullanılan araçların bilgileri önemlidir. Adli analizin temel amacı oluşan vaka kapsamında kim, nasıl, ne zaman gibi sorulara cevap verebiliyor olmaktır. Bellek adli bilişimi sayesinde uçucu verilerin analizi sağlanarak bu sorulara cevap verilebilir.

  1. GİRİŞ

Günümüzde sıkça kullanılan bilişim araçları bulunmaktadır. Bu bilişim araçları eğitimden sağlığa, sağlıktan haberleşmeye gibi çok geniş kamu ve özel alanlarda kullanılmaktadır. Bu bilişim araçlarını vasıta olarak kullanılması veya bilişim sistemlerini hedef alınarak gerçekleşen siber suç durumları oluşabilmektedir. Bu vakaların aydınlatılmasında adli bilişim disiplini oluşmuştur. Bu disiplin sayesinde adli analiz çalışmaları sağlanarak vakalar aydınlatılabilir. Siber güvenliğin alt dalı olarak nitelendirebileceğimiz adli bilişim kendi içerisinde farklı uzmanlık alanlarına ayrılabilmektedir. Bu uzmanlık alanları, bilgisayar adli bilişim, Windows adli bilişim, Linux adli bilişim, MacOS adli bilişim, ağ adli bilişim, bulut adli bilişim, veri tabanı adli bilişim, zararlı yazılım adli bilişim, RAM adli bilişim, IOT adli bilişim, SCADA adli bilişim gibi alanlara ayrılabilmektedir. Alt alanlar kendileri arasında bir benzerliği bulunmaktadır, bu alt alanlar arasında RAM adli bilişim en ilginç olanı ve önemli olan alanlardan biridir [1]. Önemli olmasının nedeni içerisinde bulunan verilerin uçucu bellekte muhafaza edilmesidir. Bu alanın kendi içerisinde zor süreçleri bulunmaktadır. RAM adli analizi sayesinde işletim sistemin çalışması sırasında fiziksel belleğe kaydedilen verilerin analizidir. RAM adli analizi sayesinde gerçekleşen bir siber saldırıyı veya işlenen bir suçu tespit edebiliriz. Siber güvenlik ekibi bir kurumun siber saldırılardan korumak için güvenlik sistemini kurmakta ve bu sistemin devamlılığını sağlamakla görevlidir. Fakat kompleks siber saldırıların başarılı olduğu durumlarda bir ihlal meydana gelirse siber olaylara müdahale ekibi tarafından hack’i tanımlamak, saldırının kaynağını tam olarak anlamlandırmak ve ele geçirilen, erişilemez olan verileri kullanılabilir hale getirmeye çalışır. Bu vakanın aydınlatılmasını sağlayan adli bilişim alanı dijital kanıtların incelenmesinde kullanılan araçların önemi burada ortaya çıkmaktadır. Daha yararlı delillere ulaşmaya çalışmak için dijital delillerin içeriğini incelemek için bu araçlardan birini veya bir kaçını kullanmak mümkündür. Adli analizin temel amacı oluşan vaka kapsamında kim, nasıl, ne zaman gibi sorulara cevap verebiliyor olmaktır kısaca bir bilgisayar sistemine yapılan saldırıların kalıplarını, nedenlerini ve sonuçlarını belirlemeyi amaçlamaktadır. [2] Bu teknikler, kötü amaçlı yazılımın sistemi hangi hasarlara maruz bırakabileceğinin belirlenmesine yardımcı olur ve böylece siber olaylara müdahale ekibi, zararlı yazılımın etkilerini hafifletmek ve nihayetinde ortadan kaldırmak için uygun kararları ve önlemleri almasına olanak tanır. [2]

RAM adli analiz gerçekleştirilerek; gerçekleşen bir siber saldırının aydınlatılmasında kullanılabilecek kötü amaçlı aktiviteleri, ağ trafiklerini, oluşan servisleri tespit edebilir ya da fidye yazılım olarak adlandırdığımız ransomware saldırılarında tüm diski şifreleyen algoritmanın anahtarını bulabilme imkanımız olabilir. Benzer şekilde şüpheli bir bilgisayar üzerinden bir siber suçun oluşup oluşmadığını aydınlatmak içinde ram adli analizi gerekebilir. Yapılan bu çalışmada bir siber suçun aydınlatılması veya bir siber saldırının ana nedenini bulmak için Windows ve Linux sistemlerde RAM imajının önemi, içerisinde bulunan bilgiler ve analiz aşamaları aktarılmıştır.

RAM; “Random Access Memory” kelimelerin baş harflerini alarak oluşturulan kısaltmadır. Türkçe ye çevrildiğinde “Rastgele Erişilebilir Bellek” anlamına gelmektedir. RAM, dijital ortamda işlenen verilerin geçici olarak depolandığı aygıttır. [3] Sistem kapatıldığında aygıt üzerinde bulunan tüm veriler kaybolur.  Bir diğer deyişle uçucu veriler RAM üzerinde muhafaza edilmektedir. Bilgisayar sisteminde RAM kullanılma amacı disk üzerinde bilgileri kaydetmeden bazı uygulamaları çalıştırmaktır. Örnek vermek gerekirse bir oyun programını açtığımız zaman belirli bir bekleme süresi geçmektedir bu bekleme süresinde oyun paketleri geçici belleğe yüklenir. Bu sayede disk üzerinde tekrar tekrar yazmadan çalışılması sağlanır. RAM kullanılmasının bir diğer avantajı sabit disklere göre daha hızlı olarak çalışmasıdır. Son yapılan işlemlere bu sayede daha hızlı erişebilmekteyiz. Ancak RAM üzerinde enerji kesildiğinde tüm veriler kaybolmaktadır. Hızlı çalışabilmesi nedeniyle hızlı şekilde erişilmesi gereken veriler RAM’e aktarılmaktadır.[4] RAM bir başka tanımıyla bilgisayarın genellikle o an üzerinde çalışan işlemlerle ilgili bilgileri kendi içerisinde tutmaktadır. RAM depolama aygıtlarına göre çok daha hızlı çalışmaktadır bundan dolayı işlemci ile senkronize çalışma imkanı sağlamaktadır. RAM sabit depolama aygıtlarına göre sürekli kayıt özelliği bulunmamaktadır yani bilgisayar kapandığında üzerinde bulunan veriler kaybolmaktadır bundan dolayı üzerinde barındığı bu verilere uçucu veri denilmektedir.

Random Access Memory (Rastgele Erişim Bellek), isimi çalışma prensibi ile ilgili olarak verilmiştir. Buradaki mana herhangi bir RAM hücresi üzerinde istenildiği anda diğerlerinden tamamen bağımsız olarak erişilebilme imkanı sağlar.[5] Yani RAM’ de istenen kayda ya da hücreye kapasitesine göre anında erişilebilir. RAM’in mimarisi birbirine tamamen bağımsız hücrelerden oluşmaktadır. Bu hücrelerin her birinin kendine ait sayısal bir adresi mevcuttur. Her hücrenin çift yönlü bir çıkışı bulunmakta, bu çıkış veri yolunda işlemciye bağlı olmaktadır. Bu adresleme yöntemiyle RAM’deki herhangi bir bellek hücresine istenildiği anda diğerlerine bağımsız olarak erişilebilmektedir. RAM’in ana özelliği işlemci ile donanımlar arasında bağlantı görevi sağlamaktır. RAM belleklerin en temel görevi bilgi alışverişi sağlamaktır. RAM bu işlemi sağlamak için bellek yongalarını kullanır. Aynı devre üzerindeki bu yongaların toplam kapasitesi RAM belleğin kapasitesini oluşturur.[5] RAM bellekler transistör ve kapasitörden oluşmaktadır. Transistörlerin görevi, istenen verilerin kontrolünü sağlayıp 1-0 ile veri geçişinden sorumludur. Kapasitörler ise depolamayı gerçekleştirmekten sorumludur. RAM içerisinde iki eksenli düzlemde dizili bit adı verilen depolama birimleri bulunmaktadır. Sıra ve sütunlar sayesinde bit’lerin yerleri adres haline dönüşmektedirler. Bu adresleme yöntemi yazma ve okuma işlemleri sırasında önemlidir. DRAM, SRAM, SGRAM, DDR RAM olmak üzere belli başlı ram türleri bulunur. Günümüzde güncel teknolojide sıkça DDR RAM türü kullanılmaktadır. [6]  Hangi RAM türü kullanılırsa kullanılsın bilgisayar üzerinde RAM imajını alma ve analiz edilme süreçleri benzerdir.

  1. Adli Bilişim İncelemelerinde RAM Bellek Önemi

RAM, işletim sistemi, makinede çalışan uygulamalar, dosya sistemi ve donanım (CPU) arasındaki etkileşimleri takip etmek için kullanıldığından, bir bilgi işlem sisteminin etkili işleyişinde önemli bir rol oynar. Bu nedenle, RAM içeriğinin toplanmasının adli soruşturma açısından yadsınamaz bir değeri vardır. [2] Bazı gerçekleşen vakalarda disk üzerinden herhangi bir kayıt sağlanmadan ram bellek üzerinden işlemler yapılmaktadır. Bu tür vakaların çözümlenebilmesi için bilgisayar çalışmakta iken ram imajı alınmalıdır. Çünkü çalışan sistem kapatıldığında ram bellek üzerinde taşınan veriler uçucu olduğundan bu veriler kaybolur. Bilgisayar üzerinde çalışan her uygulama RAM üzerinde benzersiz değişikliklere sebep olur. [7]

RAM incelemesinde elde edilebilecek bulgular;

  • Arka planda çalışan gizli programlar
  • Aktif network bağlantıları
  • Kullanıcı parolaları
  • Kaydedilmemiş dokümanlar
  • Çalışan prosesler ve servisler
  • Tarayıcı üzerinde buluna adres bilgileri
  • Sistem bilgileri
  • Sistemde oturum açan kullanıcı bilgileri
  • Registry (Kayıt defteri) bilgileri
  • Ağ (Network) bilgileri
  • Çalışan programlara ait ham veriler. Buradaki bilgiler sayesinde ransomware tarafından şifrelenen bilgilerin şifrelenmeden önceki halini elde edebiliriz.
  • Son kullanılmış Office uygulamaları.
  • Pano içeriği
  • Kullanılan komut satırları
  • Çalışan proseslerin dll listeleri
  • Sistem üzerinde bulunan açık dosyaların kaydı
  • Açık olan konsol üzerinde yazılan komutları
  • Açık olan gizli tarayıcı modundaki bilgiler
  • Açık olan sohbet mesajları

Gibi bulgular ram analizinde tespit edilebilir. Bu bilgilerin kapsamı RAM kapasitesi ile doğru orantılıdır yani bir RAM belleğin kapasitesi ne kadar yüksek ise içerisinde tutulacak veri boyutu da o kadar yükselmektedir. Bu tür bilgiler genellikle izinsiz girişin nasıl gerçekleştiğini, etkisini analiz etmek için toplanır ve saklanır. [8] RAM bellekler bilgisayarın o anki çalışmasında elde edilen bilgileri tutmaktadır bundan dolayı da içerisinde bulunan veriler sürekli olarak değişebilir. RAM analizi sayesinde enjeksiyon (injection) atakları kolay bir şekilde tespit edilebilir. Buda bir siber saldırı müdahale kısmında siber savunma ekibine yardımcı olmaktadır.

  1. RAM ANALİZİ

Bilişim suçlarının gelişimi nedeniyle geçici bellek olarak adlandırılan RAM (Random Access Memory) içerisinde kayda değer bilgilerin analiz edilmesi önemli ölçüde ihtiyaç haline gelmiştir. RAM bellek incelemeleri adli vakanın daha hızlı sonuçlanmasına olanak sağlayabilir veya sadece sabit disklerin incelenmesi durumlarda bazı vakalar sonuçsuz kalabilir. RAM bellek işin içine katıldığı zaman çözülemeyen vakalar çözülebilme imkanı sağlayabilir. Ram analizinde başlıca amacı bilgisayarların sabit disklerinde veri bırakılmasını önleyecek kadar gizli olan karmaşık bilgisayar saldırıların analizidir. [7]  [9] RAM analizi sayesinde, şifrelenmemiş e-posta iletişimleri, disk şifreleme anahtarları, önbelleğe alınamayan internet geçmişi kayıtları, kayıt dışı sohbet konuşmaları, gizlenmiş proseslerin çalışması, anlık ağ iletişiminde olan ip adresleri ve RAM belleğe yerleştirilen kod parçacıkları, yalnızca RAM bellekte üzerinde tespit edebileceğimiz kritik verilere örnektir. En nihayetinde bu dijital kanıtlar incelenerek siber saldırganların kendileri ve hedefleri belirlenebilir. [10] Bu denli önemli bir imkan sağlayan, veri depolayan RAM de bulunan bilgilerin depolanması ve analiz edilmesi önemli bir husus haline gelmektedir.

Ram bellek incelenebilmesi için imajı bir diğer deyişle adli kopya alınmalıdır. İmaj, bit-bit kopyalama veri değiştirmeden her veri aynı olacak şekilde dosya haline bir başka diske aktarılmasıdır. İmaj alma işlemi yazılımsal veya donanımsal araçlar yardımıyla alınabilir. [1] Alınan imaj dosyası sayesinde ram bellekler analiz edilebilir. Analiz detayına göre gerçekleşen bir siber saldırı var ise saldırganın atmış olduğu adımlar takip edilebilir. RAM adli analizleri disk adli analizlerine göre kısa sürmektedir. Çünkü bir sistemin terabyte’larca veriye sahip olabilir bu diskin imajının alınması ve incelenmesi de günler hatta haftalar alabilmektedir. Fakat bellek hem yapısı gereği hem de kapasitesinden dolayı imaj alma işlemi daha hızlı şekilde tamamlanabilir. Buda bir siber vakanın daha hızlı aydınlatılmasına önemli olan bir diğer neden olabilir. [11]

Resim 4.1. RAM Analiz Adımları

Bellek üzerinde bulunan uçucu veriler sistem kapatıldığında kaybolmaktadır. Bir sistemin kapatılması bir siber saldırıyı bertaraf etmediği gibi sistemin genel işleyişini engelleyebilmektedir. Bundan dolayı sistem kapatılmadan önce kötü amaçlı herhangi bir göstergenin bellek üzerinde mevcudiyetinin araştırılması mühim bir durumdur. Elde edilen tehdit göstergeleri olay müdahale ve olay analizinde siber güvenlik analistlerine yol gösterici olmaktadır. Bu nedenle güvenliği ihlal edilmiş bir cihaz kapatılmadan ağ üzerinden yalıtılması tercih edilmelidir. [12] Mahir bir siber saldırgan disk üzerinde yakalanmasını sebebiyet verecek tüm kalıntı dosyaları, log dosyalarını silmiş olabilir bundan dolayı veri kazıma işleminin yanı sıra bellek analizi vasıtasıyla siber vaka gün yüzüne çıkartılabilir. Sistem üzerinde gerçekleşen olayların kronolojik sıralamasını çıkarmak için RAM imajı adli inceleme durumlardan yardımcı olmaktadır. Bu kronolojik sıra sayesinde vaka kapsamında kullanılan teknik, taktik ve prosedürlerin tespiti sağlanabilir. Hafıza adli bilişimi, hedeflenen saldırganlar tarafından kullanılan solucanların, rootkit’lerin, PowerShell saldırılarının, fidye yazılımı ve gelişmiş kötü amaçlı yazılımların kanıtlarını bulmada önemli derecede etkili olabilir. Aslında bazı dosyasız saldırıların bellek analizi olmadan çözülmesi neredeyse imkansız olabilir. [11] Saldırı yöntemleri giderek daha karmaşık hale geldikçe, hafıza adli bilişim günümüzde siber güvenlik analistleri için yüksek talep görmektedir. Güvenlik duvarları ve antivirüs araçları gibi birçok ağ tabanlı veya host tabanlı güvenlik çözümü, doğrudan bilgisayarın fiziksel belleğine veya RAM’ine yazılan kötü amaçlı yazılımları tespit edemez. Bundan dolayı hafıza adli bilişim başarılı bir olay müdahalesi ve tehdit avcılığı ekiplerinin temel dayanağı haline gelmiştir.

RAM analizi sayesinde başarılı bir olay müdahalesi sağlanabilir. Normal ve anormallikleri belirlemek için RAM analizinde belli başlı aşamalar sağlanmalıdır. Bunlar;

  • Windows proses ağaçlarını incelenmesi,
  • Hedeflenen saldırganlar tarafından komuta ve kontrol (C2) kanallarına erişmek için kullanılan ortak ağ bağlantı noktaların tespiti
  • Bellekteki dizeleri tarayarak ve komut geçmişi arabellek verilerini çıkararak saldırganın kalan komut satırı etkinliğini tespiti.
  • Şifrelenmiş arşivlerden veya çıkarılabilir medyadan açılanlar da dahil olmak üzere, önbelleğe alınmış dosyaların tespiti,
  • Windows Servislerinin ve proseslerini anlamlandırmak

Bunların tespitimi önemli bir adımdır.