MacOS Threat Hunting

Huseyin Rencber
3 min readAug 7, 2023

Macos threat hunting aslında linux veya windows dan pek farklı değil. Bir malware bulaştıysa, diğer işletim sistemlerinde çalıştırılan komutlara benzer olanları macos için de uyguluyoruz. Mantık benzer, çalışan process kontrolleri, mevcut kullanıcı listesi, persistence noktaları vb gibi.

Kendim ilk analiz ettiğimde process ve connection kontrolüyle başlıyorum,

netstat -na | egrep ‘LISTEN|ESTABLISH

müthiş netstat komutu o an bağlı olan connection ve port bilgilerini veriyor. Listen olanlar da mac üzerinde çalışan servislerden kaynaklı açık olan dinlenen portlar, mesela ssh açık olabilir veya file sharing vs. Aşağıda apple kullandığı portları bulabilirsiniz.

Bir diğer komut, process adı , numarası , hang, user tarafından çalıştırılmış vs gibi güzel bilgiler sunuyor.

lsof -i

Sonrasında tekrar şüpheli görülen process ler için PID özelinde ps komutu çalıştırıp sorgu yapılabilir.

PS komutunun yanında macos için “lsappinfo list” komutu da oldukça işlevli. Path , pid ve bundle bilgiler verebiliyor, aynı zamanda grep ile spesifik process adı da aratmak adına güzel bir komut.

Launchctl komutu da daemon / agent process leri gösterebiliyor, list seçeneği ile user ve sistem seviyesinde bilgi alınabiliyor.

Kontroller esnasında kullandığım macos araçları; activity monitor ve file access ayarları.

activity monitor
Disk Access

User bilgileri için login ve shutdown detaylarını içerdiği için last komutunu kullanılabilir.

last

Benzer şekilde dscl . list /Users komutu da kullanıcı bilgilerini içeriyor.

Persistence

Tüm macos kullanıcıları için Launchagent launchdaemons pathlerini kontrol. Apple script ve cronjob larda kontrol edilebilir.

/Library/LaunchDaemons

File dizini adına Library/application ile

ls -al $TMPDIR

Bunların yanında aynı zamanda yara kurallarıyla da tarama yapmak gerekebiliyor. Bununla ilgili kullandığım aracı ve yazısını aşağıda bulabilirsiniz.

ISC Diary de çok güzel detaylar var.

nettop
LittleSnitch

bu iki tool da kullanılmaya değer…

--

--