Compliance Reference: NIST CSF & ISO 27001

How Root Lock by HeartSuite maps to NIST Cybersecurity Framework and ISO 27001:2022 Annex A controls.

This document maps Root Lock by HeartSuite capabilities to the NIST Cybersecurity Framework (CSF) and ISO 27001:2022 Annex A controls. It is intended for compliance officers, auditors, and security staff evaluating where HeartSuite contributes to an organisation’s compliance posture and where complementary controls are required.

HeartSuite is a preventive enforcement layer, not a comprehensive compliance platform. It addresses a specific, high-value problem: enforcing a default-deny execution, file-access, and network policy at kernel level — one that survives root compromise. This document clarifies what that means for your compliance programme and what questions remain open.

For SOC 2 Trust Services Criteria mapping, see the SOC 2 Control Mapping document.


What HeartSuite Enforces

HeartSuite operates through three enforcement gates, applied per programme, not per user or per privilege level.

GateWhat it controls
ExecutionA programme must be explicitly allowlisted to execute. Unapproved binaries are blocked even for root.
File accessEach approved programme can only read or write paths explicitly permitted in its allowlist entry.
Network accessEach approved programme can only connect to specific IPv4/IPv6 addresses. All other outbound connections are blocked.

Two modes govern behaviour: Setup Mode (log and review, no blocking) and Lockdown (enforcement active, configuration sealed with filesystem immutability flags that root cannot clear at runtime).

Under Lockdown, kernel-level immutability also protects: authentication files (/etc/passwd, /etc/shadow), SSH configuration, systemd units, sudo policy, scheduled tasks (cron/anacron), system libraries (/usr/lib/), and HeartSuite’s own configuration and kernel image directory.

File Backup & Versioning takes an automatic snapshot on every write to designated directories (default: /home). Under Lockdown the kernel prevents any programme, including root, from accessing those backups.


NIST Cybersecurity Framework Coverage

Function: Identify

HeartSuite contributes to asset visibility through its programme allowlisting workflow. During Setup Mode, all programme execution attempts are logged and surfaced in the Dashboard review queues with package metadata (name, version, install date, maintainer). This forms a working inventory of executable software on the host.

What is not covered: HeartSuite does not produce a hardware asset inventory, does not integrate with a configuration management database (CMDB) via an inbound API, and does not aggregate inventory across a fleet on its own. The inventory it produces is per-host and lives in the Dashboard; export to asset management tooling and fleet aggregation is achieved via the syslog streams, status.json, dedicated JSONL approval log, and harvest of allowlist state into your SIEM or central systems (see Central Policy Management and External Control).

Relevant CSF categories: ID.AM-1, ID.AM-2 (partially)

Function: Protect

This is HeartSuite’s primary contribution.

CSF CategoryHeartSuite mechanism
PR.AC-1 — Identity and credential managementImmutable seal protects /etc/passwd, /etc/shadow, /etc/group; no programme can modify authentication state at runtime under Lockdown.
PR.AC-3 — Remote access managementNetwork allowlist controls outbound connection destinations per programme; inbound access is not managed.
PR.AC-4 — Access control, least privilegePer-programme execution and file-access allowlists enforce least-privilege at the enforcement layer, overriding user and root privilege.
PR.AC-5 — Network integrityNetwork allowlist restricts each programme to approved destinations; unapproved outbound connections are blocked at the kernel socket layer.
PR.DS-1 — Data-at-rest protectionFile versioning backups are sealed by the kernel under Lockdown; no programme (including root) can delete or alter backup copies at runtime.
PR.DS-5 — Protection against data leaksOutbound network allowlist limits exfiltration paths; programmes cannot reach unapproved destinations.
PR.IP-1 — Baseline configurationAllowlist and immutability together constitute an enforced configuration baseline. No configuration change is possible at runtime without a maintenance window that requires rebooting to a non-HeartSuite kernel.
PR.IP-12 — Vulnerability managementHeartSuite reduces the exploitable blast radius: approved programme CVEs with network or file-access exploitation paths are constrained by allowlist boundaries.
PR.MA-2 — Remote maintenanceMaintenance windows are structured: requires kernel reboot, checklist-guided steps, and Dashboard review of all new activity before re-engaging Lockdown.
PR.PT-1 — Audit log protectionUnder Lockdown, immutability flags protect log files; the kernel prevents attribute changes that would allow log deletion.
PR.PT-3 — Principle of least functionalityLockdown disables editors, restricts rm/cp/mv, and seals scheduled-task files, enforcing a minimal-function runtime posture.

