Safeguard
Security Guides•

Why did an unchanged container image gain new vulnerabilities?

An image that has not changed can still show new findings because advisory data changed, not the image. Here is how to tell the causes apart and respond.

Safeguard Security Team
4 min read

An unchanged image shows new vulnerabilities because the knowledge about it changed. A new advisory was published, a severity or fix status was updated, or the scanner learned to read more packages. The bytes in the image are the same. Your exposure may not have changed either, but you now know more.

The image is fixed, the data is not

A container image is identified by a content digest, a hash of its manifest. Pull the same digest tomorrow and you get the same layers. The Kubernetes documentation on images describes the digest as a hash algorithm plus a hash value, and that is why a digest is a stable thing to record a scan against.

The vulnerability side has no such stability. Advisories arrive daily, existing records are edited, and fix versions appear weeks after the first disclosure. So a scan result is really a statement of the form "this digest, checked against this data, on this date". Change the data and the statement changes.

The five usual causes

CauseWhat changedWhat to do
New advisoryA flaw in a package you already ship was publishedTriage like any new finding
Fix became availableA package now has a patched versionThe finding becomes actionable, plan a rebuild
Severity or scoring editThe record was rescoredCheck whether it crosses your policy line
Exploitation evidenceThe flaw was added to a known exploited listRaise priority, see below
Scanner updateNew parsers or new data sourcesCompare tool versions between scans

The exploitation case deserves attention. The CISA Known Exploited Vulnerabilities Catalog records a date added for each entry, and an old library in an old image can land on that list long after you shipped it. That is an event, not noise.

How to find out which cause it was

  1. Compare the digest in both scan records. If it differs, the image changed and this is a different question.
  2. Compare the vulnerability data date or scanner version stored with each result. Good tooling keeps both.
  3. Diff the finding lists. New rows for packages that were already present point to advisory data. New rows for packages that were never listed point to a scanner change.
  4. Check for each new finding whether a fixed version exists.

If your tooling does not record what data a scan used, you cannot answer this question later. That is worth fixing before an auditor asks.

What to do with the answer

Do not treat the new findings as a regression in the image or in your team. Route them through the same triage as any other finding. If a fix exists in the base image, rebuild. If the vulnerable code is not reachable from your application, record that decision with an expiry date.

For images already deployed, remember that a rebuild does nothing until the workload is redeployed. Running pods keep the layers they pulled.

Stop being surprised

Two habits remove most of the surprise. First, rescan stored digests on a schedule, not only when someone pushes. Second, alert on change in findings for a digest, not only on the first scan. A report that says "nothing changed since last week" is a useful report.

Try it yourself

Click through it at your own pace, or open it full screen.

Click through the demo and watch how a monitored item raises findings later without any new commit.

Where Safeguard fits

Safeguard keeps SBOM and dependency scan results per image and re-evaluates them as advisory data changes, so a new finding on an old digest is visible with its cause. You can try a free scan.

Quick check

Is a new finding on an old image a sign the image was tampered with?

No. The digest tells you whether the content changed. If the digest matches your earlier record, the cause is new or updated vulnerability data.

Should I rebuild every time a new finding appears?

Only when a fix exists and the finding matters for your use of the package. Otherwise record a decision with an expiry date and revisit.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.