windows

Was sind diese erweiterten Attribute (EAs)in den Dateien in Windows 8

Wenn ich CheckDisk auf einem Windows 8 Consumer Preview-Volume ausführe,erhalte ich eine Meldung:

> chkdsk /v S:
The type of the file system is NTFS.
Volume label is Windows 8.

WARNING!  F parameter not specified.
Running CHKDSK in read-only mode.

CHKDSK is verifying files (stage 1 of 3)...
  91392 file records processed.
File verification completed.
  28 large file records processed.
  0 bad file records processed.
  20224 EA records processed.                 <------------------ huh??

Warum gibt es so viele erweiterte Attribute für das Volumen? Ich dachte,niemand benutzt mehr EAs...


Edit:

Beispielsweise hat die Datei \Windows\CSC\v2.0.6 ein erweitertes Attribut, das die Zeichenfolge enthält

Ԡ 1X C8A05BC0-3FA8-49E9-8148-61EE14A67687.CSC.DATABASE P X Չ: Չ: ˌΦ]cᑡPcďŠ 4 C8A05BC0-3FA8-49E9-8148-61EE14A67687.CSC.DATABASEEX1 P X _, N0t 08 C8A05BC0-3FA8-49E9-8148-61EE14A67687.CSC.EPOCHEA 8 ͌Φ]cᑡPcďŠ }

was (dank einer Antwort weiter unten)mit der clientseitigen Zwischenspeicherung von Offlinedateien zu tun zu haben scheint.

Es scheint jedoch,dass die meisten anderen EAs anders sind-z.B.die Datei

\Program Files\WindowsApps  
    \Microsoft.BingFinance_1.0.1022.0_x64__8wekyb3d8bbwe\pages\ETF\js\ETF.js

und die meisten anderen Dateien enthalten (meistens) die Zeichenfolge $KERNEL.PURGE.APPXFICACHE , die anscheinend nicht verwandt ist. Wofür könnte das sein?


Basierend auf dem EA-Namen „CSC.DATABASE“ könnte man vermuten, dass es sich um clientseitiges Caching handelt . Das würde auch erklären, warum es so viele davon gibt, da jede zwischengespeicherte Datei sie wahrscheinlich hat, um sie mit dem Server zu identifizieren.

Außerdem glaube ich nicht,dass EAs überhaupt besonders selten verwendet werden.Ich weiß mit Sicherheit,dass sie z.B.vom IE verwendet werden,um eine Datei als "aus dem Web heruntergeladen" zu identifizieren (was den Windows Explorer dazu veranlasst,vor dem Ausführen der Datei nachzufragen und dergleichen).




Erweiterte Attribute werden in Windows verwendet,auch vom Kernel,der sie zur Verfolgung verschiedener Sicherheitseinschränkungen und zu deren Durchsetzung nutzt.

See https://docs.microsoft.com/en-us/windows-hardware/drivers/ifs/kernel-extended-attributes

Insbesondere das USN-Journal von NTFS wird in der Lage sein,Änderungen an Dateien sicher zu verfolgen,so dass Dateisystem-Snapshots oder die Wiederherstellung des Dateisystems nach einem unerwarteten brutalen Shutdown (verursacht durch Stromausfall,Überhitzung oder BSOD und Neustarts)zuverlässig sind.Es handelt sich um kurze,gesicherte Datensätze,die in kleinen EA-Streams hinzugefügt werden (in der Regel werden sie selbst innerhalb des MFT-Datensatzes gespeichert,ohne dass ein zusätzlicher Extent zugewiesen wird,es sei denn,der MFT-Datensatz ist zu klein,um alle Streams aufzunehmen;in diesem Fall werden sie in separate NTFS-Extents eingefügt,die für "nicht residente" Attribute zugewiesen werden,die nicht in den MFT-Datensatz fester Größe passen,der im Allgemeinen klein ist und etwa 1 KB beträgt,aber wo einige Dateiattribute IMMER eingefügt werden,einschließlich Basisattribute und das spezielle Attribut,das die Karte der zugewiesenen Extents für Streams enthält,die die Kapazität überschreiten,wie der Standard-"$DATA"-Stream für reguläre Dateiinhalte oder Indizes für Verzeichnisse;welche Datenströme in den MFT-Datensatz passen,hängt von der Größe des MFT-Datensatzes ab,die bei der Formatierung des MFT-Datenträgers angepasst werden kann,aber im Allgemeinen 1KB beträgt,d.h.d.h.kleiner als die Reguler-"Cluster",die für die Zuweisung von Speicherplatz für Extents verwendet werden)

