[FEATURE] Added argument sym to commandline

This commit is contained in:
hasherezade
2026-05-24 10:52:45 -08:00
parent f1dc39d419
commit 136d38e2d9
4 changed files with 16 additions and 11 deletions
+9
View File
@@ -19,6 +19,7 @@ using namespace pesieve;
#define PARAM_MODULES_IGNORE "mignore"
#define PARAM_REFLECTION "refl"
#define PARAM_DOTNET_POLICY "dnet"
#define PARAM_SYMBOLS "sym"
//dump options:
#define PARAM_IMP_REC "imp"
@@ -164,6 +165,11 @@ public:
std::string(INFO_SPACER) + "This allows i.e. to force-read inaccessible pages."
);
//PARAM_SYMBOLS
this->addParam(new BoolParam(PARAM_SYMBOLS, false));
this->setInfo(PARAM_SYMBOLS,
"Autodownload symbols for scanned modules."
);
//PARAM_IAT
enumParam = new EnumParam(PARAM_IAT, "iat_scan_mode", false);
if (enumParam) {
@@ -225,6 +231,7 @@ public:
this->addGroup(new ParamGroup(str_group));
this->addParamToGroup(PARAM_QUIET, str_group);
this->addParamToGroup(PARAM_REFLECTION, str_group);
this->addParamToGroup(PARAM_SYMBOLS, str_group);
str_group = "3. scan options";
this->addGroup(new ParamGroup(str_group));
@@ -294,6 +301,8 @@ public:
copyCStr<StringParam>(PARAM_DIR, ps.output_dir, _countof(ps.output_dir));
fillStringParam(PARAM_PATTERN, ps.pattern_file);
copyVal<BoolParam>(PARAM_SYMBOLS, ps.download_symbols);
}
void printBanner()
+2 -2
View File
@@ -3,6 +3,6 @@
#define PESIEVE_MAJOR_VERSION 0
#define PESIEVE_MINOR_VERSION 4
#define PESIEVE_MICRO_VERSION 1
#define PESIEVE_PATCH_VERSION 2
#define PESIEVE_PATCH_VERSION 3
#define PESIEVE_VERSION_STR "0.4.1.2"
#define PESIEVE_VERSION_STR "0.4.1.3"
+1 -1
View File
@@ -446,7 +446,7 @@ size_t pesieve::ProcessScanner::scanModulesIATs(ProcessScanReport &pReport) //th
}
const size_t modules_count = hMods.size();
if (!args.quiet) {
std::cout << "Scanning for IAT hooks: " << modules_count << " modules." << std::endl;
std::cout << "Scanning for IAT hooks: " << std::dec << modules_count << " modules." << std::endl;
}
DWORD start_tick = GetTickCount();
+4 -8
View File
@@ -61,16 +61,13 @@ public:
}
const bool isSrv = (_strnicmp(token.c_str(), "srv*", 4) == 0);
if (isSrv)
{
if (allowDownload)
{
if (isSrv) {
if (allowDownload) {
// Keep full srv* entry
if (!result.empty()) result += ";";
result += token;
}
else
{
else {
// Extract cache path: srv*<cache>*<server>
size_t first = token.find('*');
size_t second = token.find('*', first + 1);
@@ -86,8 +83,7 @@ public:
}
}
}
else
{
else {
// Non-srv entries are always safe
if (!result.empty()) result += ";";
result += token;