A classifier that labels images, audio or text is making a decision. When that decision gates access, flags malware or triggers a safety action, a wrong label is a security event.
CWE-1039 names the weakness: the product uses an automated mechanism such as machine learning to recognize complex data inputs, such as image or audio, as a particular concept or category, but it does not properly detect or handle inputs that were modified or constructed to cause the mechanism to detect a different, incorrect concept.
MITRE classes it as a Class level weakness for AI and ML systems. It is relevant to teams that ship models in the loop of a security decision, and to those who put chatbots and large language models in front of users.
How it happens
MITRE's extended description ties the risk to a simple chain. When machine learning classifies input streams, and those classifications drive security critical decisions, any mistake in classification can introduce a vulnerability. Attackers can then cause the product to make the wrong security decision, or disrupt the service of the automated mechanism.
Two conditions make it worse. If the mechanism was not trained with enough input data, or has not been adequately tested and evaluated, an attacker may be able to craft malicious inputs that intentionally trigger the incorrect classification.
The record lists the targeted technologies as including:
- Automated speech recognition.
- Automated image recognition.
- Automated cyber defense.
- Chatbots, large language models and generative AI.
It gives two illustrations. In one, an attacker modifies road signs or road surface markings to trick autonomous vehicles into misreading them and performing a dangerous action. In the other, an attacker crafts highly specific and complex prompts to jailbreak a chatbot and bypass safety or privacy mechanisms, which MITRE says is better known as prompt injection.
The one observed CVE on the page is CVE-2025-26644: a biometric authentication capability where attackers can spoof biometric data and bypass authentication, using adversarial input perturbations that cause the ML model to accept the input.
A tiny, generic sketch of the weak design, written in Python. The model decision is used directly as the security decision:
# Weak: the model's label is the gate, with no confidence check and no fallback
label, score = classifier.predict(sample)
if label == "authorized_user":
grant_access()
A stronger shape treats the output as evidence, not as a verdict:
# Better: require confidence, check that the input looks like training data,
# and fall back to a second factor or a human when unsure
label, score = classifier.predict(sample)
if not in_expected_distribution(sample):
return escalate_to_human_review()
if label == "authorized_user" and score >= HIGH_CONFIDENCE:
return require_second_factor()
return deny()
The function names here are placeholders for your own checks. The point is the structure: no single model output unlocks anything alone.
What an attacker gains
MITRE records three consequences:
- Integrity. When automated recognition is part of a protection mechanism, an attacker may craft inputs that are misinterpreted in a way that grants excess privileges. That is the biometric spoofing case.
- Availability. The recognition system's service may be disrupted through resource consumption or instability, which can cause further downstream failures in the software that depends on it.
- Confidentiality. Features of the training data may be exposed, for example through membership inference attacks or prompt injection attacks, leading to breaches of data privacy.
The common thread is that a model is an input parser with fuzzy edges. Attackers probe those edges.
How to find it
MITRE lists several detection ideas, all of which come from monitoring and review rather than from simple scanning.
- Watch model performance. Use indicators such as sudden drops in accuracy or unexpected outputs to verify the model.
- Watch the inputs. Verify that incoming data is statistically within the distribution of the training and test data.
- Compare models. Use multiple models or ensembling to check consistency of predictions. Disagreement is a signal.
You can add practical checks of your own:
- Build an adversarial test set before launch, with perturbed and borderline inputs, and track accuracy on it over time.
- Red team the system with prompts or inputs designed to cross the boundaries you care about.
- Log confidence scores and review the tail, especially unusually high or low values compared with expected behavior.
- Review the architecture. Find every place a model output triggers an action without a second check.
How to fix it
MITRE's mitigation list is the most detailed of this batch. It groups by phase.
Architecture and design
- Model pruning or compression. Pruning keeps only the weights most relevant to the task. MITRE notes it has shown resilience to adversarially perturbed data.
- Adversarial training. Include adversarial examples in the training data so the algorithm holds up at inference time.
- Model hardening. Fortify the internal structure of the algorithm with techniques such as regularization and optimization, which desensitize it to small perturbations of input.
Implementation
- Multiple models or ensembling. Reduce the impact of any single model's weaknesses.
- Uncertainty estimation. Trigger human intervention or secondary fallback software when predictions and confidence scores are abnormally high or low compared with expected performance.
Integration
- Reactive defenses before inference. Input sanitization, defensive distillation and input transformations can run before data reaches the algorithm.
- Reduce output granularity. Return less detail from the prediction, so attackers cannot use leaked information to craft better perturbations.
The last item is easy to overlook. A system that returns exact confidence values to anyone who asks hands attackers a guide.
For systems with an LLM component, treat model output and model input as untrusted. Do not give the model tools or credentials that you would not give an anonymous user, and put policy checks in front of any action it can take.
Try it yourself
If your AI features connect to tools, an inline policy layer is one place to apply the fallback idea. This demo shows a guardrail sitting between an AI agent and its tools.
Click through it at your own pace, or open it full screen.
ML systems also depend on libraries and frameworks. The free in-browser scan at gold.safeguard.sh/scan checks up to 100 dependencies with no login, and your file stays on your machine.
Quick check
Why is a wrong classification a security issue and not just an accuracy issue?
When the classification feeds a security decision, such as authentication or a protection mechanism, a mistaken label can grant excess privileges or let harmful input through.
Name two defenses MITRE lists at the architecture and design phase.
Model pruning or compression, adversarial training and model hardening are all listed. Any two of them answer the question.
Why reduce the granularity of model output?
Detailed outputs can leak information that helps attackers craft adversarial inputs. Returning less detail makes that harder.