Einige erweiterte Attribute,die vom Kernel verwaltet werden,sind:

  • "$KERNEL.PURGE.ESBCACHE": Offensichtlich wird dies von "Branch Cache" verwendet, um die Bereitstellung und Systemaktualisierungen auf fernverwalteten Hosts zu erleichtern, sodass Domänen ihre eigenen Richtlinien durchsetzen können (anstelle der standardmäßigen lokalen Richtlinien oder standardmäßig definierten Richtlinien von Microsoft unter Windows).

  • "$KERNEL.PURGE.SEC.FILEHASH": Es enthält einen starken Datei-Hash (und den verwendeten Hash-Algorithmus) des Dateiinhalts: Dies ermöglicht die Wiederherstellung des Dateisystems, um eine Beschädigung des Inhalts zu erkennen.

  • „$KERNEL.PURGE.SEC.CODEINTEGRITY“: Dieser kleine EA enthält die Flags der Code-Integritätsrichtlinie

  • "$KERNEL.SMARTLOCKER.ORIGINCLAIM": Es verfolgt sicher die Anwendung, die die Datei erstellt hat (d. h. den Pfad des Installationsprogramms oder des MSI-Pakets mit Referenzsignaturen).

  • "$CI.CATALOGHINT": Dies enthält den Namen einer sicheren *.cat-Datei in Windows-Katalogen für das Paket, das eine Quelle für diese Datei enthält. Tools wie "SFC /SCANNOW" oder "DISM /Online Cleanup-Image ScanHealth" können sie untersuchen und mit Hilfe der vorherigen EAs das Originalpaket mit der Datei, aus der es installiert wurde, sicher identifizieren ( Falls erforderlich, kann Windows Update eine Kopie dieser Pakete finden, herunterladen und neu installieren).

  • Verwechseln Sie die letzten beiden EAs NICHT mit dem "Zone.Identifier",den der IE (oder andere Webbrowser für Windows)zu Dateien hinzufügt,die Sie aus dem Internet herunterladen,oder den Unarchiver zu Dateien hinzufügen,die Sie aus einer heruntergeladenen ZIP-oder Cabinet-Datei (oder anderen Archivformaten)extrahieren,indem sie ihn aus dem "Zone-Identifier" der Archiv-/Cabinet-Datei selbst kopieren:Dies sind keine EAs,sie werden als "Alternate Data Streams" (ADS)gespeichert,die Attribute des Typs "$DATA" sind (wie der reguläre Inhalt der Datei,nur dass dieser $DATA einen nicht leeren Namen hat,während der reguläre Inhalt der Datei einen leeren Namen hat);außerdem existieren diese ADS nur,wenn sie in NTFS oder kompatiblen Dateisystemen gespeichert sind,und sie werden NICHT vom Kernel,sondern von der Benutzeroberfläche (hauptsächlich im Datei-Explorer)geprüft und nicht immer erhalten,wenn sie an einen anderen Ort kopiert werden (z.z.B.beim Verschieben solcher markierten Dateien in eine ZIP-Datei).Diese ADS sind sehr schwach,sie sind nicht so stark wie EAs oder andere Signatursysteme (wie externe sichere Kataloge oder Authenticode-Signaturen innerhalb von ausführbaren Dateien oder einige Medienformate,die ähnliche Signaturen innerhalb des regulären Dateiinhalts erlauben;um das System zu sichern,benötigt und verwendet der Kernel diese alten ADS nicht,er verwendet Authenticode und sichere Kataloge auf andere Weise,z.B.in der Treiberdatenbank oder in Windows-Katalogen wie WinSxS).Alternative Datenströme sind veraltet,werden aber in Webbrowsern nur noch zu diesem Zweck verwendet,nur als Hinweis für die Benutzer,aber sie widerstehen nicht den grundlegenden Operationen,die Benutzer immer noch tun können,einschließlich der Umgehung der Warnung,die der Explorer ihnen zeigen würde (aber nicht immer,da sie häufig nicht erhalten bleiben).Außerdem müssen Webbrowser diese "Zone.identifier" ADS nicht unbedingt anhängen,wenn die heruntergeladenen Dateien einen stärkeren Signaturmechanismus verwenden oder wenn sie von einem speziellen Dienst im Hintergrund heruntergeladen werden (wie Windows Update selbst,das sicher signierte Kataloge verwendet).

