View Issue Details

IDProjectCategoryView StatusLast Update
0009297GNUnetutil librarypublic2024-10-29 20:56
Reporterfefe Assigned Toschanzen  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Target Version0.22.2Fixed in Version0.22.2 
Summary0009297: GNUNET_CRYPTO_ecc_dlog_prepare: integer overflow
DescriptionIn crypto_ecc_dlog.c function GNUNET_CRYPTO_ecc_dlog_prepare:

 64 struct GNUNET_CRYPTO_EccDlogContext *
 65 GNUNET_CRYPTO_ecc_dlog_prepare (unsigned int max,
 66 unsigned int mem)
 67 {
 68 struct GNUNET_CRYPTO_EccDlogContext *edc;
 69 int K = ((max + (mem - 1)) / mem);
 70
 71 GNUNET_assert (max < INT32_MAX);
 72 edc = GNUNET_new (struct GNUNET_CRYPTO_EccDlogContext);
 73 edc->max = max;
 74 edc->mem = mem;
 75 edc->map = GNUNET_CONTAINER_multipeermap_create (mem * 2,
 76 GNUNET_NO);

Defense in depth: mem is supposed to be in the area of 1024.
Do some sanity checks so at least mem * 2 doesn't overflow.
TagsNo tags attached.

Activities

schanzen

2024-10-29 13:07

administrator   ~0023613

Fix committed to master branch.

schanzen

2024-10-29 20:56

administrator   ~0023624

Released

Related Changesets

gnunet: master 879bc73d

2024-10-29 14:07

schanzen


Details Diff
util: ECC Dlog - make sure input variables do not overflow. Fixes 0009297 Affected Issues
0009297
mod - src/lib/util/crypto_ecc_dlog.c Diff File

Issue History

Date Modified Username Field Change
2024-10-25 10:16 fefe New Issue
2024-10-28 12:23 schanzen Target Version => 0.22.2
2024-10-29 13:07 schanzen Changeset attached => gnunet master 879bc73d
2024-10-29 13:07 schanzen Note Added: 0023613
2024-10-29 13:07 schanzen Assigned To => schanzen
2024-10-29 13:07 schanzen Status new => resolved
2024-10-29 13:07 schanzen Resolution open => fixed
2024-10-29 13:07 schanzen Fixed in Version => 0.22.2
2024-10-29 20:56 schanzen Note Added: 0023624
2024-10-29 20:56 schanzen Status resolved => closed