In Teil 1 und 2 unserer Reihe zur Windows-Timeline haben wir gezeigt, wie Cellebrite BlackLight und Cellebrite MacQuisition Ermittlern helfen können, wertvolle Beweise entweder auf Android- oder Mac-Geräten zu finden. Wir sind auch tiefer in die Quelldatenbank ActivitiesCache.db eingetaucht, die riesige Datenmengen über Benutzeraktivitäten (z. B. Web-Browsing und Dokumentenzugriff) enthält. Darüber hinaus können diese Beweise über mehrere Windows-Rechner synchronisiert werden, auf denen sich ein Benutzer mit demselben MS-Konto anmeldet.

Die Timeline kann auch Beweise für Aktivitäten speichern, die auf Nicht-Windows-Computern stattgefunden haben, wenn Office365 mit demselben Konto wie das MS-Anmeldekonto verknüpft ist. In diesem Blog werfen wir einen Blick auf eine Art von Benutzeraktivität, an die Sie vielleicht nicht denken, wenn Sie dieses spezielle Artefakt untersuchen – den Inhalt der Zwischenablage.

Bevor wir beginnen, sollten wir eines beachten: Timeline-Analysen verändern sich schnell. Die DB selbst, wie auch das Verhalten des Systems, ändert sich mit fast jeder Windows-Version. Auch ohne die ständigen Veränderungen gibt es große Teile der Timeline, über die wir wenig wissen. Hier ist sowohl für die Verifizierung als auch für das Herausfinden der unbekannten Teile noch viel mehr Arbeit erforderlich. Vor diesem Hintergrund enthält dieser Beitrag etwas mehr Details über den Prozess, den ich benutzt habe, um herauszufinden, wie die Timeline und die Zwischenablage miteinander verbunden sind. Es bleibt zu hoffen, dass diese Informationen anderen Neugierigen helfen, ihre eigenen Tests durchzuführen und das Bekannte zu ergänzen.

Das Problem

Vor längerer Zeit stöberte ich auf einer meiner Test-VMs in der ActivitiesCache.db herum. Dabei fiel mein Blick auf die Aktivitätentabelle – genauer gesagt auf die Spalte „Clipboard Payload“, in der Daten enthalten waren. Ich hatte die Spalte schon einmal gesehen, aber ich hatte vorher nicht gesehen, dass sie befüllt war. Sie sah in etwa so aus wie in Abbildung 1 unten. Sofort sagte mir mein forensisches Gefühl, das sollte interessant sein, also bin ich eingetaucht.

Abb. 1

Ich lud die VM in Cellebrite BlackLight, um mich weiter umzusehen. Die Spalte „Clipboard Payload“ zeigte einige offensichtlich base64-kodierte Daten. Die dekodierte Zeichenfolge lautete „AMD-Backed Blockchain Project Amassing 20K GPUs“, aber sie wollte nicht sagen, warum. Anscheinend hatte ich etwas zu Krypto-Währung gelesen und den Titel des Artikels kopiert. Doch wie waren die Daten dorthin gelangt? Wie lange würden sie bleiben? Wurden sie irgendwo anders gespeichert? War nur Text gespeichert worden? Es gab viele Fragen, die beantwortet werden mussten, also beschloss ich, einige Tests durchzuführen.

Methodologie

Zwar hatte ich eine Vorstellung davon, wie einige der Antworten aussehen könnten – und auch online fand ich hilfreiche Quellen [1], doch wie ich bereits sagte, ändert sich die Timeline schnell. Um einige dieser Fragen für mich selbst zu beantworten, habe ich vor kurzem eine neue Windows 10 2004-VM gestartet und Text kopiert und eingefügt. Dann schaute ich in die Timeline-DB, und es gab keine angezeigten Clipboard Payload-Daten. Das war also nicht sehr hilfreich.