Je nach den von Ihnen verwendeten Tools und Betriebssystemfunktionen oder bei einigen Treibern können Sie weitere EAs definieren.Viele Sicherheitsprogramme und Anti-Malware-Programme fügen ihre eigenen EAs zu verschiedenen Dateien oder Verzeichnissen hinzu (was diesen Programmen ebenfalls hilft,Änderungen effizienter zu überprüfen).

Wenn Sie den Microsoft Store oder AppX-Bereitstellungstools unter Windows verwenden,gibt es auch zusätzliche EAs für die Einstellung der virtuellen Umgebung,in der sie ausgeführt werden sollen (z.B.globale Einstellungen pro Rechner oder pro Domäne oder pro Benutzer oder pro Online-"Identität",je nachdem,welchen Remote-Dienst Sie nutzen oder mit welchem Dritten Sie kommunizieren,Copy-on-Write oder vollständige Vervielfältigung,verzögerte oder synchronisierte Schreibvorgänge,Freigabeoptionen oder -richtlinien,gewährte Lizenzen und Nutzungsrechte,Tracker für Abonnement-/Zahlungsoptionen bei Online-Diensten;einige Anwendungen verwenden sie auch wie Tracking-Cookies auf Webseiten und speichern dann persönliche Kennungen oder Präferenzen,die für bestimmte Dateiinhalte oder Anwendungen spezifisch sind,und können sie mit persönlichen Online-Profilen synchronisieren,so dass Sie diese Anwendungen zumindest für einen bestimmten Zeitraum offline nutzen können...).

Wenn Sie einige Cloud-Dienste nutzen (nicht nur die von Microsoft),können diese auch eine lokale Kopie der Dateien synchronisieren,die Sie am häufigsten lokal verwenden,und gleichzeitig die Möglichkeit bieten,Dateien online zu archivieren oder mit anderen Geräten zu synchronisieren).

Im Allgemeinen sind EAs sehr klein (etwa 100 Byte oder so für die meisten von ihnen).Jeder Datei in NTFS/ReFS (und anderen unterstützten Dateisystemen)können viele EAs für viele verschiedene Anwendungen angehängt sein.Die Art und Weise,wie diese EAs individuell kodiert sind,hängt von der Anwendung ab.EAs haben ihre eigenen Namen (wie reguläre Dateien in sichtbaren Verzeichnissen und wie ADS-Streams),mit dem Unterschied,dass diese Namen nicht von Menschen gelesen werden sollen;daher sind diese Namen "technisch" und verwenden keinen Unicode.Einige EA-Namenspräfixe sind von Microsoft für Windows-Dateisysteme reserviert.

Ob diese EAs in der MFT (von NTFS-oder ReFS-Dateisystemen)resident sind oder nicht,hängt davon ab,wie viele für eine bestimmte Datei vorhanden sind.Wenn sie nicht in den MFT-Datensatz passen,wird NTFS einige Extents zuweisen,um sie an anderer Stelle auf dem Datenträger zu platzieren.Die Liste der EAs,die für eine Datei definiert sind,sind einer ihrer Streams,genau wie die Standardattribute oder Sicherheitsattribute (ACLs)oder der reguläre Inhalt oder zusätzliche Streams (z.B.der Stream,der verfolgt,dass eine Datei aus dem Netz heruntergeladen wurde und möglicherweise unsicher ist,er kann die Web-Domäne oder IP des Ursprungs verfolgen und ob auf diese Domäne mit einem sicheren Protokoll wie HTTPS zugegriffen wurde:Dies ermöglicht Windows die Anzeige von Autorisierungs-Popups für den Benutzer oder die Abfrage der Berechtigung zur Benutzererweiterung;ZIP/CAB-Dateien haben einen solchen Stream,der von Webbrowsern und sicheren Downladern hinzugefügt wird;und Tools zum Extrahieren von ZIP-Dateien verbreiten diesen Stream auch für jede extrahierte Datei,wenn sie ausführbar ist oder Seiteneffekte hat,einschließlich HTML-Dateien,Schriftarten,Javascripts,Mediendateien oder Office-Dokumente,die von Anwendungen,die sie verwenden,standardmäßig im abgesicherten Modus geöffnet werden,und die den Benutzer darauf hinweisen,dass einige eingebettete Komponenten wie Skripte oder Schriftarten unsicher sein können).Und neue Sicherheitssysteme (auch in Windows selbst in seinem Kernel oder in seinen Diensten und Funktionen)fügen ständig neue hinzu.