Function: Detect

HeartSuite generates alerts for denial events: new programme blocked, network burst to unapproved destination, critical file modification outside a maintenance window, mode switches, and Lockdown state changes. Alerts are delivered via email, syslog, webhook, and a passive status JSON endpoint.

This is reactive logging on policy violations, not behavioural detection. HeartSuite does not perform anomaly detection, baseline comparison, heuristic analysis, or threat-intelligence enrichment.

Relevant CSF categories: DE.CM-1, DE.CM-7 (partially). DE.AE (anomaly and event analysis) is not addressed.

Function: Respond

HeartSuite does not automate incident response. The Dashboard provides a Maintenance section that guides recovery steps, and File Backup & Versioning enables file-level recovery. Beyond this, response is manual.

Relevant CSF categories: RS.CO, RS.AN, RS.MI — not meaningfully covered.

Function: Recover

File Backup & Versioning provides per-write timestamped, hash-deduplicated snapshots sealed from runtime interference. This supports recovery from ransomware-style overwrites and accidental deletion within the backup scope.

Relevant CSF categories: RC.RP-1 (partially). Fleet-wide recovery plans, backup-to-offsite, and recovery-time objectives are not defined by HeartSuite.


ISO 27001:2022 Annex A Coverage

A.5: Organisational Controls

ControlHeartSuite contribution
A.5.7 — Threat intelligenceNot covered. HeartSuite has no threat feed integration.
A.5.15 — Access controlKernel-enforced per-programme access control, overriding user and root privilege. Supports enforcement of an access control policy.
A.5.22 — Monitoring, review and change management of supplier servicesHeartSuite has conducted a rigorous internal security audit covering 42 formally evidenced properties across multiple scenario categories. No independent third-party engagement has been commissioned. HeartSuite is not submitted to NCSC CPA, NIAP, or Common Criteria evaluation. Several kernel hardening choices (CONFIG_BPF_SYSCALL=n, CONFIG_KEXEC_FILE=n, removal of eBPF verifier exposure, chattr-based immutability) align with the attack-surface-reduction objectives of Common Criteria Protection Profiles, but the certification process has not been initiated.
A.5.23 — ICT supply chain securityPartially. HeartSuite blocks new or modified binaries at the execution gate, preventing a trojanised update from running unless it replaces an already-allowlisted binary with identical path.
A.5.28 — Collection of evidencePer-decision enforcement stream, dedicated JSONL approval log (with uid/tty attribution), rotating application audit log, and Dashboard records constitute attributable evidence of both policy changes and enforcement decisions. Export to SIEM is the path for long-term retention and fleet correlation.
A.5.29 — Information security during disruptionNot covered. No continuity or DR controls.
A.5.30 — ICT readiness for business continuityNot covered.

A.6 — People Controls

Not covered. HeartSuite has no personnel management, background check, training, or separation-of-duties features. Separation of duties at the access-control layer is partially supported (per-programme file access limits what any individual programme can reach), but organisational duty separation is out of scope.

HeartSuite does not implement role-based access control within the Dashboard. Every user with Linux root access has identical, unrestricted access to all Dashboard functions: allowlist approval, Lockdown activation and deactivation, alert configuration, log clearing, and maintenance mode. There is no operator/administrator distinction, no per-function permission check, and no audit trail that distinguishes one root user’s actions from another. Restricting which personnel can reach root — and attributing their actions to individuals — requires customer-side controls: sudoers policy, a privileged access management tool, or bastion host session recording.

A.7 — Physical Controls

Not covered. HeartSuite’s Lockdown state requires physical access to bypass (reboot to a non-HeartSuite kernel to clear immutability flags). This means physical security of the host is a dependency, not a capability HeartSuite provides.

In cloud deployments, the cloud provider’s out-of-band serial console (AWS EC2 Serial Console, GCP serial port, Azure Serial Console, DigitalOcean Console) provides the same bypass path as physical keyboard access. HeartSuite installs agetty autologin on /dev/ttyS0; restricting serial console access in the cloud provider’s IAM is therefore a customer-side dependency that must be addressed to maintain the integrity of Lockdown’s protection model.

A.8 — Technological Controls

