mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH master] FIT: early exit if digest fails
@ 2025-03-13  7:23 Ahmad Fatoum
  2025-03-13 11:54 ` Sascha Hauer
  0 siblings, 1 reply; 2+ messages in thread
From: Ahmad Fatoum @ 2025-03-13  7:23 UTC (permalink / raw)
  To: barebox; +Cc: Ahmad Fatoum

fit_digest will hash the list of images in the configuration, so
fit_check_signature() can compare it against the signed hash.

So far, parse errors while computing the hash were ignored. This is not
directly exploitable as the hash would be incomplete and fail the
signature verification, but it makes the code more difficult to reason
about.

This unused assignment to ret was detected by clang-analyzer-19.

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
---
 common/image-fit.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/common/image-fit.c b/common/image-fit.c
index 959384abd275..6eda041935be 100644
--- a/common/image-fit.c
+++ b/common/image-fit.c
@@ -338,6 +338,9 @@ static int fit_verify_signature(struct device_node *sig_node, const void *fit)
 
 	ret = fit_digest(fit, digest, &inc_nodes, &exc_props, hashed_strings_start,
 			 hashed_strings_size);
+	if (ret)
+		goto out_sl;
+
 	hash = xzalloc(digest_length(digest));
 	digest_final(digest, hash);
 
-- 
2.39.5




^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH master] FIT: early exit if digest fails
  2025-03-13  7:23 [PATCH master] FIT: early exit if digest fails Ahmad Fatoum
@ 2025-03-13 11:54 ` Sascha Hauer
  0 siblings, 0 replies; 2+ messages in thread
From: Sascha Hauer @ 2025-03-13 11:54 UTC (permalink / raw)
  To: barebox, Ahmad Fatoum


On Thu, 13 Mar 2025 08:23:09 +0100, Ahmad Fatoum wrote:
> fit_digest will hash the list of images in the configuration, so
> fit_check_signature() can compare it against the signed hash.
> 
> So far, parse errors while computing the hash were ignored. This is not
> directly exploitable as the hash would be incomplete and fail the
> signature verification, but it makes the code more difficult to reason
> about.
> 
> [...]

Applied, thanks!

[1/1] FIT: early exit if digest fails
      https://git.pengutronix.de/cgit/barebox/commit/?id=a676705feac6 (link may not be stable)

Best regards,
-- 
Sascha Hauer <s.hauer@pengutronix.de>




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-03-13 12:16 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-03-13  7:23 [PATCH master] FIT: early exit if digest fails Ahmad Fatoum
2025-03-13 11:54 ` Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox