Appearance
Full Example Configuration
Copy and paste this as your default initial configuration file.
Secure the Configuration
Remember to always secure the configuration file.
bash
sudo chmod 600 /etc/jibril/config.yaml
sudo chown root:root /etc/jibril/config.yamlIt contains information such as the API token or LLM API keys.
Complete Configuration
yaml
#### jibril standalone config file.
run_time:
log-level: info # debug, info, warn, error, fatal, panic, none, quiet, trace
health: true # enable health check endpoint (:6060/health)
cardinal: true # enable cardinal filters (skips some well known os resources)
stdout: stdout # stdout file (stdout, stderr, or a file path)
stderr: stderr # stderr file (stdout, stderr, or a file path)
# api:
# # Register and get a token at https://dashboard.garnet.ai/.
# token: your-token-here
#### cadences.
# cadences are the intervals at which patterns are detected.
# https://jibril.garnet.ai/config/cadences/
cadences:
file-access: 9
network-peers: 9
network-flows: 9
#### caches.
# caches are both the kernel maps and the in-memory caches for os resources.
# https://jibril.garnet.ai/config/caches/
caches:
rec-tasks: 32
tasks: 64
cmds: 32
files: 32
dirs: 16
bases: 32
task-file: 32
file-task: 32
task-ref: 32
flows: 32
task-flow: 32
flow-task: 32
flow-ref: 32
#### functionalities.
functionalities:
- jibril # core jibril functionality (required).
#### features.
features:
- hold # hold agent execution until ctrl+c (or SIGINT).
- procfs # enrich running tasks with procfs info at startup.
- detect # enable the detection feature.
- rules # load the built-in detection rules (see below).
- enricher # enrich events with container information.
# - network # report network flows, needed by the flow event.
# - profile # report the behavioural profile, needed by the profile event.
# - transformers # transform events before persisting/printing.
# - attenuator # AI-powered event and noise reduction.
# - policy # enforce network policy using netpolicy.yaml.
feature_options:
# related feature must be enabled
policy:
file: /etc/jibril/netpolicy.yaml
transformers:
scoring: false
# attenuator:
# enabled: true
# url: https://api.openai.com/v1/chat/completions
# port: 443
# model: gpt-5
# temp: 1
# mode: reason
rules:
# enable all built-in detection rules.
builtin:
enabled: true
#### events.
events:
types:
# informational events about network policy applied.
# - dropip
# informational events about network flows.
# - flow
# informational event about behavioral profiling.
# - profile
# detection recipes for file access patterns.
# - file_example
- auth_logs_tamper
- binary_self_deletion
- capabilities_modification
- code_modification_through_procfs
- core_pattern_access
# - cpu_fingerprint
- credentials_files_access
- crypto_miner_files
- environ_read_from_procfs
# - filesystem_fingerprint
- global_shlib_modification
# - java_debug_lib_load
# - java_instrument_lib_load
# - machine_fingerprint
# - os_fingerprint
# - os_network_fingerprint
# - os_status_fingerprint
# - package_repo_config_modification
- pam_config_modification
# - sched_debug_access
- shell_config_modification
# - ssl_certificate_access
- sudoers_modification
# - sysrq_access
- unprivileged_bpf_config_access
# detection recipes for execution patterns.
# - exec_example
# - binary_executed_by_loader
- code_on_the_fly
- credentials_text_lookup
- crypto_miner_execution
- data_encoder_exec
- denial_of_service_tools
- exec_from_unusual_dir
# - file_attribute_change
- hidden_elf_exec
- interpreter_shell_spawn
- net_filecopy_tool_exec
- net_mitm_tool_exec
- net_scan_tool_exec
- net_sniff_tool_exec
- net_suspicious_tool_exec
# - passwd_usage
- runc_suspicious_exec
# - webserver_exec
- webserver_shell_exec
# where events are written. a name per output, so several of the same type
# can coexist. only restricts an output to some event types.
outputs:
- name: console
type: stdout
format: json
- name: audit
type: file
path: /var/log/jibril.out
format: jsonl
# - name: profile_summary
# type: file
# path: /var/log/jibril.profile.md
# format: markdown
# only: [profile]