Safeguard
Application Security•

CWE-924 Message Integrity During Transmission: How to Fix It

If a client trusts a message without checking it was not changed in transit, an attacker can alter it or pose as the sender. CWE-924 explained.

Safeguard Security Team
2 min read

CWE-924, Improper Enforcement of Message Integrity During Transmission in a Communication Channel, applies when a product sets up a channel with an endpoint and receives a message from it, but does not make sure the message was not modified on the way.

How it happens

Picture an app that fetches configuration, an update manifest or a command over plain HTTP, or over a connection where certificate checks have been switched off. Nothing proves the bytes that arrived are the bytes that were sent.

MITRE describes the attacker's options: modify the message and spoof the endpoint by interfering with data as it crosses the network, or redirect the connection to a system under their control.

# Weak: certificate checking turned off
requests.get("https://updates.example.com/manifest", verify=False)

# Better: default verification stays on
requests.get("https://updates.example.com/manifest")

What an attacker gains

MITRE lists integrity and confidentiality impact, and the ability to gain privileges or assume identity. If the attacker can spoof the endpoint, they get all the privileges that were intended for the original endpoint.

How to find it

The record lists no detection methods and no observed CVEs. Review every place the product receives data from another system. Look for plain HTTP URLs, disabled certificate validation and protocols that carry no integrity protection. A network capture during testing will show messages that travel unprotected.

How to fix it

No formal mitigations are listed in the record. Practical steps:

  1. Use an authenticated, integrity protected channel such as TLS with full certificate validation.
  2. Never ship code that disables validation, even for testing.
  3. For high value messages, add a signature or message authentication code the receiver checks.

Quick check

Is encryption alone enough for integrity?

Not on its own. The point of this weakness is that the receiver must verify the message was not changed, so use a mechanism that provides integrity and endpoint authentication.

Sources

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.