Skip to content

appdb.dat: der alte Benachrichtigungsspeicher von Windows

Was appdb.dat ist, welche Windows-Versionen sie nutzen, wie feste Chunks Toasts, Kacheln und Badges speichern und was sich forensisch daraus gewinnen lässt.

Veröffentlicht am 2 Min. Lesezeit

Kurz gesagt. Vor Windows 10 Build 1607 (und unter Windows 8.x) lagen Benachrichtigungen in appdb.dat, einer binären Datei fester Größe, die mit DNPW beginnt und im selben Notifications-Ordner liegt. Sie ist nicht dokumentiert. Das bekannte Layout der Version 3 umfasst 256 Chunks, jeweils mit einer Push-URI, einem Badge, fünf Kacheln und zwanzig Toasts samt FILETIME-Eingangs- und Ablaufzeiten und ihrem XML. Zu welcher App ein Chunk gehört, geht daraus nicht hervor.

Wer sie noch hat

Systeme, die von frühen Windows-10-Builds aktualisiert wurden, behalten mitunter eine appdb.dat neben wpndatabase.db, und Images älterer Rechner enthalten nur appdb.dat. Sichern Sie sie in jedem Fall: Das KAPE-Target WindowsNotificationsDB schließt sie bereits ein.

Aufbau

Yogesh Khatri beschrieb die Datei 2016 (swiftforensics): eine DNPW-Signatur, ein Header mit Zeitstempel und der nächsten Benachrichtigungs-ID, dann feste Chunks mit Push-URI, Badge-XML und Kacheldaten. Das Projekt Dissect veröffentlicht eine vollständige Strukturdefinition für Version 3, der der Parser dieser Website folgt:

TeilInhalt
Chunk-Header (nur im ersten Chunk)DNPW, Version, Zeitstempel, nächste Benachrichtigungs-ID
Chunk-InfoIn-Use-Flag und Schreibindizes
Push-DeskriptorZwei FILETIME-Werte und die WNS-Push-URI
BadgeID, Zeitstempel, Badge-XML
5 Kachel-Deskriptoren + XML-SlotsID, Ablauf- und Eingangs-FILETIME, Name, XML-Länge
20 Toast-Deskriptoren + XML-SlotsID, Ablauf- und Eingangs-FILETIME, zwei Namen, XML-Länge

Jeder Chunk ist 0x23810 Byte groß und die Datei enthält 256 davon, sodass eine vollständige appdb.dat unabhängig vom Inhalt etwas über 37 MB groß ist.

Was Sie erhalten

Für jeden belegten Chunk: die Push-URI, den Badge-Wert sowie jede Kachel und jeden Toast mit Eingangs- und Ablaufzeit (FILETIME, UTC), einer ID, den im Deskriptor gespeicherten Namen und dem XML — demselben Toast-Schema wie in wpndatabase.db, sodass sich Textzeilen, Startargumente und Aktionen genauso lesen lassen.

Was Sie nicht erhalten

  • Die App. Der Chunk nennt seine App nicht. Korrelieren Sie Push-URI, Namen und Inhalt mit anderen Artefakten.
  • Gewissheit. Das Layout stammt aus Reverse Engineering. Version 1 (Windows 8) weicht ab und wird gemeldet, aber nicht geparst.
  • Gelöschte Einträge, abgesehen von dem, was in ungenutzten Slots verbleibt: Es gibt keinen freien SQLite-Speicher zum Carving.

Der Windows Notification Parser liest Version 3 und kennzeichnet jedes Ergebnis daraus als Best Effort. Für aktuelle Systeme siehe den Leitfaden zu wpndatabase.db.

Verwandte Artikel

Feldreferenz zur Windows-Benachrichtigungsdatenbank: Notification, NotificationHandler, HandlerAssets, WNSPushChannel, FILETIME-Zeiten und Toast-XML.

Fiktiver Fall: was die Benachrichtigungsdatenbank eines Benutzers zur Zeitlinie eines Einbruchs beiträgt — Download, Virenwarnung, neue App, gelöschter Chat.

Schritt für Schritt: Benachrichtigungsdatenbank samt -wal im Browser auswerten, Befunde sichten, gelöschte Toasts wiederherstellen, als CSV/JSON exportieren.