===== Analiza podataka dobivenih uslugom Google Takeout =====
===== Sažetak =====
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.
===== Video =====
[[https://ferhr-my.sharepoint.com/:f:/g/personal/df52335_fer_hr/EtyUESfH_LtAoceqoaLfZekB9m41WejdCAOYzm-k87QZvg?e=vSwV32|Analiza podataka dobivenih uslugom Google Takeout]]
===== Uvod =====
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.
===== Calendar =====
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:
* Početak i kraj događaja
* Koliko često i kad se ponavlja događaj
* Pozvane osobe i njihovi statusi odgovora
* Naslov i opis događaja
* Lokacija (ako je dostupna)
* Kada je događaj stvoren i zadnji put izmijenjen
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:
{{:racfor_wiki:seminari2023:racfor-cal.jpg?250|}}
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.
{{:racfor_wiki:seminari2023:moj_kalendar.png?400|}}
Slika 2: Primjer ispunjenog tjedna
===== Chrome =====
Podatci koje sadrži Chrome uključuju:
* Autofill
* Bookmarks
* Povijest Chrome preglednika
* Rječnik
* Ekstenzije
* Tražilice (Search engines)
* Postavke
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
}
I bookmarks.
{{:racfor_wiki:seminari2023:bookmarks.jpg?600|}}
Slika 3: Primjer bookmarks
===== Contacts =====
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.
{{:racfor_wiki:seminari2023:kontakti.jpg?250|}}
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 [[https://products.groupdocs.app/viewer/vcf|online vcf viewer]]
{{:racfor_wiki:seminari2023:kontakti_primjer.jpg?250|}}
Slika 5: Prikaz primjera kontakta
===== Gmail =====
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 [[https://www.thunderbird.net|Thunderbird]].
{{:racfor_wiki:seminari2023:gmail_takeout.jpg?600|}}
Slika 6: Prikaz mbox pošte u Thunderbird
===== Google Account =====
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.
{{:racfor_wiki:seminari2023:google_subscriber_information.jpg?600|}}
Slika 7: Prikaz Google aktivnosti
===== Google Play Games Services =====
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.
{{:racfor_wiki:seminari2023:achivements.jpg?400|}}
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.
===== Google Play Store =====
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 =====
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:
{{:racfor_wiki:seminari2023:trip_to_pag.png?600|}}
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 =====
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.
{{:racfor_wiki:seminari2023:my_activity.png?400|
}}
Slika 10: Folderi koji sadrže My Activity podatke
===== Drugi servisi =====
**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
===== Zaključak =====
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.
===== Literatura =====
[1] [[https://takeout.google.com/|Google, Google Takeout]]
[2] [[https://www.xda-developers.com/google-takeout/|XDA, Google Takeout: A complete guide to downloading your Google data]]
[3] [[https://en.wikipedia.org/wiki/Google_Takeout|Wikipedia, Google Takeout]]