
Возможности нового инструмента можно сравнить с комбинацией из хостовой системы обнаружения вторжений OSSEC (HIDS), сетевой системы обнаружения атак Snort (NIDS) и отладочной утилиты strace. Основу Falco составляет модуль ядра Linux, который отслеживает системные вызовы и другие события уровня операционной системы, и процесс-демон, осуществляющий фильтрацию аномалий.
Применяемая в Falco модель контроля штатного поведения приложений полностью нацелена на выявление проблемы через фиксацию действия атакующего, уже после того как вредонос получил доступ к системе. Любая нештатная активность определяется как набор правил, которые позволяют отфильтровывать события, требующие протоколирования и отправки уведомления. Сами правила содержат огромный спектр активности в системе, включая запуск процессов, доступ к файлам, логи и сетевую активность.
К примеру, как аномалии могут восприниматься такие события, как запуск bash в контейнере, установка исходящего сетевого соединения на не связанный с сервисом номер порта, изменение в директориях с исполняемыми файлами (/usr/bin и т.п.), создание не связанных с устройствами файлов в /dev (активность руткита), доступ к устройствам и важным системным файлам (например, web-камера и /etc/shadow) из не добавленных в белый список приложений, выполнение сетевых соединений из локальных утилит (например, ls).
Несмотря на первый выпуск кодовая база оценивается как достаточно стабильная, так как работающий на уровне ядра модуль сбора данных о системных вызовах заимствован из уже хорошо протестированного инструмента для анализа работы системы и диагностирования проблем Sysdig. В процессе отладки и написания правил поддерживается чтение дампов трассировки sysdig, позволяющих симулировать наступление определённого события.