Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
Prijevodi ove stranice:

Prezentacija

Video

Sažetak

2020. godine Apple je napravio prijelaz s Intel na Apple M1 arhitekturu. M1 je RISC procesor koji koristi ARM arhitekturu, dok se Intel procesor se sastoji od više CISC procesora. M1 arhitektura omogućava bolje performanse na uređaju Mac, međutim potrebno je analizirati kako nove promjene utječu na alate koji koriste računalni forenzičari kako bi osigurali daljnju sigurnost sustava.

U sklopu ovog seminarskog rada analizirano je istraživanje [1] koje nastoji naći propuste u Volatility alatu koji su nastali nakon migracije na Apple M1 arhitekturu. Volatility je napredni alat koji se koristi za analizu slike RAM-a. RAM je vrlo važan u računalnoj forenzici jer sadrži informacije o programima koji se izvršavaju. RAM može sadržavati lozinke, PIN-ove, komunikacijske poruke i dekriptirane tekstove.

Istraživanje je provedeno na Intel i M1 računalu na 77 Volatility modula te je iznesena lista modula koje je potrebno ažurirati jer su prilikom izvršavanja pokazali nepredviđeno ponašanje te je iznesen razlog zašto se nepredviđeno ponašanje ostvaruje. Ova analiza značajno će olakšati posao Volatility razvijateljima pri dodavanju podrške za M1 arhitekturu. Također, iznesena je i lista modula koji ostvaruju ispravno ponašanje. U budućnosti, moguće je razviti nove Volatility module koji će koristiti razne specifičnosti M1 arhitekture.

Uvod

Radna memorija (RAM) je ona u kojoj se programi izršavaju. Forenzika RAM-a je vrlo važna jer svaka aktivnost na računalu modificira stanje dijela RAM-a. Također, RAM može sadržavati lozinke, PIN-ove, komunikacijske poruke i dekriptirane tekstove. Sve ove informacije mogu ostati u RAM-u dugo vremena, čak i nakon što proces koji ih je stavio u RAM završi. Stručnjaci za računalnu forenziku koriste razne napredne alate za analizu RAM-a koji razumiju strukturu u memoriji budući da se RAM sastoji od velike količine binarnih podataka koji naizgled nemaju nikakvu strukturu. [2]

Apple je 2020. godine uveo M1 procesor koji je zamjenio prijašnji Intel procesor. Intelov procesor koji je korišten u Apple Mac računalima sastoji se od više Complex instruction set computing (CISC) procesora, a M1 je RISC procesor jer koristi ARM arhitekturu. Ove arhitekturalne izmjene prisiljavaju inženjere koji razvijaju alate za kibernetičku sigurnost da dodaju podršku za M1 procesor kako bi osigurali da se istrage mogu izvršavati i na računalima s novom M1 arhitekturom. [1]

Nova M1 arhitektura omogućava značajno bolje performanse. Performanse M1 arhitekture prikazane su na slici 1.

www.apple.com_newsroom_images_product_mac_standard_apple_m1-pro-m1-max_cpu-performance_10182021_big.jpg.medium_2x.jpg Slika 1. Performanse M1 arhitekture [3]

U sklopu ovog seminara napravljena je analiza istraživanja [1] koje je provedeno za orkrivanje potrebnih modifikacija koje se trebaju razviti za alat Volatility kako bi alat radio na predviđen način i na računalima s M1 arhitekturom. Istraživanje je provedeno sa svim postojećim Volatility modulima koji su podržani za MacOS kako bi se uvidjela razlika u ponašanju modula koji se izvode na M1 i Intel arhitekturi.

Volatility framework

Volatility je besplatan program otvorenog koda koji radi analizu slike radne memorije. Volatility framework se može koristiti putem komandne linije (CLI), no postoje drugi vanjski autori koji su razvili GUI za Volatility. Volatility podržava razne formate slika radne memorije te sadrži razne module koji omogućavaju zasebne funkcionalnosti alata. Istraživanje [1] koje je opisano u ovome radu, otkriva razlike između izlaza Volatility modula kada se izvode na arhitekturi Apple M1 i Intel CISC. U sklopu istraživanja provjeren je rad 77 modula te je donesen izvještaj koji ukazuje razlike u ponašanju modula na različitim arhitekturama.

Iako Volatility za MacOS podržava analizu slike memorije, Volatility ne podržava akviziciju slike memorije. Postoje programi otvorenog koda, a također i komercijalni programi za prikupljanje slike memorije koji se mogu koristiti za izdvajanje podataka iz RAM-a. Budući da se istraživanje usredotočilo na dvije različite arhitekture i budući da je M1 arhitektura bila toliko nova kada je istraživanje provedeno, istraživači su morali upotrijebiti dvije različite metode za izdvajanje uzoraka memorije.

