Data Sources¶
SentriKat reads public vulnerability data and keeps it up to date on a schedule. This page is about running that: what syncs, when, how to check it, and what to do when something is stale.
The list of sources, who publishes each one and the credit each is owed is at sentrikat.com/third-party-data.
What syncs, and when¶
| Task | Frequency | What it does |
|---|---|---|
| Exploited vulnerabilities | Daily | Downloads the full catalogue and matches it against your inventory |
| European database | Daily | EU exploited vulnerabilities and severity scores |
| Vendor advisories | Daily | Package advisories plus the Red Hat, Microsoft and Debian feeds |
| Exploit probability | Daily | Probability predictions per CVE |
| Software identity catalogue | Weekly | Vendor and product names used for matching |
| License heartbeat (licensed installations) | Every 12h | License check and config updates |
The license heartbeat is non-blocking. Air-gapped installations run normally without it, because the license is signed offline and valid for its full term.
Checking source health¶
Settings → Sync & Updates, in the Data Status block. One row per dataset, and each row answers the only two questions worth asking.

A row reads like this:
last: 9/15/2026, 10:29:08 AM · ok · 0 matches in 61s
| the piece | the question it answers |
|---|---|
last: and the time | did the job run, and how long ago |
ok | did it finish without an error |
the counts (matches, scored, entries, coverage) | did anything actually arrive |
History | the same two answers for the previous runs |
Sync now | run it immediately instead of waiting for the schedule |
Those first and third rows are not the same question, and this is the part worth reading twice: a row can say ok and still bring nothing new.
%%{init: {"flowchart": {"curve": "basis", "nodeSpacing": 45, "rankSpacing": 65, "wrappingWidth": 420}}}%%
flowchart TB
riga["<b>last: 9/15/2026, 10:29:08 AM · ok · 0 matches in 61s</b>"]
riga --> q1{"is <b>last:</b> recent,<br/>and does it say <b>ok</b>?"}
q1 -->|no| j1["<b>The job is not running</b><br/>or it is failing.<br/>Use Sync now, then History"]
q1 -->|yes| q2{"are the counts<br/>moving, run after run?"}
q2 -->|yes| fine["<b>Nothing to do</b>"]
q2 -->|no| q3{"has it been longer than<br/>you would expect for that dataset?"}
q3 -->|no| normale["<b>Normal</b><br/>a quiet day upstream<br/>is not a fault"]
q3 -->|yes| guarda["<b>This is the one to look at.</b><br/>The job runs and finishes, and nothing<br/>new is being written, so the fault sits<br/>between the two."]
classDef act stroke:#3e6b8a,stroke-width:2.5px
class guarda act If a row's last: never moves, click Sync now and look at History. If it still does not move, contact support@sentrikat.com.
The four-state card is a different screen
If you have read about sources being Healthy, Degraded, Down, Not measured or Probe off, that is the operator console we run on our side, watching the upstream feeds for everybody. Your instance does not have those states: it has the rows above.
Air-gapped installations¶
Air-gapped installations do not reach these feeds. Import the signed offline bundle instead, from Settings → Sync & Updates. The bundle carries the same data and is verified against its signature before anything is written.