Append-only audit log
Every sensitive action — enabling, disabling, scanning, applying mitigations, changing settings, signing in — writes an entry with actor, action, severity and detail. Entries cannot be edited through the API.
By default
0 calls in detectionNot out of generosity, but because we do not need them to compute a verdict. Each one is verifiable with a packet capture.
Each has a condition you control, and each is described below in full — not in a “may” table.
Email address, password hash (bcrypt with salt), session tokens (stored SHA-256) and licence state. Without them, an account across several devices is not possible.
A SHA-256 hash and nothing else — no file name, no path. It is off by default; while it is off, the verdict comes from your local history.
One request to the update server that sends the installed version and receives the current one. It sends nothing about your machine beyond the version number.
Every claim below corresponds to code you can read and a test that runs in CI.
Every sensitive action — enabling, disabling, scanning, applying mitigations, changing settings, signing in — writes an entry with actor, action, severity and detail. Entries cannot be edited through the API.
The log can be exported to an external collector. The queue is bounded at 512 events, so a dead collector cannot fill the product's memory.
admin, analyst and viewer, enforced per route. A viewer cannot start a scan, and an analyst cannot change licensing settings.
AES-256-GCM with a SHA-256-derived key, 12-byte IV and 16-byte tag. On restore the tag is verified: a blob changed by a single byte is refused.
You can disable the network adapter and keep scanning: the engines run locally. A security engine that stops when the internet drops is an engine an attacker can stop by cutting the cable.
The AI analyst explains a verdict and suggests steps. It cannot change a score, whatever it answers — advisoryOnly is always true, and a test fails if anyone changes that.
The same list you find on the features page, here in a security context. A product that hides its limits sells calm, not protection.
The Malnox minifilter (altitude 321000, port \MalNOXFilterPort) exists as real code: it compiles, links and passes signature verification in the test build. What we do not have yet is the official signature: loading it on a normal Windows needs an EV kernel-signing certificate and Microsoft Partner Center attestation. Until then, a file is stopped as soon as it appears on disk, and the process holding it is stopped with it — not at file-open time, a millisecond before execution.
Global reputation exists and is enabled in settings: an unknown local hash can be looked up in the Malnox network and the answer feeds the score. What it cannot do yet is compete with databases holding billions of samples — our network is young, and with it switched off the verdict comes from your local history alone.
The in-house rule package is small and behaviour-targeted. The signature engine covers the rest, but not at the scale of a huge commercial database. The rules are readable and extensible: you can add your own without asking us.
The sandbox unwraps every encoded payload and analyses what comes out — up to 8 encoding layers, across scripts, macros and, optionally, binaries. It does not run the file in a virtual machine or watch it execute: a payload that builds its own code at runtime, with no recognisable text slips past static analysis — but if it starts writing files or encrypting, the behaviour engines and the ransomware guard catch it at execution time.
Memory scanning looks inside the resident pages of running processes for the same indicators it looks for in files — including code built in memory that never touches disk. The result is de-noised: an API name imported from kernel32 is not evidence, injected code is recognised by its executable private page, and interpreter vocabulary is judged on the command line. What stays outside it: a process owned by another user or protected by the system cannot be opened without a driver, and is reported as “skipped”, never as “clean”.
Malnox reads Secure Boot, boot chain integrity, VBS, HVCI, KMCI, TPM and ELAM and tells you exactly what is on and what is not — 8 dedicated checks. A bootkit that installs itself before the operating system is not blocked, though: Malnox starts with your session, not earlier.
When hundreds of files are rewritten in seconds, Malnox freezes the processes running from the affected folders or carrying those paths in their command line, then restores the backups. Without a driver we cannot read another process's file handles, so an encryptor running from a different folder that does not pass its paths as arguments cannot be stopped pre-emptively — the files are restored, though.
Blocklist domains are written into the Windows hosts file on both IPv4 and IPv6, and the DNS cache is flushed after every write. The browser can no longer resolve them — that is real blocking, not a label in the console. What it does not do: it does not inspect traffic, and it does not stop a program that already knows the IP address and connects to it directly, bypassing name resolution. Inspecting all traffic would need a signed network driver, which does not exist yet.
Firewall, privacy, USB, exploit protection and vulnerabilities are audits: they read the Windows configuration, explain it and tell you what to do. They do not change firewall settings on their own, do not block a USB stick from mounting and do not revoke camera permissions. Automatic response covers files and processes, not system settings. The single exception, with explicit confirmation, is applying an exploit-mitigation configuration to an executable you pick.
When it finds something, Malnox does not hesitate: it stops the process holding the file, moves it to encrypted quarantine, freezes an encryption attack before restoring the backups. If you want to check the numbers on our pages, the method is described in Tests and measurements.
The installer is 177 MB and asks for no account. Not convinced? Check a link above — the web engine is already running on this page.