VBA polls global keyboard state (keylogger)

OLE_VBA_KEYLOGGER_SPYWARE

← All detection heuristics · Office Macros

high OLE_VBA_KEYLOGGER_SPYWARE

What it means

VBA declares/calls a Win32 keystroke-monitoring API (GetAsyncKeyState, SetWindowsHookEx, GetKeyboardState) to capture keystrokes system-wide.

Why it fires

No legitimate document automation polls global key state. These APIs implement a VBA keylogger and are often paired with active-window capture and a log file. The behavior identifies spyware without requiring download or Shell evidence.

Other Office Macros heuristics

OLE_VBA_XOR_DECODED_SHELL OLE_VBA_DOCUMENT_BODY_DROP_EXEC OLE_VBA_SPLIT_KEYWORD_OBFUSCATION OLE_VBA_AUTOEXEC_NORMAL_TEMPLATE_VIRUS OLE_VBA_OBFUSCATED_AUTOEXEC_LOADER OLE_RAW_MACRO_NATIVE_MEMORY_CALLBACK_LOADER OOXML_VBA_CELL_URL_DROPPER OLE_VBA_REACHABLE_HTTP_DROP_EXEC OLE_VBA_HTTP_DROP_EXEC OLE_VBA_HTTP_RESPONSE_COMMAND_EXEC OLE_VBA_CELL_GETOBJECT_EXEC OLE_VBA_XLM_CALL_INJECTION OLE_VBA_NATIVE_MEMORY_CALLBACK_LOADER OLE_VBA_BITSTRANSFER_DROPPER OLE_VBA_USERFORM_CMD_DROPPER OOXML_VBA_DEFINED_NAME_NETWORK_CONSUMED OOXML_VBA_DYNAMIC_CELL_URL_SOURCE OLE_VBA_HOSTS_FILE_HIJACK OOXML_VBA_CELL_IMAGE_SOURCE OLE_VBA_BARE_IPV4_LITERAL