Ein kurzes Googeln erinnerte mich daran, dass mit Windows 10 Version 1809 einige neue Zwischenablagefunktionen hinzugefügt wurden: „Clipboard History“ und „Clipboard Cloud Sync“ [2-8]. Ich stellte die Hypothese auf, dass, wenn die richtigen Konfigurationsoptionen (wir werden sie weiter unten sehen) ausgewählt würden, Windows eine begrenzte Historie von Text und Bildern speichern würde, die ein Benutzer mit STRG-C kopiert hat. Auf sie konnte dann mit der Tastenkombination WinKey-V zugegriffen werden. Abhängig wiederum von den Einstellungen können einige Arten von kopierten Daten sogar zwischen den Rechnern synchronisiert werden. Ich probierte die Tastenkombination WinKey-V für „Clipboard History“ in meiner 2004-VM aus und erhielt diese traurige Nachricht:

Abb. 2

Ich nahm an, dass ich an einigen Einstellungen herumbasteln musste. Nach weiterem Googeln konnte ich unter Einstellungen → System → Zwischenablage den Verlauf der Zwischenablage einschalten:

Abb. 3

Dann kopierte ich etwas Text aus meinem Webbrowser, versuchte es noch einmal mit dem WinKey-V, und siehe da:

Abb. 4

Als ich dann noch einmal in die Timeline-DB schaute, hatte ich jedoch immer noch kein Glück – es wurden keine Clipboard Payload-Daten angezeigt. Glücklicherweise gab es noch weitere Einstellungen. Als nächstes aktivierte ich die Einstellung „Sync across devices“, um „Clipboard Cloud Sync“ zu aktivieren.

Abb. 5

Hierfür rechnete ich mir bessere Chancen aus und nahm folgende Schritte auf der neuen 2004-VM vor (siehe Abbildung 6 unten):

  • Anmeldung mit einem meiner Test-MS-Konten
  • Öffnen von Notepad
  • Einfügen eines Zeitstempels als gute Maßnahme
  • Schreiben von etwas Text
  • Auswahl des Texts
  • Kopieren des Texts über die rechte Maustaste

Abb. 6

Dann öffnete ich eine andere Maschine (eine 1809-Test-VM unter Windows 10) und tat Folgendes:

  • Anmeldung mit dem gleichen MS-Konto wie bei der 2004-VM
  • Sicherstellen, dass sie die gleichen Einstellungen für die Zwischenablage hatte
  • Öffnen von Notepad
  • Einfügen eines Zeitstempels
  • „Einfügen“ über die rechte Maustaste

Hinweis: Achten Sie darauf, dass Sie in dieser VM zuvor nichts anderes kopiert/eingefügt haben.

Und voilà! Der Text, den ich oben in der 2004-Maschine kopiert hatte, wurde in die 1809-Maschine eingefügt (siehe Abbildung 7 unten).

Abb. 7

Als ich diesmal einen kurzen Blick auf die Timeline-DB auf dem 2004-Rechner warf, sah ich einige Clipboard Payload-Daten ausgefüllt. Ich machte Fortschritte.

Ich beschloss dann, mir die Timeline-DBs der 2004- und 1809-Maschinen genauer anzusehen und auf Grundlage der in den vorherigen Beiträgen erläuterten Techniken zu untersuchen.

Folgende Schritte nahm ich vor:

Anlegen eines neuen Falls in Cellebrite BlackLight

Hinzufügen der VMDKs von jeder der VMs zum Fall

Sicherstellen, dass „Actionable Intel“-Verarbeitung ausgewählt wurde (dies ist standardmäßig der Fall)

Untersuchung des Abschnitts “Actionable Intel → Program Execution → Activities Cache”.

Als ich zurückging und mir die Zeitstempel in meinen Notepad-Dateien aus den Abbildungen 6 und 7 oben ansah, stellte ich fest, dass meine Startzeit für das Kopieren/Einfügen am 30. Juni 2020 um 18:50 Uhr war. Dann sortierte ich nach Startzeit und bemerkte sofort, dass es viele doppelte „Guid-Id“-Einträge in Abbildung 8 unten gab (z. B. sind „AF42“ in den Zeilen eins und drei sowie „F2FE“in Zeile zwei und vier identisch).