Mac računalo koje sadrži Intel arhitekturu izvedeno je kao virtualni stroj koje radi na Mac hardveru, tako da je uzorak memorije dobiven snimanjem snimke virtualnog stroja. Za M1 Mac koji koristi ARM procesor uzorak memorije dobiven je korištenjem Volexityjevog programa Surge Collect. To je zato što je arhitektura bila nova i nije bilo drugog lako dostupnog programa koji je ažuriran za novu M1 arhitrkturu. [1]

Budući da je M1 arhitektura bazirana na ARM procesoru, istraživanje je moralo biti izvršeno na dvije različite Volatility okoline. Na Mac uređaju koje koristi Intel procesor korišten je kod s normalnog Volatility foundation repozitorija, a M1 Mac uređaj koristio je kod koji se nalazio na zasebnoj grani Volatility foundation repozitorija na kojoj je dodana podrška za M1 Mac.

Kako bi sustavi bili što sličniji, oba računala izvršavala su MacOS Big Sur 11.4 20F71.

Rezultati istraživanja

Istraživanje je provedeno na 77 Volatility modula koji podržavaju i Intel i ARM sustave. Svaki od ovih modula pokrenut je na oba sustava. Od 77 modula, 35 modula radilo je dobro na oba dvije arhitekture. 12 modula imalo je jednake greške na oba dvije arhitekture. Pet ih je imalo različite greške. 15 ih je radilo na Intelu, a nije radilo na M1. Osam ih je radilo na M1, a nije radilo na Intelu. Dva modula imala su čudno ponašanje. [1]

U tablici 1 prikazani su moduli koji su radili samo na jednom od dva sustava.

Plugin name Works on Intel Works on M1 Errors on Intel Errors on M1
mac_arp X X
mac_check_mig_table X X
mac_check_syscall_shadow X X
mac_check_sysctl X X
mac_check_trap_table X X
mac_devfs X X
mac_list_kauth_listener X X
mac_list_kauth_scopes X X
mac_list_raw X X
mac_lsof X X
mac_malfind X X
mac_pgrp_hash_table X X
mac_pid_hash_table X X
mac_psaux X X
mac_psenv X X
mac_pslist X X
mac_recover_filesystem X X
mac_socket_filters X X
mac_tacks X X
mac_threads X X
mac_threads_simple X X
mac_volshell X X
mac_yarascan X X

Tablica 1 - Prikaz Volatility modula koji rade, ili na M1, ili na Intel arhitekturi. [1]

U tablici 2 prikazani su moduli koji su imali pogreške na oba dva sustava. Neki moduli davali su jednake greške na oba sustava, a neki različite.

Plugin name Error messages were the same Error messages were different
mac_apihooks_kernel X
mac_check_fop X
mac_check_syscalls X
mac_compressed_swap X
mac_dead_procs X
mac_dead_sockets X
mac_dead_vnodes X
mac_dump_file X
mac_get_profile X
mac_interest_handler X
mac_ip_filters X
mac_kernel_classes X
mac_kevents X
mac_list_zones X
mac_lsmod_iokit X
mac_timers X
mac_vfsevents X

Tablica 2 - Prikaz modulula koji imaju greške na oba sustava. [1]

Postoji mnogo razloga zašto postoji veliki broj modula koji daju greške.

Prvi razlog je taj što je istraživanje [1] provedeno vrlo kratko nakon što je Apple uveo M1 arhitekturu te je zbog toga ovo prvo istraživanje koje je radilo analizu rada Volatility modula na ove dvije različite arhitekture.

Drugi razlog je taj što Volatility koristi informacije u Appleovim kompletima za otklanjanje pogrešaka u jezgri kako bi stvorio konfiguraciju za ispravnu verziju MacOS-a, ali Apple je počeo mijenjati način na koji šalje informacije o otklanjanju pogrešaka za svoje jezgre što znači da Volatility ne dobiva uvijek potpune informacije potrebne za mnoge module.

Potrebno je napraviti izmjene na modulima kako bi radili na predviđen način na oba dva sustava.

Zaključak

Računalni forenzičari moraju prilagoditi svoje alate za novu Apple M1 arhitekturu na uređaju Mac. Vrlo je važno da napredni alati kao što je Volatility budu ažurirani u skladu s novom M1 arhitekturom kako bi se eliminirali potencijalni napadi na novu arhitekturu. U istraživanju provedenom na 77 Volatility modula koji se koriste za analizu radne memorije, otkriveni su propusti u nekim modulima koji će omogućiti razvijateljima Volatility Foundation-a uvid u one module za koje je potrebno napraviti izmjene kako bi se osigurala daljnja sigurnost u radu s Volatility alatom. U budućnosti, moguće je razviti brojne nove module za Volatility koji će koristiti razne specifičnosti M1 arhitekture.

Literatura

racfor_wiki/seminari/forenzika_memorije_za_uredaj_mac_-_usporedba_apple_m1_i_intel_arhitekture.txt · Zadnja izmjena: 2023/06/19 18:17 (vanjsko uređivanje)
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0