Skip to content

Commit

Permalink
Added a check for imports related to the process doppelganging techni…
Browse files Browse the repository at this point in the history
…que.
  • Loading branch information
JusticeRage committed Jan 8, 2018
1 parent eebb65a commit c2a1e68
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions plugins/plugin_imports.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@ std::string power_loader = "FindWindow(A|W)|GetWindowLong(A|W)";

std::string atom_bombing = "GlobalAddAtom(A|W)|GlobalGetAtomName(A|W)|QueueUserAPC";

std::string process_doppelganging = "CreateTransaction|CreateFileTransacted|RollbackTransaction|WriteFile";

std::string keylogger_api = "SetWindowsHook(Ex)?|GetAsyncKeyState|GetForegroundWindow|AttachThreadInput|CallNextHook(Ex)?|MapVirtualKey";

std::string raw_socket_api = "accept|bind|connect|recv|send|gethost(by)?name|inet_addr";
Expand Down Expand Up @@ -218,6 +220,7 @@ class ImportsPlugin : public IPlugin
check_functions(pe, process_hollowing, MALICIOUS, "Code injection capabilities (process hollowing)", AT_LEAST_THREE, res);
check_functions(pe, power_loader, MALICIOUS, "Code injection capabilities (PowerLoader)", AT_LEAST_TWO, res);
check_functions(pe, atom_bombing, MALICIOUS, "Code injection capabilities (atom bombing)", AT_LEAST_THREE, res);
check_functions(pe, process_doppelganging, MALICIOUS, "Code injection capabilities (process doppelganging)", AT_LEAST_THREE, res);
check_functions(pe, "", NO_OPINION, "Can access the registry", AT_LEAST_ONE, res);
check_functions(pe, process_creation_api, NO_OPINION, "Possibly launches other programs", AT_LEAST_ONE, res);
check_functions(pe, "(Nt|Zw).*", SUSPICIOUS, "Uses Windows' Native API", AT_LEAST_TWO, res);
Expand Down

0 comments on commit c2a1e68

Please sign in to comment.