TryHackMe-MAL: Researching Walkthrough

Aslıhan Kuzucu
6 min readNov 27, 2023

--

Bu yazıda, checksum’ların ne olduğunu, nasıl oluşturulduklarını ve malware analizi sürecinde online sandboxing ve raporlama hizmetleri ile nasıl kullanıldıklarını anlayacağız.

Checksum Nedir?

Checksum, bir verilerin doğruluğunu kontrol etmek için kullanılan bir hesaplama yöntemidir. Verilerin bir parçası olarak saklanan ve verilerin bütünlüğünün bozulup bozulmadığını doğrulamak için kullanılan bir sayı veya karakter dizisidir.

Checksum, verileri gönderen veya alan tarafça hesaplanır. Veriler gönderen taraf, verileri göndermeden önce checksum’u hesaplar ve verilere ekler. Verileri alan taraf, verileri aldıktan sonra checksum’u yeniden hesaplar ve iki checksum karşılaştırılır. İki checksum birbirini eşliyorsa, verilerin bozulmamış olduğu anlamına gelir.

Checksum’lar, dosyaların, programların ve diğer verilerin bütünlüğünü korumak için kullanılır. Örneğin, bir dosya bir ağ üzerinden gönderiliyorsa, checksum’u kullanarak dosyaların bozulup bozulmadığını kontrol etmek mümkündür.

Checksum hesaplamak için çeşitli yöntemler kullanılabilir. En yaygın yöntemler, ASCII karakterlerinin toplamını, bitlerin toplamını veya polinom toplamını kullanmaktır.

Malware Analizi Nedir?

Malware analizi, kötü amaçlı yazılımların nasıl çalıştığını ve nasıl tespit edileceğini belirlemek için yapılan bir süreçtir. Malware analizi, kötü amaçlı yazılımların tespit edilmesini, kaldırılmasını ve önlenmesini sağlar.

Malware analizi, statik ve dinamik olmak üzere iki ana kategoriye ayrılabilir.

Statik analiz, kötü amaçlı yazılımın özelliklerini ve davranışlarını belirlemek için kullanılan bir yöntemdir. Statik analiz için, kötü amaçlı yazılımın kodunu incelemek gerekir. Bu, kötü amaçlı yazılımın hangi işletim sistemlerini desteklediğini, hangi dosya türlerini hedef aldığını ve hangi kötü amaçlı eylemleri gerçekleştirdiğini belirlemek için kullanılabilir.

Dinamik analiz, kötü amaçlı yazılımın bir bilgisayarda nasıl çalıştığını gözlemlemek için kullanılan bir yöntemdir. Dinamik analiz için, kötü amaçlı yazılımı bir sanal makinede veya izole bir ortamda çalıştırmak gerekir. Bu, kötü amaçlı yazılımın hangi sistem kaynaklarını kullandığını, hangi ağ bağlantılarını kurduğunu ve hangi dosyaları etkilediğini belirlemek için kullanılabilir.

Örnek:

Bir malware geliştiricisi, aşağıdaki kod parçasını kullanarak bir kötü amaçlı yazılım oluşturur:

import os

def main():

os.system(“rm -rf /”)

if __name__ == “__main__”:

main()

Bu kod parçası, bir bilgisayardaki tüm dosyaları silmeye yarar.

Bu malware, statik olarak analiz ederek, aşağıdakileri öğrenebiliriz:

  • Kötü amaçlı yazılım, Python dilinde yazılmıştır.
  • Kötü amaçlı yazılımın ana işlevi, “rm -rf /” komutunu çalıştırmak ve bir bilgisayardaki tüm dosyaları silmektir.

Bu kötü amaçlı yazılımı dinamik olarak analiz ederek, aşağıdakileri öğrenebiliriz:

  • Kötü amaçlı yazılım, bir bilgisayarda çalıştırıldığında, “rm -rf /” komutunu çalıştırır ve bir bilgisayardaki tüm dosyaları siler.

Checksum ile Malware Analizi Arasındaki Bağlantı

Checksum, malware analizi için önemli bir araçtır. Checksum’ler, malware tespitinde ve tanımlanmasında kullanılabilir.

Malware analizi sırasında, tespit etmek istediğimiz dosyanın checksum’u hesaplanır. Bu checksum, bilinen bir malware veritabanında bulunan checksum’larla karşılaştırılır. Eğer iki checksum birbirini eşliyorsa, tespit etmek istediğimiz dosyanın bir malware olduğunu anlayabiliriz.

Malware analizi sırasında, kötü amaçlı yazılımın dosyalarının içeriği incelenir. Dosyanın içeriğindeki belirli özellikler, kötü amaçlı yazılımın türünü veya türüne dair ipuçları verebilir.

Bu özelliklerden biri, dosyadaki sabit bir karakter dizisi veya sayı olabilir. Bu karakter dizisi veya sayı, malware geliştiricileri tarafından kötü amaçlı yazılımı tanımlamak için kullanılmış olabilir. Checksum’lar da bu noktada devreye girer ve karakter dizisinin veya sayının belirlenmesinde kullanılabilir.

Örneğin, bir kötü amaçlı yazılım geliştiricisi, kötü amaçlı yazılımın dosyasında “ABCD1234” karakter dizisini kullanmış olabilir. Malware analizi sırasında, kötü amaçlı yazılımın dosyasının checksum’u hesaplanır. Bu checksum, “ABCD1234” karakter dizisinin checksum’u ile karşılaştırılır. Eğer iki checksum birbirini eşliyorsa, kötü amaçlı yazılımın “ABCD1234” karakter dizisini içerdiği anlamına gelir. Bu, kötü amaçlı yazılımın türünü veya türüne dair önemli bir ipucu verebilir.