ControlHeartSuite contribution
A.8.2 — Privileged access rightsImmutable seal and per-programme enforcement override root privilege at runtime. Root cannot execute new binaries, modify sealed files, or clear Lockdown state. Dashboard access requires Linux root credentials; no additional authentication layer exists within HeartSuite. Every allowlist approval action is recorded with a timestamp and TTY in /var/log/heartsuite/ui.log; attributing TTY sessions to named personnel requires customer-side session logging (auditd or a PAM tool).
A.8.3 — Information access restrictionPer-programme file-access allowlist restricts which paths each programme can read or write.
A.8.4 — Access to source codeNot covered natively; HeartSuite does not distinguish source code files. File-access allowlists can be configured to restrict access to specific paths.
A.8.5 — Secure authenticationImmutable seal protects /etc/passwd, /etc/shadow, and SSH configuration from runtime modification. HeartSuite does not provide authentication mechanisms itself.
A.8.7 — Protection against malwareDefault-deny execution allowlist prevents unauthorised binaries from running. No signature-based or behavioural malware detection.
A.8.8 — Management of technical vulnerabilitiesNot covered. HeartSuite constrains the impact of unpatched vulnerabilities via allowlist boundaries but does not scan for, report on, or remediate them.
A.8.9 — Configuration managementAllowlist plus Lockdown constitutes an enforced configuration state. No change is possible at runtime without a documented maintenance window. Dashboard records all approvals. The allowlist is managed per-host; there is no built-in inbound remote management interface or multi-host push mechanism from a HeartSuite server. Policy is applied per-host by your automation (Ansible, Terraform + GitOps, ServiceNow, custom CM, etc.) with rich exports (status.json, dedicated JSONL approval log with uid/tty attribution, structured syslog, webhook) for central consumption and drift detection. See Central Policy Management and External Control. Revoking a compromised allowlist entry requires a maintenance window — no emergency revocation path exists while Lockdown is active. Boot-path integrity: CONFIG_IMA is not set (Integrity Measurement Architecture disabled) and CONFIG_KEXEC_FILE is not set (signed-image kexec variant compiled out). The kernel image directory is sealed under Lockdown via chattr +i, but there is no Secure Boot enforcement, no shim, and no IMA measurement log.
A.8.10 — Information deletionNot covered. HeartSuite’s restricted rm under Lockdown limits accidental deletion but has no secure-deletion or data-retention controls.
A.8.11 — Data maskingNot covered.
A.8.12 — Data leakage preventionPartially. Network allowlist prevents outbound connections to unapproved destinations; it does not inspect the content of approved connections.
A.8.13 — Information backupFile Backup & Versioning provides automatic per-write versioned snapshots, kernel-sealed from runtime interference. Backup files are versioned filesystem copies with no encryption at the HeartSuite layer; for data-at-rest requirements (GDPR, HIPAA, PCI DSS), disk-level encryption (dm-crypt/LUKS) must be configured at the OS level. No offsite copy capability.
A.8.15 — LoggingKernel emits a per-decision enforcement stream (every execution, file access, and network decision) and a separate higher-level alert stream as structured RFC 5424 syslog under the heartsuite APP-NAME. Every allowlist approval is written to a dedicated, persistent JSONL log with timestamp, uid, and tty. An always-on rotating application audit log captures UI and core events. On-device activity buffers are cleared on maintenance; the syslog streams and dedicated JSONL approval log are the mechanisms for audit-period retention and reconstruction. Lockdown advisories are verdict-driven with provenance to the underlying records.
A.8.16 — Monitoring activitiesAlert triggers deliver denial events to email, syslog, webhook, or passive status endpoint (~/.cache/heartsuite/status.json, updated every 60 seconds — see schema below). The Fleet tab in Alert Settings configures a node_id, syslog server, and webhook URL; it is a one-way outbound push channel only. There is no built-in inbound API or remote allowlist control from HeartSuite itself. Central policy application and fleet-wide views are achieved by driving the per-host CLI tools (hs-manage-allowlist, batch tools) from your automation and consuming the syslog streams, JSONL approval log, status.json, and webhook into your SIEM / CMDB / orchestration layer. See Central Policy Management and External Control. No fleet-wide or behavioural monitoring inside HeartSuite.
A.8.17 — Clock synchronisationNot covered. HeartSuite does not manage NTP or clock state.
A.8.18 — Use of privileged utility programmesUnder Lockdown, privileged tools (editors, module loaders, file operation utilities) are sealed. Kernel-module hardening documentation covers kmod allowlisting.
A.8.19 — Installation of software on operational systemsPer-programme execution allowlist enforces “approved programmes only.” New software cannot execute until it has been reviewed and approved through the Dashboard.
A.8.20 — Networks securityPer-programme network allowlist controls outbound connections using literal IPv4/IPv6 addresses only; CIDR notation and DNS-based rules are not supported. Inbound connection monitoring is not provided; inbound filtering is a customer-side responsibility via OS firewall (iptables, nftables) or cloud security groups. VLAN segregation and firewall policy are out of scope.
A.8.22 — Segregation of networksNetwork allowlist controls which programmes reach which destinations. This is host-level segregation, not network-layer segregation.
A.8.23 — Web filteringNot covered. HeartSuite filters by destination IP, not URL or content category.
A.8.24 — Use of cryptographyNo native encryption. HeartSuite configuration files (allowlist, mode state) are sealed by filesystem immutability flags but are not encrypted; they can be read from disk on a maintenance kernel boot. Backup snapshots are also unencrypted at the HeartSuite layer. OS-level disk encryption (dm-crypt/LUKS) is the required complementary control for data-at-rest compliance.
A.8.28 — Secure codingNot covered. HeartSuite does not inspect code or enforce secure development practices.
A.8.29 — Security testing in development and productionNot covered.
A.8.30 — Outsourced developmentNot covered.
A.8.32 — Change managementMaintenance window workflow provides a structured, logged change process. All newly executed programmes and file-access paths appear in Dashboard review queues before Lockdown can be re-engaged.
A.8.33 — Test informationNot covered.
A.8.34 — Protection of information systems during audit testingNot directly covered. Immutable Lockdown state protects system integrity during audit activities.