Aus den letzten Posts wissen wir, dass diese als eindeutige Identifikatoren für Aktivitäten gedacht sind – und auch, dass wir hier Duplikate sehen, weil die Aktivitäten auf beiden Rechnern synchronisiert wurden, da ich auf beiden das gleiche MS-Konto verwendet habe.

Abb. 8

Die doppelten Daten können manchmal nützlich sein, aber manchmal erschweren sie Dinge auch. Dieses Mal schien Letzteres zuzutreffen. Daher sah ich mir zuerst den Aktivity-Cache des 2004-Rechners an, indem ich nur den 2004-Rechner Win10 im Abschnitt „Evidence“ der „Component List“ auswählte. Dadurch wurden die doppelten Einträge eliminiert, wie wir in Abbildung 9 unten sehen können.

Abb. 9

Nach dem Sortieren nach Startzeit sehen wir (Abbildung 10 unten) 6-7 Einträge, die angesichts des Zeitrahmens, in dem ich das Kopieren und Einfügen durchgeführt habe, relevant sein könnten. Die Spalte „App Id“ sagt uns, dass alle Einträge bis auf einen mit Notepad in Verbindung stehen. (Nebenbemerkung: Ich habe auch den Ansichtsfilter von Cellebrite BlackLight verwendet, um einige andere, nicht verwandte Aktivitäten zu entfernen)

Abb. 10

Wenn wir nach rechts scrollen (siehe Abbildung 11 unten), können wir sehen, dass diese Aktivitäten auf zwei verschiedenen Rechnern auf der Grundlage der zwei verschiedenen Plattform-Geräte-IDs, die aufgelistet sind, ihren Ursprung haben. Mit der Technik, die wir in unserem vorherigen Beitrag beschrieben haben, erinnern Sie sich vielleicht daran, dass wir feststellen können, dass die yugS…-Einträge von der 1809-Maschine und die mWKk…-Einträge von der 2004-Maschine stammen.

Anschließend konzentrierte ich mich nur auf die Einträge von der 1809-Maschine, und wie wir in Abbildung 11 unten sehen können, gibt es einen Aktivitätstyp 5 zum Öffnen von Notepad und einen Aktivitätstyp 6 für den Umgang mit der App. (Die Aktivitätstypen 5 und 6 scheinen in umgekehrter Reihenfolge zu sein, aber bei der Untersuchung der Startzeit haben beide zur gleichen Sekunde begonnen, sodass sie in willkürlicher Reihenfolge aufgeführt sind) Wir können sehen, dass die Datei „Notepad“ für den Zugriff in der Spalte „App Activity Id column: morecopypasta.txt file“ verwendet wurde. An dieser Stelle haben wir den Text in Abbildung 7 oben eingefügt.

Abb. 11

Wenn wir uns nun auf die Einträge konzentrieren, die von der 2004-Maschine stammen, sehen wir in Abbildung 11 oben vier relevante Zeilen. Zwei davon sind Aktivitätstyp 6, was bedeutet, dass der Benutzer mit der Notepad-App beschäftigt war. Die Datei, auf die Notepad zugegriffen hat, können wir im Feld „App Activity Id“ sehen: pasted.txt.txt. Dies ist die Datei, aus der ich den Text in Abbildung 6 oben kopiert hatte. Es gibt auch einen Aktivitätstyp 16, der uns mitteilt, dass Notepad für einen Kopier- oder Einfügevorgang verwendet wurde. Und wir können einen Aktivitätstyp 10 sehen, der uns sagt, dass eine Aktivität in der Zwischenablage stattgefunden hat.

Wenn wir uns den Aktivitätstyp 16 (Kopieren/Einfügen) in Abbildung 12 weiter unten genauer ansehen, sagt uns die Gruppen-ID, dass es sich um einen Kopiervorgang handelte. Die Clipboard Payload, wenn sie von base64 dekodiert wird, lautet:

6:52 PM 6/30/2020 Copy on 2004

