
Ein Scanner für Dateisystem-Forensik-Analyse und Bedrohungsjagd-Tool. Scannt Dateisysteme auf MFT- und OS-Ebene und speichert Daten in SQL, SQLite oder CSV. Bedrohungen und Daten können mithilfe der Leistungsfähigkeit und Syntax von SQL untersucht werden.

Lassen Sie mich ausführen...
Sie beginnen mit einer Festplatte oder Festplattenabbildern, die potenziell mit Malware, Viren, APTs (Advanced Persistent Threats) oder Ähnlichem verseucht sind, und scannen diese dann mit diesem Tool. (Optional, und vorausgesetzt Sie haben die Weisheit und Weitsicht, dies zu tun, können Sie zuerst (oder später – das spielt keine Rolle) ein bekannt gutes Basis-Festplattenabbild mit diesem Tool scannen. Dies ist sicherlich nicht notwendig, kann aber nur hilfreich sein.) Der forensische Scan-Teil dieses Tools sammelt eine Menge von Eigenschaften über jede Datei in einem Dateisystem (oder einem oder mehreren Abbildern davon) und legt diese Eigenschaften in einer SQL-Relationsdatenbanktabelle ab. Die Geheimzutat besteht darin, Bedrohungen zu jagen, zu untersuchen oder Fragen zu den Daten zu stellen, indem Sie Abfragen in der Sprache SQL gegen die erstellte Datenbank verwenden. Ein Hauptmerkmal war hier, KEINE proprietäre Abfragesprache zu erfinden. Wenn Sie SQL kennen und wissen, wie man auf einen Button klickt, dann wissen Sie bereits, wie Sie dieses Tool wie ein Profi verwenden. Selbst wenn nicht, ist dieses Konzept mächtig genug, dass vorgefertigte Abfragen (siehe unten) Ihnen eine Menge bringen.
Zunächst erstellt das Tool einen Eintrag in der Datenbank für jeden in der MFT (Master File Table – so führt NTFS seine Aufzeichnungen) gefundenen Datensatz. Dies umgeht Dateisicherheitsberechtigungen, Dateiversteck-, Tarn- oder Verschleierungstechniken, Dateilöschung oder Zeitstempelmanipulation. Diese Techniken verhindern nicht, dass die Datei gescanned und katalogisiert wird. Die Bytes der Datei werden aus der MFT gelesen und so viele Datenpunkte wie möglich aus den aus der MFT gelesenen Bytes der Datei extrahiert, bevor versucht wird, auf Datenpunkte über die höherwertigen Betriebssystem-API-Aufrufe zuzugreifen.
Nachdem die MFT- und forensischen Daten gesichert sind, werden die auf Betriebssystemebene verfügbaren Eigenschaften, Daten und Metadaten über jede Datei gesammelt und ergänzen jeden aus dem MFT-Eintrag erstellten Eintrag. Dadurch wird selbst dann, wenn auf die Datei oder ihre Eigenschaften über die Betriebssystem-API oder das .NET-Framework aufgrund von Dateiberechtigungen (ACL), Dateisperren (in Verwendung), Festplattenfehlern, einer Datei mit null Byte Länge oder aus verschiedenen anderen Gründen nicht zugegriffen werden kann, die Existenz der Datei dennoch aufgezeichnet, protokolliert und verfolgt. Der Eintrag enthält jedoch einfach nicht die Informationen, die für das Betriebssystem nicht zugänglich waren. Bis zu 51 verschiedene Datenpunkte können für jede Datei gesammelt werden.