EAs sind ein Hauptmerkmal von NTFS (und ReFS).Sie existieren auch in anderen Nicht-Windows-Dateisystemen (einschließlich Ext4 unter Linux);für einige Dateisysteme,die keine native Unterstützung für sie haben,können sie in einem separaten Unterverzeichnis oder in Dateien mit speziellen Namen gespeichert werden.EAs werden normalerweise nicht im Verzeichnisinhalt angezeigt (bei Dateisystemen,die sie implementieren)und zählen nicht zu den regulären Dateigrößen,so dass sie leicht hinzugefügt/entfernt werden können,ohne den regulären Inhalt zu verändern;sie erlauben es auch verschiedenen Anwendungen,Diensten oder Betriebssystemen,mit denselben Dateien zu interagieren,indem sie ihre eigenen Metadaten sicher zuordnen.Sie sind also sichere Erweiterungen bestehender Dateisysteme (in den meisten Fällen müssen sich Anwendungen nicht um sie kümmern,das Betriebssystem oder seine Dienste verwalten sie,meist aus Sicherheitsgründen und zur Überprüfung).

EAs sind definitiv nicht veraltet.Tatsächlich werden sie heute viel häufiger verwendet und haben viele Varianten,die durch die vielen entwickelten Sicherheitslösungen entstanden sind (wenn Sie sich Windows 11 ansehen,verwendet es mehr von ihnen;wenn Sie Azure-Dienste nutzen oder einer AD-Domäne beitreten,gibt es zusätzliche EAs,wenn Sie verschiedene Sicherheitstools nutzen,nicht nur die von Microsoft,fügen sie ihre eigenen hinzu,einige Anwendungen nutzen sie auch,um DRM-Rechtetracker auf Ihren gekauften Medien zu speichern,zusammen mit den Entschlüsselungsschlüsseln,falls erforderlich,sowie sicher signierte Zähler von Geräten,auf denen sie autorisiert wurden,Sie müssen sich bei den Diensten anmelden,um diese Signaturen zu aktualisieren oder ein Gerät und seine Autorisierungen zu entfernen;EAs haben viele Verwendungsmöglichkeiten,nicht nur für die Sicherheit,sondern auch für die Optimierung der Leistung,indem sie Verarbeitungshinweise und -spuren oder Statistiken enthalten,die für eine bestimmte Verwendung spezifisch sind;sie können auch verwendet werden,um Backups und Replikationen/Spiegelungen zu verfolgen,besser als das einzelne "ARCHIVE"-Bit;EAs haben ihre eigenen unverwechselbaren Namen und schaffen eine Art "paralleles" Dateisystem,außer dass sie im Allgemeinen optional sind und nur die entsprechenden Dateien oder Verzeichnisse,die sie benötigen,diese EAs erhalten).Das Interesse daran,EAs in der NTFS/ReFS-Kernstruktur zu platzieren,besteht darin,dass ihre Platzierung ideal ist,anstatt einen separaten Speicher an anderer Stelle auf den Datenträgern zu verwenden (dies wäre aufgrund der Zugriffszeit langsamer,insbesondere bei der Arbeit mit Netzwerkdateisystemen oder Festplatten und Plattenarrays):EAs können sehr schnell abgerufen werden,während gleichzeitig grundlegende Dateiattribute geladen werden;außerdem lassen sie sich leichter dynamisch hinzufügen/entfernen)