Lassen Sie uns über die Cloud kopieren/einfügen
Dies entspricht dem Text, den ich oben kopiert habe, wie in Abbildung 6 zu sehen ist.

Abb. 12

Es ist wichtig zu beachten, dass der Aktivitätstyp 10 durch seine App Id, App Activity Id oder ein anderes Feld nicht direkt mit Notepad verbunden ist. Wir können nur daraus schließen, dass der kopierte oder eingefügte Text in Clipboard Payload selbst von/nach Notepad kopiert/eingefügt wurde.
Zwar werden die meisten Daten zwischen Maschinen synchronisiert, aber nicht alle. Werfen wir einen Blick auf den gleichen Zeitrahmen in der Timeline-DB der 1809-Maschine in Abbildung 13 unten.

Abb. 13

Er sieht der 2004-DB ziemlich ähnlich, aber wenn wir ein wenig darüber scrollen (siehe Abbildung 14 unten), sehen wir, dass ein Eintrag fehlt.

Abb. 14

Es gibt keinen Aktivitätstyp 16, der in der Zeitachse der 1809-DB angezeigt wird. Wir hätten vielleicht einen Aktivitätstyp 16 mit einer Gruppen-Id von „Paste“ erwartet, um dem anderen Aktivitätstyp 16 mit einer Gruppen-Id von „Copy“ zu entsprechen. Ich jedenfalls hätte das erwartet – und mit einer anderen Timeline-Version wäre es vielleicht auch so gewesen. Nicht aber so jetzt. Erinnern Sie sich, wie wir sagten, die Timeline sei schnelllebig? Da wir nun ein gewisses Verständnis dafür haben, wie all dies in der Timeline-DB aussieht, lassen Sie uns zu unserem ursprünglichen Fragenkatalog im Abschnitt „Problem“ oben zurückkehren.

Ergebnisse

Nach Durchsicht der obigen Ausführungen (und Durchführung einiger zusätzlicher Stichproben, die speziell auf die Beantwortung unserer Fragen ausgerichtet waren), kamen wir zu folgenden Schlussfolgerungen:

Wie kamen die Clipboard Payload-Daten dorthin?

Im obigen Experiment kopierten wir Daten auf der 2004-Maschine und fügten sie auf der 1809-Maschine ein. Dies führte dazu, dass Clipboard Payload mit der base64-kodierten Version des kopierten Textes ausgefüllt wurde. Weitere Tests zeigten jedoch, dass zum Ausfüllen der Daten nur erforderlich ist, den Text zu kopieren. Ein Einfügen war nicht erforderlich.

Wie lange bleiben sie bestehen?

Wenn wir uns die Timeline-Datenbank in Abbildung 15 unten ansehen, können wir sehen, dass jede Aktivität eine Start Time und eine Expiration Time hat. Wenn wir uns den Unterschied zwischen ihnen ansehen, sind es immer genau 12 Stunden. Und wir wissen, dass Aktivitäten bei Ablauf aus der DB gelöscht werden. Zusammengenommen bedeutet dies, dass der kopierte Text 12 Stunden lang in der DB verbleibt und dann gelöscht wird.

Abb. 15

Werden die Daten der Zwischenablage an einem anderen Ort gespeichert?

Nachdem ich die Timeline-DB für die 2004-Maschine durchsucht hatte, fand ich keine weiteren Orte, an denen die Daten der Zwischenablage gespeichert waren. Da ich jedoch wusste, dass sich verschiedene Windows-Versionen unterschiedlich verhalten, schaute ich mir den 1809-Rechner an und stellte fest, dass für Aktivitätstyp 10 das Feld „Payload“ eine Kopie der Clipboard Payload-Daten enthielt.

Werfen Sie einen Blick auf Abbildung 16 unten von der 1809-Maschine, wo der Payload-Inhalt im rechten unteren Teilfenster mit der Clipboard Payload übereinstimmte.

Abb. 16

In Abbildung 17 unten aus der 2004-Maschine ist das Feld „Payload“ jedoch leer.

Abb. 17

Es gibt auch einige Hinweise darauf, dass Daten aus der Zwischenablage außerhalb der Timeline gespeichert sein könnten, aber das geht über den Rahmen der heutigen Analyse hinaus.

Wird nur Text gespeichert?

Wenn wir uns die Payload in Abbildung 16 oben ansehen, sehen wir, dass der Formatname „text“ ist. Dies impliziert, dass möglicherweise Nicht-Text-Daten in den Payload- und daher Clipboard Payload-Feldern gespeichert sind. Es gibt sogar mehrere Quellen (siehe Verweis unten), die besagen, dass die Cloud-Zwischenablage Text und Bilder verarbeitet. Leider ist es mir trotz mehrerer Versuche nicht gelungen, ein Bild über die Clipboard-Cloud-Synchronisierung oder in der Timeline-DB zu synchronisieren. Vielleicht funktioniert diese Funktion in der Zukunft, vielleicht braucht es eine bestimmte Konfiguration – oder ich habe einfach etwas nicht richtig gemacht.

Wie Sie sehen können, kann das Eintauchen in die Timeline alle möglichen Informationen zu Tage fördern, an die Sie vielleicht gar nicht gedacht hatten. Mit Cellebrite BlackLight und Cellebrite MacQuisition helfen wir Ihnen, all diese neuen Informationen viel einfacher zu finden, unabhängig davon, ob es sich um ein Windows- oder ein Mac-basiertes Gerät handelt.

Wir hoffen, Sie konnten von dieser Blog-Serie profitieren. Hier erfahren Sie noch mehr darüber, wie Cellebrite BlackLight und Cellebrite MacQuisition (zur Analyse von Mac-Geräten) Sie bei Ihren Ermittlungen unterstützen.

Quellennachweis

Hier noch die Quellennachweise für alle, die tiefer in die Arbeit mit der Timeline einsteigen möchten.

Forensische Analyse der Timeline, des Verlaufs der Zwischenablage und mehr
*** Sehen Sie sich hier unbedingt alle Informationen und Tools von Costas Katsavounidis an:

[1] Costas: https://github.com/kacos2000/WindowsTimeline

Forensische Analyse des Verlaufs der Zwischenablage

[2] https://thinkdfir.com/2018/10/14/clippy-history/

Allgemeine Informationen zur Zwischenablage

[3] https://www.howtogeek.com/351978/using-windows-10s-new-clipboard-history-and-cloud-sync/

[4] https://community.windows.com/en-us/stories/cloud-clipboard-windows-10

[5] https://www.bleepingcomputer.com/news/microsoft/microsoft-introduces-a-redesigned-windows-clipboard-experience/

Videos von MS

[6] https://channel9.msdn.com/events/Build/2017/B8108

[7] https://channel9.msdn.com/Events/Windows/Windows-Developer-Day-Fall-Creators-Update/WinDev011

[8] https://channel9.msdn.com/Events/Connect/2017/B111

Beschreibung einiger Datenbankfelder zur Timeline

[9] https://docs.microsoft.com/en-us/uwp/api/windows.applicationmodel.useractivities.useractivity?view=winrt-19041

Die Entwickler-Perspektive

Aktivität

[10] https://docs.microsoft.com/en-us/graph/api/resources/projectrome-activity?view=graph-rest-1.0

Verlaufselement

[11] https://docs.microsoft.com/en-us/graph/api/resources/projectrome-historyitem?view=graph-rest-1.0

[12] https://docs.microsoft.com/en-us/windows/uwp/launch-resume/useractivities

Projekt „Rome“

[13] https://github.com/Microsoft/project-rome

Grafik-API

[14] https://developer.microsoft.com/en-us/graph

BBT-Webinare und Blog-Posts

https://cellebrite.com/en/webinars/windows-10-activity-timeline-an-investigators-gold-mine/

Entdecken Sie, wie unsere Digital-Intelligence-Lösungen helfen, Fälle noch schneller zu lösen.

Diesen Beitrag teilen