/*
IDEA: All files in the directory C:\Windows\System32\ should be 'owned' by TrustedInstaller.
If a file in the System32 directory is owned by a different user, this indicates an anomaly,
and that user is likely the user that created that file.
Malware likes to masquerade around as valid Windows system files.
Executables that are placed in the System32 directory not only look more official, as it is a common path for
system files, but an explicit path to that executable does not need to be supplied to execute it from the
command line, windows 'Run' dialog box of the start menu, or the win32 API call ShellExecute.
*/
SELECT
TOP 1000 *
FROM [FileProperties]
WHERE
[FileOwner] <> 'TrustedInstaller'
AND [DirectoryLocation] = ':\Windows\System32'
AND IsSigned = 0
ORDER BY [PrevalenceCount] DESC
/*
IDEA: The MFT creation timestamp and the OS creation timestamp should match.
If the MFT creation timestamp occurs after the creation time reported by the OS meta-data,
this indicates an anomaly.
Timestomp is a tool that is part of the Metasploit Framework that allows a user to backdate a file
to an arbitrary time of their choosing. There really isn't a good legitimate reason for doing this
(let me know if you can think of one), and is considered an anti-forensics technique.
*/
SELECT
TOP 1000 *
FROM [FileProperties]
WHERE
([MftTimeAccessed] <> [LastAccessTime]) OR
([MftTimeCreation] <> [CreationTime]) OR
([MftTimeMftModified] <> [LastWriteTime])
ORDER BY [DateSeen] DESC
/*
IDEA: The 'CompileDate' property of any executable or dll should always come before the creation timestamp for that file.
Similar logic applies as for the MFT creation timestamp occuring after the creation timestamp. How could a program have been
compiled AFTER the file that holds it was created? This anomaly indicates backdating or timestomping has occurred.
*/
SELECT
TOP 1000 *
FROM [FileProperties]
WHERE
([MftTimeCreation] < [CompileDate]) OR
([CreationTime] < [CompileDate])
ORDER BY [DateSeen] DESC
| MFTNumber | SequenceNumber | SHA256 | FullPath | Length | FileOwner | Attributes | IsExe | IsDll | IsDriver | BinaryType | IsSigned | IsSignatureValid | IsValidCertChain | IsTrusted | ImpHash | MD5 | SHA1 | CompileDate | MimeType | InternalName | ProductName | OriginalFileName | FileVersion | FileDescription | Copyright | Company | Language | Trademarks | Project | ApplicationName | Comment | Title | Link | ProviderItemID | ComputerName | DriveLetter | DirectoryLocation | Filename | Extension | CertSubject | CertIssuer | CertSerialNumber | CertThumbprint | CertNotBefore | CertNotAfter | PrevalenceCount | Entropy | YaraRulesMatched | DateSeen | MftTimeAccessed | MftTimeCreation | MftTimeModified | MftTimeMftModified | CreationTime | LastAccessTime | LastWriteTime |
|---|
| 18010 | 0 | C67BE7D3F54D44AC264A18E33909482F1F8CA7B7FBAAF5659EF71ED9F8092C34 | C:\Windows\WinSxS\amd64_windows-defender-service-cloudclean_31bf3856ad364e35_6.3.9600.18603_none_73d12e8145b3841b\SymSrv.dll | 149264 | TrustedInstaller | A | 1 | 1 | 0 | 16 | 1 | 1 | 0 | 1 | 5D54F5D721E301667338323AC07578E3 | 65FB3391EB26F5AC647FC40501D8E21D | 4B46DB2A99A47FF6A6EE376F4D79F5298BFF28A2 | 2010-02-01 20:15:48.0000000 | application/x-msdownload | symsrv.dll | Debugging Tools for Windows(R) | symsrv.dll | 6.12.2.633 | Symbol Server | © Microsoft Corporation. All rights reserved. | Microsoft Corporation | English (United States) | L | C | C:\Windows\WinSxS\amd64_windows-defender-service-cloudclean_31bf3856ad364e35_6.3.9600.18603_none_73d12e8145b3841b | SymSrv.dll | .dll | CN=Microsoft Corporation, OU=MOPR, O=Microsoft Corporation, L=Redmond, S=Washington, C=US | CN=Microsoft Code Signing PCA, O=Microsoft Corporation, L=Redmond, S=Washington, C=US | 6105F71E000000000032 | D468FAEB5190BF9DECD9827AF470F799C41A769C | 7/13/2009 5:00:18 PM | 10/13/2010 5:10:18 PM | 1 | 0 | NULL | 2020-10-25 06:17:12.0133333 | 2013-06-18 14:43:52.6497911 | 2013-08-22 06:56:50.9086288 | 2013-08-22 06:56:50.9086288 | 2019-01-15 19:13:49.1704756 | 2013-08-22 06:56:50.9086288 | 2013-08-22 06:56:50.9086288 | 2013-06-18 14:43:52.6497911 |