Ovaj seminarski rad pruža informacije i analizira podatke dobivene putem usluge Google Takeout. Kroz Google Takeout korisnici dobivaju uvid u svoj digitalni trag. Podatci uključuju informacije o događajima u Google Calendar, povijesti pregledavanja u Chromeu, kontaktima, Gmail porukama, aktivnostima na Google Accountu te ostale informacije o servisima koje Google pruža. Uzimajući u obzir različite Google usluge, rad ističe važnost Google Takeouta za izradu sigurnosnih kopija, statističke analize podataka i forenzičke analize. Na kraju, rad zaključuje s naglaskom na važnosti održavanja sigurnosti računa kako bi se osigurala privatnost s obzirom na osjetljive podatke koje mnogi korisnici generiraju putem Google usluga.
Google Takeout pruža mogućnost preuzimanja podataka povezanih s različitim Google uslugama. Ove informacije postaju izuzetno korisne za izradu sigurnosnih kopija naših Google usluga, analizu vlastitih podataka radi statističkih izvještaja ili provođenje forenzičke analize. Kroz Google Takeout, dobivamo uvid u naš digitalni trag, omogućujući nam sagledavanje različitih načina na koje Google prati naše aktivnosti na internetu i na mobilnim uređajima.
Google Takeout Calendar sadrži informacije unutar Google Calendar aplikacije. Informacije sadrže podatke o prijašnjim i budućim rasporedima i planovima. Detaljnije, informacije uključuju:
Dodatna informacija o konfiguraciji prekida sastanka (Meeting Breakout configuration) se može naći u JSON formatu.
U mapi kalendara dobivamo .ics datoteku te u nastavku vidimo strukturu događaja za predavanje iz računalne forenzike:
BEGIN:VEVENT DTSTART:20240126T130000Z DTEND:20240126T150000Z DTSTAMP:20240110T112023Z UID:0a91695649ec7ce37c2faa78b0e0f25a@www.fer.unizg.hr CREATED:19000101T120000Z DESCRIPTION: LAST-MODIFIED:20231120T164336Z LOCATION:D-160-2 SEQUENCE:0 STATUS:CONFIRMED SUMMARY:Računalna forenzika - 13. predavanje (P01) [D-160-2] TRANSP:OPAQUE END:VEVENT
Ics datoteku možemo otvoriti u programima i aplikacijama za kalendare. Navedeni događaj ovako izgleda u Google Calendar:
Slika 1: Primjer događaja u kalendaru
Takeout sadrži sve neizbrisane događaje ako osoba detaljno prati i održava raspored moguće je vidjeti što je radila te kada.
Slika 2: Primjer ispunjenog tjedna
Podatci koje sadrži Chrome uključuju:
U mapama Chroma možemo vidjeti navedene informacije. U nastavku vidimo primjer posjećene stranice:
{ "Browser History": [ { "page_transition": "LINK", "title": "heroin - Google Search", "ptoken": {}, "url": "https://www.google.com/search?q=takeout+google&sca_esv=597175834&sxsrf=ACQVn08p5GlMdlYyQnzQ0JvOGTSj", "client_id": "CL2zRwD6h9CO4Ko1vnEbiQ==", "time_usec": 1704885237367499 }
Autofill informacije.
{ "Autofill Profile": [ { "address_home_state_status": "OBSERVED", "address_home_country_status": "OBSERVED", "address_home_country": "HR", "name_honorific_status": ["VERIFICATION_STATUS_UNSPECIFIED"], "address_home_apt_num": "", "name_first_status": ["OBSERVED"], "address_home_thoroughfare_number": "##", "address_home_zip_status": "OBSERVED", "name_middle_status": ["PARSED"], "address_home_zip": "10000", "birthdate_day": 0, "name_full_with_honorific_status": ["VERIFICATION_STATUS_UNSPECIFIED"], "address_home_street_address": "#########", "name_full_with_honorific": ["###############"], "name_last_first": [""], "address_home_language_code": "", "address_home_city_status": "OBSERVED", "address_home_floor": "", "birthdate_year": 0, "name_last_conjunction": [""], "name_last_first_status": ["PARSED"], "birthdate_month": 0, "name_middle": [""], "company_name": "none", "name_last_status": ["OBSERVED"], "guid": "fdasf-dfsds-4fdas6cf-9fdsabc-8fwwq4334b44", "address_home_dependent_locality_status": "VERIFICATION_STATUS_UNSPECIFIED", "address_home_apt_num_status": "VERIFICATION_STATUS_UNSPECIFIED", "address_home_city": "ZAGREB", "name_full": ["###############"], "name_full_status": ["OBSERVED"], "name_last_second_status": ["PARSED"], "address_home_subpremise_name_status": "FORMATTED", "address_home_street_location_status": "PARSED", "name_last": ["###############"], "use_count": 3, "address_home_thoroughfare_name": "#########", "address_home_thoroughfare_number_status": "PARSED", "name_last_second": ["###############"], "address_home_line1": "#####", "address_home_line2": "##", "address_home_street_address_status": "OBSERVED", "name_first": ["###############"], "address_home_sorting_code": "", "name_honorific": [""], "name_last_conjunction_status": ["PARSED"], "address_home_state": "543252345432", "address_home_dependent_locality": "", "address_home_street_location": "#########", "address_home_sorting_code_status": "VERIFICATION_STATUS_UNSPECIFIED", "address_home_subpremise_name": "", "email_address": ["##########################"], "deprecated_origin": "Chrome settings", "address_home_thoroughfare_name_status": "PARSED", "address_home_floor_status": "VERIFICATION_STATUS_UNSPECIFIED", "phone_home_whole_number": ["############"], "use_date": 543252354 }
Slika 3: Primjer bookmarks
Google contacts sadrži podatke o kontaktima koji se nalaze u aplikacije.
Podatci sadrže informacije poput ime kontakta, slika, email, IM, adresa i telefonski broj. Osim navedenih informacija mogu se vidjeti podatci o organizaciji, vezi, zaposlenosti, prioritetu, osjetljivosti, rođendanu, lokaciji i hobijima ako su navedeni.
Kontakti su vezani uz račun te samim time ostaju nepromijenjeni ako se promijeni mobitel.
Slika 4: Folderi koji sadrže kontakte
U nastavku se vidi primjer kako su informacije zapisane unutar .vcf datoteke.
BEGIN:VCARD VERSION:3.0 FN:Andrija N:;Andrija;;; TEL;TYPE=CELL:+############### CATEGORIES:Restored from Lge - LG-H440n,myContacts END:VCARD BEGIN:VCARD VERSION:3.0 FN:AutoTrans N:;AutoTrans;;; TEL;TYPE=CELL:########### CATEGORIES:Restored from Lge - LG-H440n,myContacts END:VCARD BEGIN:VCARD VERSION:3.0 FN:Bruno Kuvar N:Kuvar;Bruno;;; TEL;TYPE=CELL:+############### CATEGORIES:Restored from Lge - LG-H440n,myContacts END:VCARD
Podatci se mogu pregledati s pomoću mnogih alata i programa poput online vcf viewer
Slika 5: Prikaz primjera kontakta
Gmail Takeout nudi sve poruke i pošte koje je korisnik poslao i primio pod uvjetom da nisu izbrisane. Pošta sadrži sav sadržaj koji je poslan ili primljen uključujući tekst, formatiranje, slike, video te poslani prilog. Osim toga za svaku poštu se vidi tko je slao, kome i kada.
Kao Takeout se dobije mbox datoteka koja sadrži sve navedene podatke. Kako bi se mogla otvoriti i pregledati potreban je program koji može otvoriti taj tip dokumenta, primjerice Thunderbird.
Slika 6: Prikaz mbox pošte u Thunderbird
Google Account sadrži podatke o korisničkim aktivnostima te kada, s kojima preglednikom i IP adresom se zadnji put prijavio na svoj račun.
Slika 7: Prikaz Google aktivnosti
Google Play Games Services sadrži informacije o igrama koje su povezane s Google računom. Informacije mogu sadržavati save igri, rezultati i postignuća (achievements) unutar igre. Informacije koje se spreme ovise o tome kako je servis implementiran unutar same igre.
Slika 8: Prikaz Google Play Games Services aktivnosti
Navedene informacije su korisne za prosječnog korisnika ali se na prvu čine slabe koristi u računalnoj forenzici. Međutim, uz sve navedene informacije dodatno se vidi datum i vrijeme kada je došlo do promjene što može pomoću unutar istraživanja.
Play Store nam daje uvid u preuzete aplikacije, na primjer ovdje možemo vidjeti da sam skinuo aplikaciju Background voice recorder koja korisniku omogućuje da sa zaključanim mobitelom pokrene snimanje audio zapisa.
{ "install": { "doc": { "documentType": "Android Apps", "title": "Background voice recorder" }, "firstInstallationTime": "2022-05-26T10:46:08.992347Z", "deviceAttribute": { "model": "LG-nutela", "carrier": "Blabla", "manufacturer": "LG", "deviceDisplayName": "LG-nutela" }, "lastUpdateTime": "2023-11-22T01:41:25.410258Z" } }
Maps sadrži postavke te mjesta koja smo spremili. Ako je opcija upaljena dodatno se sprema povijest posjećenih lokacija. Pomoću timeline-a (ako ga korisnik ima uključen), možemo vidjeti svaki korak koji je korisnik napravio dok je imao opciju upaljenu i dok je putovao s mobitelom. Svaka lokacija je sistematično raspoređena po godinama i onda po mjesecima i danima. U nastavku je primjer jednog mjeseca prikazanog na karti sa svim lokacijama na kojima je bio:
Slika 9: Prikaz timeline aktivnosti na mapi
Svi podatci su u JSON formatu. Za ovako elegantan prikaz se koristila Python biblioteka folium.
import folium import json # Replace 'your_timeline_data.json' with the actual filename or path to your timeline data filename = r'Downloads\takeout-20240110T112022Z-001\Takeout\Location History (Timeline)\Semantic Location History\2016\2016_AUGUST.json' with open(filename, 'r', encoding='utf-8') as f: timeline_data = json.load(f) # Print the structure of the loaded JSON data print("Data Type:", type(timeline_data)) # Check if the expected key 'timelineObjects' is present in the dictionary if 'timelineObjects' in timeline_data: # Create a folium map centered around the first location in your timeline first_entry = timeline_data['timelineObjects'][0] map_center = [ first_entry['activitySegment']['startLocation']['latitudeE7'] / 1e7, first_entry['activitySegment']['startLocation']['longitudeE7'] / 1e7 ] mymap = folium.Map(location=map_center, zoom_start=15) # Plot markers for each location in the timeline for entry in timeline_data['timelineObjects']: if 'activitySegment' in entry: start_lat = entry['activitySegment']['startLocation']['latitudeE7'] start_lon = entry['activitySegment']['startLocation']['longitudeE7'] end_lat = entry['activitySegment']['endLocation']['latitudeE7'] end_lon = entry['activitySegment']['endLocation']['longitudeE7'] # Check if 'distance' key is present in the 'activitySegment' entry distance = entry['activitySegment'].get('distance', 'Unknown Distance') # Plot a line between the start and end locations folium.PolyLine([(start_lat / 1e7, start_lon / 1e7), (end_lat / 1e7, end_lon / 1e7)], color='blue', weight=2.5, opacity=1).add_to(mymap) # Plot markers for start and end locations folium.Marker(location=[start_lat / 1e7, start_lon / 1e7], popup=f"Start - {distance}").add_to(mymap) folium.Marker(location=[end_lat / 1e7, end_lon / 1e7], popup=f"End - {distance}").add_to(mymap) # Save the map as an HTML file mymap.save(r'C:Downloads\takeout-20240110T112022Z-001\Takeout\Location History (Timeline)\test\timeline_map.html') else: print("Invalid data structure. 'timelineObjects' key not found.")
Karte nam dodatno daju uvid u povijest pretraživanja. Primjer jednog takvog pretraživanja:
{ "placeUrl": "https://google.com/maps/?cid=0x4764a120b2a92fcf:0x32e1f76dbe7fb0de", "answer": "NO" }
My Activity sadrži gotovo sve aktivnosti koje su vezane uz Google račun. Neke od mnogih aktivnosti uključuju povijest lokacija, povijest korištenja YouTube servisa te drugih Google servisa.
Ovo se može smatrati jednom od najvrjednijih informacija Kada bi se aktivnosti i podatci grupirali potencijalno bi mogli napraviti lentu vremena na kojoj se može očitati gotovo sve što je korisnik ikada radio vezano za Google.
Slika 10: Folderi koji sadrže My Activity podatke
Arts & Culture
Favourites i galerije koje su stvorene u Google Arts & Culture.
Assignments
Predmeti i zadatci uključujući rubrike i komentare s povratnom informacijom (feedback comments).
Assistant Notes and Lists
Zabilješke i popisi unutar Google Assistant.
Crisis User Reports
Informacije pružene koje pomažu drugima tijekom krize.
Data Shared for Research
Spremljeni odgovori s vlastitim Google računom tijekom sudjelovanja u Google research studies and projects.
Discover
Postavke spremljene u Discover koje uključuju koga pratimo (follow), like i nezainteresirane (not interested).
Drive
Sve datoteke koje posjedujete i koje su pohranjene na vašem Google disku i računalima. (potencijalno terabajti korisnih informacija)
Fit
Vlastiti podatci unutar Google Fit.
Podatci uključuju treninge, podatci o spavanju i dnevnu metriku poput pređena udaljenost i koraci.
Google Business Profile
Svi podatci vezani uz vlastito poslovanje.
Podatci uključuju podatke s vlastite info stranice, objave, recenzije, odgovore i objavljeni medij poput slika i videa.
Google Chat
Korisnici, grupe, povijest razgovora i privitci unutar Google Chat domene.
Google Cloud Search
Google Cloud Search podatci koji pripadaju vlastitoj organizaciji.
Podatci uključuju metapodatke za indeksirane podatke iz trećih repozitorija (third-party repositories) i povijest upita za pretraživanje u Cloud Search.
Google Finance
Portfolio dionica i lista praćenja na Google Finance.
Google Help Communities
Vlastiti doprinos u Google Help Communities poput upita i odgovora.
Doprinos je u zip formatu koji uključuje tekst pitanja i/ili odgovora te priloženi medij poput slika.
Google Pay
Spremljene propusnice, aktivnost pomoću virtualnih brojeva računa i povijest transakcija s Googleovih usluga kao što su Play i YouTube i peer-to-peer plaćanja u aplikaciji Google Pay.
Google Play Books
Naslovi i autori knjiga koje ste kupili i prenijeli na Google Play knjige, plus bilješke i oznake
Google Play Movies & TV
Postavke, usluge, popis za gledanje i ocjene za Google Play filmove i TV.
Google Podcasts
Preplaćeni podcasti.
Google Shopping
Google Shopping povijest naručivanja, loyalty, adrese i recenzija.
Google Translator Toolkit
Dokumenti koje posjedujemo unutar Google Translator Toolkit.
Google Workspace Marketplace
Metapodaci koji opisuju aplikaciju objavljenu na Google Workspace Marketplace.
Home App
Home app informacije u JSON formatu.
Podatci uključuju vlastite podatke, sobe, kuće i struktura navedenih stavki. Podatci uključuju povijest događaja kuće uređaja.
Keep
Zabilješke i medij pohranjeni u Google Keep.
News
Podatci o magazinima, kategorijama i izvorima vijesti za koje smo zainteresirani.
Phone audio
Telefonski audiozapisi i transkripcije.
Pinpoint
Vlastiti podatci u Pinpoint uključujući prenesene datoteke.
Profile
Opcije i slike u Google profile.
Purchases & Reservations
Kupovina i rezervacija napravljene s pomoću pretraživanja (Search), mape (Maps) i asistenta (Assistant).
Reminders
Podsjetnici napravljeni s Google.
Saved
Kolekcija spremljenih linkova (slike, mjesta, web stranice, itd.) u Google pretraživanju i mapi.
Search contributions
Ocjene, recenzije, komentari i ostali doprinos za Google Search.
Shopping lists
Stavke koje su dodane na vlastiti popis, kupljene preko Google ili označene.
Street View
Slike i video koji je prenesen na Google Street View.
Tasks
Podatci vezani za otvorene i gotove poslove.
Textcube
Slike i druge datoteke u Textcube
Gotovo svi na svijetu koriste neki Google servise te samim time generiraju podatke i informaciju. Google Takeout nudi mogućnost preuzimanja gotovo svih tih podataka i aktivnosti koje su vezane uz Google račun. Neki servisi nude samo par postavki dok drugi nude cijelu povijest njihovog korištenja. Neke informacije sadrže veoma osobne i osjetljive podatke koje mnogi ne žele da drugi znaju ili imaju pristup. Iz tog razloga potrebno je pratiti i održavati sigurnost računa kako takvi podatci ne bi došli u krive ruke. Dodatno je vrijedno spomenuti da se većina aktivnosti može ugasiti te time Google ne pamti aktivnosti unutar tog perioda što pridonosi privatnosti.