hs-status.json field reference

Written to ~/.cache/heartsuite/status.json every 60 seconds by the HeartSuite daemon. Read-only; does not accumulate history.

FieldTypeNotes
node_idstringConfigured host identifier
modestring"Lockdown", "Setup Mode", or "Unknown"
is_hs_kernelboolWhether the running kernel is the HeartSuite kernel
lockdownboolWhether Lockdown is currently active
lockdown_on_bootbool | nullLockdown re-engagement setting; null if unset
pending_programsintProgrammes awaiting review
pending_filesintSum of pending_file_r + pending_file_w
pending_networkintNetwork destinations awaiting review
last_alert_atstringISO 8601 UTC timestamp of last alert, or empty string
updated_atstringISO 8601 UTC timestamp of last daemon write
daemon_okboolWhether the HeartSuite daemon is running normally
channel_errorsobjectOptional — present only when the daemon passes an AlertState with errors
email.message / email.atstringLast email delivery error and its timestamp
syslog.message / syslog.atstringLast syslog delivery error and its timestamp
webhook.message / webhook.atstringLast webhook delivery error and its timestamp

For Nagios/Zabbix/Ansible polling, lockdown, is_hs_kernel, and daemon_ok are the three fields that constitute a healthy Lockdown state.


Open Questions

The following 11 questions remain without a complete public answer. Status annotations indicate how close each is to being closeable.

Evidence & Attestation

  1. Can HeartSuite export a signed compliance evidence package — a machine-readable record of the current allowlist, Lockdown state, and alert history — for submission to an auditor or GRC platform?

  2. Does HeartSuite generate a time-stamped attestation of continuous Lockdown state? hs-status.json reflects current state only; the daemon’s reboot history records reboots, not continuous Lockdown state. There is no historical attestation record.

Access Control & Identity

  1. How does HeartSuite interact with PAM, LDAP, or Active Directory? No HeartSuite code calls PAM, LDAP, or any directory service. Regulated environments requiring centralised identity management must bridge this at the OS layer.

Vulnerability & Patch Management

  1. How does HeartSuite handle kernel CVEs in its own kernel build? (Mostly answerable in public docs.) Active kernel maintenance is evidenced by the 5.19.6 → 6.18 LTS port. Public patch targets by severity, notification channels, and version-string semantics are in the Kernel Support Policy. Scanner and audit workflows are in CVE Hygiene for Scanners. Binding SLAs remain in the subscription agreement; OVAL/OSV feeds and GPG-signed bundles are not yet generally available.

  2. Is there a published SBOM for the HeartSuite kernel and Dashboard components? (Partially answerable.) SPDX/CycloneDX SBOM and GPG/cosign bundle signing are on the public roadmap; today bundles use SHA-256 only. See Supply Chain and Advisory Feeds and Evidence Status.

  3. What is HeartSuite’s vulnerability disclosure and response programme? (Organisational — not in the product.) Customers need a responsible disclosure policy and CVE numbering authority (CNA) status for ISO 27001 A.5.22 procurement assessments.

Incident Response & Recovery

  1. What is the documented RTO for restoring a Lockdown host after a security incident? Recovery requires a minimum three-step, two-reboot sequence with manual Dashboard queue review. No time estimate is defined; duration is queue-dependent. There is no fast path.

  2. Can HeartSuite backups be restored to a different host? The restore mechanism is local-only. There is no export, archive, or transfer capability; cross-host restore is architecturally absent.

  3. How are HeartSuite security incidents (in the product itself) disclosed to customers? (Organisational — not in the product.) ISO 27001 A.5.24 requires a defined customer notification process for product-level events.

Scalability & Fleet Management

  1. What does the licensing model look like at scale? (Organisational — not in the product.) No pricing tiers, volume discount structures, or MSP terms are publicly documented.

Compliance Certifications

  1. Does HeartSuite map to sector-specific compliance frameworks — PCI DSS, HIPAA, NIS2, DORA, CMMC? (Derivable without new research.) The evidence base is the same as the NIST CSF and ISO 27001 mappings in this document. PCI DSS Req 7 (least privilege) and Req 10 (log integrity), HIPAA §164.312(a) (access controls) and §164.312(b) (audit controls), and NIS2/CMMC controls that derive from NIST 800-171 all map directly to controls already described here. This is a document task, not an investigation.

Cloud Shared-Responsibility Matrix

When Root Lock by HeartSuite runs as a guest VM on a cloud platform, responsibility for controls is split across three parties.

Control layerHeartSuiteCloud providerCustomer
Kernel-level execution enforcementPrimary
Per-programme file access controlPrimary
Outbound network allowlistPrimary
Configuration immutability (Lockdown)Primary
File backup & versioningPrimaryOffsite / encrypted copy for DR
Hypervisor and host hardware securityPrimary
Physical data centre securityPrimary
Network infrastructure (VPC, routing)Primary
Serial / out-of-band console access controlInstalls agetty autologin on /dev/ttyS0Provides console (AWS EC2 Serial Console, GCP serial port, Azure Serial Console)Must restrict console access via cloud IAM
Inbound firewall / security groupsProvides capabilityCustomer configures
Disk encryption at restProvides capability (EBS encryption, etc.)Customer enables; LUKS recommended
Identity & access managementProvides IAMCustomer configures; controls who reaches root and serial console
OS-level audit logging (login, sudo)Customer configures (auditd, CloudTrail)
SIEM / log retention beyond deviceCustomer operates
Vulnerability scanningCustomer operates
Incident response programmeCustomer defines

The most operationally significant customer responsibility in cloud deployments is restricting serial console access. HeartSuite installs agetty autologin on /dev/ttyS0, meaning anyone who can reach the cloud provider’s out-of-band serial console can boot to the maintenance kernel without further authentication from HeartSuite. Restricting serial console access at the cloud provider IAM layer is the control that preserves Lockdown’s protection model in cloud environments.


How HeartSuite Fits Into a Compliance Programme

HeartSuite addresses a narrow but high-value control: kernel-enforced, root-resistant mandatory access control. It does not replace the controls listed below, and a compliance programme relying on HeartSuite alone will have significant gaps.

LayerHeartSuite roleComplementary tool required
Execution controlPrimary control
File access controlPrimary control
Outbound network controlPrimary controlFirewall / NAC for inbound
Configuration immutabilityPrimary control
File backup & recoveryPrimary controlOffsite / encrypted backup for DR
Fleet-wide loggingPer-decision enforcement stream + dedicated JSONL approval log + rotating audit log (on-host); direct RFC 5424 syslog export; status.json and allowlist harvest for policy stateSIEM (Splunk, Sentinel, Elastic, Datadog, QRadar) plus your central automation / GitOps / ITSM for retention, correlation, cross-host views, and policy reconciliation
Behavioural detectionNoneNDR / EDR
Vulnerability managementNoneScanner (Nessus, Qualys, Wiz)
Identity & access managementNoneIAM / PAM platform
Data encryptionNoneLUKS, TLS, application-layer encryption
Personnel & training controlsNoneHRMS / LMS / GRC platform
Supplier managementNoneGRC / vendor risk management

For a NIST CSF or ISO 27001 programme, HeartSuite contributes most directly to the Protect function and ISO 27001 A.8 (Technological Controls), with meaningful but partial contributions to logging, monitoring, and recovery.


Last modified July 6, 2026: text update (d5ccd2e)