Loads a module from the disk, corresponding to the module in the scanned process' memory.
A base class of all the reports detailing on the output of the performed module's scan.
The report aggregating the results of the performed scan.
The root scanner, responsible for enumerating all the elements to be scanned within a given process,...
size_t scanWorkingSet(ProcessScanReport &pReport)
size_t scanModules(ProcessScanReport &pReport)
size_t scanThreads(ProcessScanReport &pReport)
ProcessScanner(HANDLE procHndl, bool is_reflection, pesieve::t_params _args)
static t_scan_status scanForHooks(HANDLE hProcess, ModuleData &modData, RemoteModuleData &remoteModData, ProcessScanReport &process_report, bool scan_data, bool scan_inaccessible)
size_t scanModulesIATs(ProcessScanReport &pReport)
static t_scan_status scanForHollows(HANDLE hProcess, ModuleData &modData, RemoteModuleData &remoteModData, ProcessScanReport &process_report)
bool resolveHooksTargets(ProcessScanReport &process_report)
bool filterDotNetReport(ProcessScanReport &process_report)
ModuleScanReport * scanForMappingMismatch(ModuleData &modData, ProcessScanReport &process_report)
ProcessSymbolsManager symbols
static t_scan_status scanForIATHooks(HANDLE hProcess, ModuleData &modData, RemoteModuleData &remoteModData, ProcessScanReport &process_report, t_iat_scan_mode filter)
ProcessScanReport * scanRemote()
The main function of ProcessScanner, deploying the scan. Throws exceptions in case of a failure.
std::set< std::string > ignoredModules
Buffers the data from the module loaded in the scanned process into the local memory.
enum pesieve::module_scan_status t_scan_status