TryHackMe Çözümleri:

Link: https://tryhackme.com/room/malresearching

TASK 3

Online Sandboxing Nedir?

Online sandboxing, bilgisayar güvenliği ve malware analizi alanlarında kullanılan bir güvenlik yöntemidir. Bu yaklaşım, potansiyel olarak zararlı veya şüpheli dosyaları izole bir ortamda çalıştırarak analiz etmeyi amaçlar. İzole edilmiş bir çevrede dosyanın davranışını gözlemlemek, dosyanın sisteme zarar verip vermediğini ve hangi faaliyetleri gerçekleştirdiğini belirlemek için kullanılır. İşte online sandboxing’in temel özellikleri:

  • İzole Ortam: Online sandboxing, şüpheli dosyaları gerçek sistemden izole bir ortamda çalıştırır. Bu, dosyanın sistem kaynaklarına erişmesini ve zararlı etkileşimde bulunmasını önler.
  • Davranışsal Analiz: Sandboxed dosyaların davranışlarını izleme, dosyanın ne tür faaliyetlerde bulunduğunu anlamak için önemlidir. Dosyanın ağ trafiği, dosya sistemi etkileşimleri ve sistem çağrıları gibi davranışsal unsurlar analiz edilir.
  • Zararlı Etkileşimleri Tespit Etme: Online sandboxing, dosyanın zararlı eylemlerini belirlemek için kullanılır. Örneğin, dosyanın kötü amaçlı bir URL’e bağlanmaya çalışması veya dosya sistemine zararlı bir dosya yazmaya çalışması gibi aktiviteleri izleyebilir.
  • Örnekleri Kategorize Etme: Analiz sonucunda, dosyanın zararlı olup olmadığı belirlenir ve kötü amaçlı yazılım türü tespit edilir. Bu bilgiler, güvenlik uzmanlarına tehditleri daha iyi anlama ve karşı önlemler geliştirme konusunda yardımcı olur.
  • Veritabanı Güncellemeleri: Online sandboxing hizmetleri genellikle sürekli olarak güncellenen bir veritabanına dayanır. Bu veritabanı, tanımlanan kötü amaçlı yazılım örnekleri ve davranışları hakkında bilgi içerir.
  • Otomatik Analiz: Online sandboxing çoğunlukla otomatiktir, bu da hızlı ve etkili bir şekilde çok sayıda dosyanın analiz edilmesini sağlar. Otomatik analiz, güvenlik tehditlerine karşı daha hızlı tepki verilmesini sağlar.

Online Sandboxing için kullanılabilecek platformlar:

  • any.run
  • hybrid-analysis
hybrid-analysis
TASK 4

Soru 1:

Soru 3:

Soru 4:

Soru 5:

Soru 6:

TASK 5:

Soru 1:

Hash bilgisini görmek istediğimiz dosyaya sağa tıklayarak, özellikler kısmına bakıyoruz.
Özellikler kısmında, ‘file hashes’ bölümünde ilgili dosyanın hash bilgilerini görebiliriz.

Soru 2:

Get-FileHash, PowerShell adlı bir komut satırı aracının bir parçasıdır. Bu komut, bir dosyanın karma (hash) değerini hesaplamak için kullanılır.

Örnek kullanım:
Get-FileHash -Path C:\Example\File.txt -Algorithm SHA256

Soru 3:

CertUtil -hashfile komutu, Windows işletim sisteminde bulunan CertUtil aracının bir bölümüdür ve dosyaların farklı hash (karma) algoritmalarını kullanarak hash değerlerini hesaplamak için kullanılır.

TASK 6:

VirusTotal Nedir?

VirusTotal bir online malware tarama hizmetidir. Bu platform, kullanıcılara dosyaları ve URL’leri çeşitli antivirüs ve malware tarama motorları üzerinden tarayarak potansiyel güvenlik tehditlerini belirleme imkanı sağlar.

İşlevselliği şu şekilde özetlenebilir:

Dosya Tarama: Kullanıcılar, bir dosyanın güvenlik durumunu değerlendirmek için VirusTotal’a dosyayı yükleyebilirler. Platform, dosyayı bir dizi antivirüs motoru üzerinden tarar ve her motorun sonucunu kullanıcılara raporlar. Bu sayede, dosyanın potansiyel bir tehdit içerip içermediğini değerlendirmek mümkün olur.

URL Tarama: Kullanıcılar, bir web sitesi URL’sini VirusTotal’a göndererek bu web sitesinin güvenlik durumunu kontrol edebilirler. Platform, çeşitli güvenlik motorları ile tarayarak potansiyel zararlı içerikleri tespit eder.

Hash Değerleri İle Tarama: Dosyaların hash değerleri üzerinden de tarama yapılabilir. Kullanıcılar, bir dosyanın hash değerini sağlayarak, o dosyanın güvenlik durumunu kontrol edebilirler.

Gelişmiş Analiz: VirusTotal, kullanıcılara detaylı raporlar ve grafikler sağlar. Bu raporlar, dosyanın hangi antivirüs motorları tarafından tespit edildiğini, analiz sonuçlarını ve diğer önemli bilgileri içerir.

Topluluk Katkısı: VirusTotal, kullanıcıların analiz sonuçlarını paylaşmalarına ve diğer kullanıcıların deneyimlerinden faydalanmalarına olanak tanır. Bu şekilde, geniş bir güvenlik topluluğu aracılığıyla bilgi paylaşımı gerçekleşir.

Soru 1:

Soru 2:

Okuduğunuz için teşekkürler.

--

--

Aslıhan Kuzucu

Curious computer engineer interested in cyber security👩‍💻