Text   |  XML   |  ReML   |   Visible Warnings:

Buffer Overrun  at crypt-sha1.c:73

No properties have been set. | edit properties
Jump to warning location ↓ warning details...
Show Events | Options

AirPDcapRsnaPwd2PskStep

(/home/sate/Testcases/c/cve/wireshark-1.2.0/epan/crypt/airpdcap.c)expand/collapse
Show more  
 1689  AirPDcapRsnaPwd2PskStep(
 1690      const guint8 *ppBytes,
 1691      const guint ppLength,
 1692      const CHAR *ssid,
 1693      const size_t ssidLength,
 1694      const INT iterations,
 1695      const INT count,
 1696      UCHAR *output)
 1697  {
 1698      UCHAR digest[36], digest1[AIRPDCAP_SHA_DIGEST_LEN];
 1699      INT i, j;
 1700   
 1701      /* U1 = PRF(P, S || INT(i)) */
 1702      memcpy(digest, ssid, ssidLength);
 1703      digest[ssidLength] = (UCHAR)((count>>24) & 0xff);
 1704      digest[ssidLength+1] = (UCHAR)((count>>16) & 0xff);
 1705      digest[ssidLength+2] = (UCHAR)((count>>8) & 0xff);
 1706      digest[ssidLength+3] = (UCHAR)(count & 0xff);
 1707[+]     sha1_hmac(ppBytes, ppLength, digest, (guint32) ssidLength+4, digest1);
expand/collapse

sha1_hmac

(/home/sate/Testcases/c/cve/wireshark-1.2.0/epan/crypt/crypt-sha1.c)expand/collapse
Show more  
 296  void sha1_hmac( const guint8 *key, guint32 keylen, const guint8 *buf, guint32 buflen,
 297                  guint8 digest[20] )
 298  {
 299      guint32 i;
 300      sha1_context ctx;
 301      guint8 k_ipad[64];
 302      guint8 k_opad[64];
 303      guint8 tmpbuf[20];
 304   
 305      memset( k_ipad, 0x36, 64 );
 306      memset( k_opad, 0x5C, 64 );
 307   
 308      for( i = 0; i < keylen; i++ )
 309      {
 310          if( i >= 64 ) break;
 311   
 312          k_ipad[i] ^= key[i];
 313          k_opad[i] ^= key[i];
 314      }
 315   
 316      sha1_starts( &ctx );
 317      sha1_update( &ctx, k_ipad, 64 );
 318[+]     sha1_update( &ctx, buf, buflen );
expand/collapse

sha1_update

(/home/sate/Testcases/c/cve/wireshark-1.2.0/epan/crypt/crypt-sha1.c)expand/collapse
Show more  
 216  void sha1_update( sha1_context *ctx, const guint8 *input, guint32 length )
 217  {
 218      guint32 left, fill;
 219   
 220      if( ! length ) return;
 221   
 222      left = ctx->total[0] & 0x3F;
 223      fill = 64 - left;
 224   
 225      ctx->total[0] += length;
 226      ctx->total[0] &= 0xFFFFFFFF;
 227   
 228      if( ctx->total[0] < length )
 229          ctx->total[1]++;
 230   
 231      if( left && length >= fill )
 232      {
 233          memcpy( (void *) (ctx->buffer + left),
 234                  (const void *) input, fill );
 235          sha1_process( ctx, ctx->buffer );
 236          length -= fill;
 237          input  += fill;
 238          left = 0;
 239      }
 240   
 241      while( length >= 64 )
 242      {
 243[+]         sha1_process( ctx, input );
expand/collapse

sha1_process

(/home/sate/Testcases/c/cve/wireshark-1.2.0/epan/crypt/crypt-sha1.c)expand/collapse
Show more  
 60  static void sha1_process( sha1_context *ctx, const guint8 data[64] )
 61  {
 62      guint32 temp, W[16], A, B, C, D, E;
 63   
 64      GET_UINT32( W[0],  data,  0 );
 65      GET_UINT32( W[1],  data,  4 );
 66      GET_UINT32( W[2],  data,  8 );
 67      GET_UINT32( W[3],  data, 12 );
 68      GET_UINT32( W[4],  data, 16 );
 69      GET_UINT32( W[5],  data, 20 );
 70      GET_UINT32( W[6],  data, 24 );
 71      GET_UINT32( W[7],  data, 28 );
 72      GET_UINT32( W[8],  data, 32 );
 73      GET_UINT32( W[9],  data, 36 );
Show more  
Show more  
Show more  
Show more  




Change Warning 1100.30090 : Buffer Overrun

Priority:
State:
Finding:
Owner:
Note: