Sense
Sign inBook a demo
Model Security & Trust

A model file is executable code. Yours arrived unread.

Sense scans every model, adapter and tokenizer before it reaches your registry or your app — payloads, trojaned weights, leaked secrets, unverifiable provenance — and keeps verifying the artifact that is actually running.

Book a demo
Runs in your CINo weights leave your VPCSigned SBOM per version
SCAN · IN PROGRESSpr #2841 · 14s
ARTIFACT
support-intent-v4.2 / pytorch_model.binPulled from a public hub 40 minutes ago · 2.3 GB · unsigned · no model card
pickle_reduceunsigned_artifactlicence_noncommercial
Serialisationopcodes · imports · archive
CHECKING…RCE PAYLOAD
Provenancesignature · base lineage · licence
CHECKING…UNVERIFIED
Backdoor probes4,096 triggers · refusal sweep
RUNNING…2 SUSPECT
Secrets & memorisationconfig · vocab · extraction
CHECKING…1 LIVE TOKEN
Scanning statically — the file has not been loaded
Blocked before mergepolicy model-gate-v3 · signed report → registry
FAILED
YOUR TEAM SEES
"Blocked: REDUCE → os.system at opcode 0x1f4. Safetensors conversion available. Owner: ml-platform."on the pull request · before anything loaded it
Pre-merge
A CI gate, not a quarterly review
6 formats
Pickle, safetensors, ONNX, GGUF, TFLite, CoreML
Signed SBOM
Base, adapter, tokenizer, dataset, per version
LLM03 · LLM04
Supply chain and poisoning, evidenced
THE GAP

You gate every package you install. You gate no model.

A fine-tune downloaded on a Friday afternoon ends up in an app that moves money — with no signature, no bill of materials and no test of what it does when a specific phrase appears in the prompt.

01
Loading a model runs code

Pickle-based checkpoints execute on deserialisation. One load call on a build machine is remote code execution inside your CI, with your registry credentials in reach.

02
Provenance is a README claim

Base model, training data, fine-tune lineage and licence are asserted in prose by a stranger. Nothing in the pipeline verifies the file is what the card says it is.

03
A backdoor passes your eval suite

Trojaned weights behave perfectly until a trigger phrase arrives. Accuracy metrics look clean, so the only way to find it is to go looking for the trigger.

WHAT THE SCANNER FINDS

Five ways a model file betrays the app it ships in.

Pick a finding to see what is inside the artifact, how Sense proves it, and what your team does next.

ARTIFACT SCANBUILD FAILED
OPCODE STREAM · STATIC PARSE0x0000 PROTO 4 · FRAME0x0018 GLOBAL torch._utils0x01f4 REDUCE → os.system0x0210 BINUNICODE "sh -c curl…"
unsafe_globalreduce_execnever_loaded
BUILD FAILEDSAFETENSORS OFFERED
Artifact scanPAYLOAD FOUND
Behavioural probeNOT RUN
ProvenanceUNSIGNED
Runtime attestationNOT REACHED
THE CHECKS

Twenty checks, five stages, one gate.

Static scanning catches the payload; only behavioural probing catches the backdoor; only signed provenance stops the swap.

01Artifact & format scanningThe file itself, parsed statically — never loaded.4 CHK
02Behavioural & backdoor analysisWhat the model does, not what the file contains.4 CHK
03Provenance & supply chainProving the artifact is the one you approved.4 CHK
04Continuous trust in productionApproval expires; verification does not.4 CHK
05Governance & evidenceThe inventory, the approvals, the paper trail.4 CHK
Every stage runs in your own CI or VPC. Weights never leave; findings, hashes and the SBOM do.
STAGE 01Artifact & format scanningThe file itself, parsed statically — never loaded.
4 CHECKS
01Deserialisation & opcode analysis
02Six-format coverage
03Archive & payload inspection
04Secrets & PII sweep
No inference, no deserialisation — the artifact is read, not run.PRE-SHIP GATE · 01/05
WHERE MODELS COME FROM

Every route into your stack, and what we check on it.

SOURCE
THE RISK
SENSE CONTROL
Public model hubs
THE RISKUnsafe pickle checkpoints, typosquatted repository names and model cards asserting a lineage nobody verified.
SENSE CONTROLStatic opcode scanning, weight-fingerprint lineage checks and a signed SBOM before the artifact enters your registry.
Vendor-supplied models
THE RISKA black box under contract: unsigned, undocumented training data, licence terms that do not survive commercial use.
SENSE CONTROLSignature and attestation verification, licence mapping, and behavioural probing to establish what you actually bought.
In-house fine-tunes
THE RISKMemorised customer data, secrets pulled in from the training corpus, safety behaviour quietly degraded by the tune.
SENSE CONTROLExtraction probes, secrets sweep and refusal-boundary regression against the base model on every training run.
Adapters, LoRAs & merges
THE RISKA small file with full behavioural reach, often community-sourced and merged without review of its own.
SENSE CONTROLAdapters scanned as first-class artifacts; merge results re-probed, with each component recorded in the SBOM.
On-device models in the app
THE RISKThe artifact ships to a handset you do not control, where it can be lifted, studied or replaced outright.
SENSE CONTROLEncrypted weights bound to the app signature, load-time hash attestation and RASP integrity checks in the same SDK.
Agent tools & plugin packages
THE RISKTool manifests and plugin code arrive from the same ecosystem as the models, with none of the scrutiny.
SENSE CONTROLManifest and dependency scanning, version pinning, and fail-closed verification when a tool set changes.
QUESTIONS ENGINEERING TEAMS ASK
Do our weights leave our environment?No. The scanner runs inside your CI or VPC and only findings, hashes and the SBOM leave — never the artifact. Air-gapped installs use a signed rule bundle you mirror yourself.
How long does a scan take on a large model?Static and provenance passes finish in seconds to a couple of minutes, scaling with file size. Behavioural probing is the long pole and runs asynchronously, so it never blocks a merge waiting on GPUs.
Will this fail builds constantly at first?The first run is a baseline: everything reports, nothing fails. You set severity thresholds per environment once you have seen your own inventory, then tighten them release by release.
What about false positives on behavioural findings?Every probe finding ships as a reproducible case — the input, the output, the delta from base — so your ML team can confirm or dismiss it in minutes. Dismissals are recorded, not repeated.
Does it work with our registry and orchestrator?Yes. The gate is a CI step, a registry webhook and an SDK check; anything that stores artifacts or triggers a pipeline can call it. Verdicts post back as PR checks and registry annotations.
We already convert everything to safetensors. Do we still need this?That closes the code-execution route and nothing else. Trojaned weights, memorised secrets, unverifiable lineage and licence exposure all survive the conversion untouched.

Point us at your registry. We'll tell you what you've already shipped.

A free inventory scan across your model registry and app builds — unsafe formats, unverifiable provenance, licence exposure and backdoor candidates — with findings mapped to the OWASP LLM Top 10 and MITRE ATLAS.