Autopsy
4.19.1
Graphical digital forensics platform for The Sleuth Kit and other tools.
|
Inherits org.sleuthkit.autopsy.ingest.FileIngestModule.
Classes | |
class | IngestJobTotals |
Public Member Functions | |
ProcessResult | process (AbstractFile file) |
void | shutDown () |
void | startUp (IngestJobContext context) throws IngestModuleException |
Static Public Member Functions | |
static boolean | isMimeTypeDetectable (String mimeType) |
Private Member Functions | |
void | createInterestingFileHit (AbstractFile file, FileType fileType) |
FileType | detectUserDefinedFileType (AbstractFile file) throws CustomFileTypesManager.CustomFileTypesException |
FileType | detectUserDefinedFileType (AbstractFile file, byte[] startOfFileBuffer, int bufLen) throws CustomFileTypesManager.CustomFileTypesException |
Static Private Member Functions | |
static synchronized void | addToTotals (long jobId, long matchTimeInc) |
Private Attributes | |
FileTypeDetector | fileTypeDetector |
long | jobId |
Static Private Attributes | |
static final Logger | logger = Logger.getLogger(FileTypeIdIngestModule.class.getName()) |
static final IngestModuleReferenceCounter | refCounter = new IngestModuleReferenceCounter() |
static final HashMap< Long, IngestJobTotals > | totalsForIngestJobs = new HashMap<>() |
Detects the type of a file based on signature (magic) values. Posts results to the blackboard.
Definition at line 51 of file FileTypeIdIngestModule.java.
|
staticprivate |
Update the match time total and increment number of files processed for this ingest job.
jobId | The ingest job identifier. |
matchTimeInc | Amount of time to add. |
Definition at line 259 of file FileTypeIdIngestModule.java.
|
private |
Create an Interesting File hit using the specified file type rule.
file | The file from which to generate an artifact. |
fileType | The file type rule for categorizing the hit. |
Definition at line 183 of file FileTypeIdIngestModule.java.
References org.sleuthkit.autopsy.casemodule.Case.getCurrentCaseThrows(), org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdModuleFactory.getModuleName(), and org.sleuthkit.autopsy.casemodule.Case.getSleuthkitCase().
|
private |
Determines whether or not a file matches a user-defined custom file type.
file | The file to test. |
CustomFileTypesException | If there is an issue getting an instance of CustomFileTypesManager. |
Definition at line 130 of file FileTypeIdIngestModule.java.
|
private |
Determines whether or not a file matches a user-defined custom file type.
file | The file to test. |
startOfFileBuffer | The beginning of the file data. |
bufLen | The length of startOfFileBuffer. |
CustomFileTypesException | If there is an issue getting an instance of CustomFileTypesManager. |
Definition at line 162 of file FileTypeIdIngestModule.java.
|
static |
Validate if a given mime type is in the detector's registry.
mimeType | Full string of mime type, e.g. "text/html" |
Definition at line 70 of file FileTypeIdIngestModule.java.
References org.sleuthkit.autopsy.modules.filetypeid.FileTypeDetector.isDetectable().
ProcessResult org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdIngestModule.process | ( | AbstractFile | file | ) |
Processes a file. Called between calls to startUp() and shutDown(). Will be called for each file in a data source.
IMPORTANT: In addition to returning ProcessResult.OK or ProcessResult.ERROR, modules should log all errors using methods provided by the org.sleuthkit.autopsy.coreutils.Logger class. Log messages should include the name and object ID of the data being processed. If an exception has been caught by the module, the exception should be sent to the Logger along with the log message so that a stack trace will appear in the application log.
file | The file to analyze. |
Attempt to detect the file type. Do it within an exception firewall, so that any issues with reading file content or complaints from tika do not take the module down.
Implements org.sleuthkit.autopsy.ingest.FileIngestModule.
Definition at line 98 of file FileTypeIdIngestModule.java.
References org.sleuthkit.autopsy.ingest.IngestModule.ProcessResult.ERROR, org.sleuthkit.autopsy.modules.filetypeid.FileTypeDetector.getMIMEType(), and org.sleuthkit.autopsy.ingest.IngestModule.ProcessResult.OK.
void org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdIngestModule.shutDown | ( | ) |
Invoked by Autopsy when an ingest job is completed (either because the data has been analyzed or because the job was cancelled), before the ingest module instance is discarded. The module should respond by doing things like releasing private resources, submitting final results, and posting a final ingest message.
IMPORTANT: If the module instances must share resources, the modules are responsible for synchronizing access to the shared resources and doing reference counting as required to release those resources correctly. Also, more than one ingest job may be in progress at any given time. This must also be taken into consideration when sharing resources between module instances. See IngestModuleReferenceCounter.
If this is the instance of this module for this ingest job, post a summary message to the ingest messages box.
Implements org.sleuthkit.autopsy.ingest.IngestModule.
Definition at line 223 of file FileTypeIdIngestModule.java.
References org.sleuthkit.autopsy.ingest.IngestMessage.createMessage(), org.sleuthkit.autopsy.ingest.IngestModuleReferenceCounter.decrementAndGet(), org.sleuthkit.autopsy.ingest.IngestServices.getInstance(), org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdModuleFactory.getModuleName(), org.sleuthkit.autopsy.ingest.IngestMessage.MessageType.INFO, and org.sleuthkit.autopsy.ingest.IngestServices.postMessage().
void org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdIngestModule.startUp | ( | IngestJobContext | context | ) | throws IngestModuleException |
Invoked by Autopsy to allow an ingest module instance to set up any internal data structures and acquire any private resources it will need during an ingest job. If the module depends on loading any resources, it should do so in this method so that it can throw an exception in the case of an error and alert the user. Exceptions that are thrown from startUp() are logged and stop processing of the data source.
IMPORTANT: If the module instances must share resources, the modules are responsible for synchronizing access to the shared resources and doing reference counting as required to release those resources correctly. Also, more than one ingest job may be in progress at any given time. This must also be taken into consideration when sharing resources between module instances. See IngestModuleReferenceCounter.
context | Provides data and services specific to the ingest job and the ingest pipeline of which the module is a part. |
Implements org.sleuthkit.autopsy.ingest.IngestModule.
Definition at line 87 of file FileTypeIdIngestModule.java.
References org.sleuthkit.autopsy.ingest.IngestModuleReferenceCounter.incrementAndGet().
|
private |
Definition at line 58 of file FileTypeIdIngestModule.java.
|
private |
Definition at line 57 of file FileTypeIdIngestModule.java.
|
staticprivate |
Definition at line 53 of file FileTypeIdIngestModule.java.
|
staticprivate |
Definition at line 55 of file FileTypeIdIngestModule.java.
|
staticprivate |
Definition at line 54 of file FileTypeIdIngestModule.java.
Copyright © 2012-2021 Basis Technology. Generated on: Thu Sep 30 2021
This work is licensed under a
Creative Commons Attribution-Share Alike 3.0 United States License.