Hyperionix packages are modules written on modified and improved version of LuaJIT 2.1.0-beta3. These modules are loaded by Hyperionix Agent and used for getting information from the target system, changing its behaviour, monitoring its activity and generating events.
Packages could be one of the following types:
- Lib - a helper library package;
- Hook - describe a physical hook location;
- Probe - describe a logic built on top of one or multiple hooks;
- ESM (Entity State Machine) - describe a package with asynchronous post processing of all or certain events, used for filtering events, combining multiple events into bigger one etc;
- Scheduled probe - describe a callback which is executed within a given period, used for periodic collecting of system information.
In addition packages are executed by different engines:
sensor- engine inside all processes in the target system. Every process has its own instances of packages which aren’t linked with others. In this engine hook and probe packages are executed.
service- engine inside Hyperionix Service. Typically used for ESM and Scheduled Probes execution.