рд╕рд┐рдВрдЧрд▓ рд▓рд╛рдЗрди рдХреАрдбрд╝реЗ рдХрд╛ рдЗрддрд┐рд╣рд╛рд╕

Apple рдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ SSL рдХрдиреЗрдХреНрд╢рди рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рджреМрд░рд╛рди рд╕рд░реНрд╡рд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП SSLVerifySignedServerKeyExchange рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмреАрдЪ рдореЗрдВ рдЧреЛрдЯреЛ рдмрд┐рдирд╛ рд╢рд░реНрдд рдСрдкрд░реЗрдЯрд░ рдХреЗ рд╕рд╛рде рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд╛рдЗрди рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рднреВрд▓рдХрд░ рдПрдХ рдмрдбрд╝реА рдЧрд▓рддреА рдХреА ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕рддреНрдпрд╛рдкрди рд╕рддреНрдпрд╛рдкрди рдкрд░рд┐рдгрд╛рдо рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдлрд╝рдВрдХреНрд╢рди рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реБрдЖред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрддрд┐рд╣рд╛рд╕ рдореЗрдВ рдпрд╣ рдкрд╣рд▓реА рдмрд╛рд░ рдирд╣реАрдВ рд╣реИ рдЬрдм рдХрд┐рд╕реА рдПрдХрд▓ рдкрдВрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рдХрд┐рд╕реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рддреНрд░реБрдЯрд┐ рдХреЛ рд╕рдордЭрд╛рдпрд╛ рдЧрдпрд╛ рд╣реЛред рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреБрдЫ рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ ред

рдПрдХреНрд╕ рд╕рд░реНрд╡рд░


2006 рдореЗрдВ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдПрдХреНрд╕ рд╕рд░реНрд╡рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдореВрд▓ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдореЗрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рднреВрд▓ рдЧрдпрд╛ ред

--- hw/xfree86/common/xf86Init.c +++ hw/xfree86/common/xf86Init.c @@ -1677,7 +1677,7 @@ } if (!strcmp(argv[i], "-configure")) { - if (getuid() != 0 && geteuid == 0) { + if (getuid() != 0 && geteuid() == 0) { ErrorF("The '-configure' option can only be used by root.\n"); exit(1); } 


рдбреЗрдмрд┐рдпрди рдУрдкрдирдПрд╕рдПрд╕рдПрд▓


2008 рдореЗрдВ, рдбреЗрдмрд┐рдпрди рдиреЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдХрд┐ рдЗрд╕рдХреЗ 2006 рдХреЗ рдорд╛рд▓рд┐рдХрд╛рдирд╛ рдУрдкрдирдПрд╕рдПрд╕рдПрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдЫрджреНрдо рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдЬрдирд░реЗрдЯрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдиреБрдорд╛рдирд┐рдд рд╕рдВрдЦреНрдпрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред

 --- openssl-a/md_rand.c +++ openssl-b/md_rand.c @@ -271,10 +271,7 @@ else MD_Update(&m,&(state[st_idx]),j); -/* - * Don't add uninitialised data. MD_Update(&m,buf,j); -*/ MD_Update(&m,(unsigned char *)&(md_c[0]),sizeof(md_c)); MD_Final(&m,local_md); md_c[1]++; 

рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкрдВрдХреНрддрд┐ рд╢рд╛рдорд┐рд▓ рдереАред рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдмрдЧ рдЕрдВрддрд┐рдо рд░рд┐рд▓реАрдЬ рдореЗрдВ рдХреИрд╕реЗ рдЖрдП, рдЬреИрд╕реЗ рдХрд┐ рдХрд┐рд╕реА рдиреЗ рднреА рдХреЛрдб рдХреА рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХреА рдереАред рд╡реИрд╕реЗ, рдХрдИ рдиреЗ рддрдм рдбреЗрдмрд┐рдпрди рдкрд░ рд╕рдВрджреЗрд╣ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рдПрдХ рдХрд╛рд░рдг рд╕реЗ PRNG рдХреЛ "рдмреНрд░реЗрдХ" рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред

рдорд╛рдирдХ рдУрдкрдирдПрд╕рдПрд╕рдПрд▓


рдУрдкрдирдПрд╕рдПрд╕рдПрд▓ рдореЗрдВ рдПрдХ рдФрд░ рдмрдЧ , рдФрд░ рдлрд┐рд░ 2008 рд╕реЗред OpenSSL 0.9.8i рдФрд░ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ "EVP_VerifyFinal рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдП рдЧрдП рдорд╛рди рдХреЛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдЬрд╛рдВрдЪрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рд╣рдорд▓рд╛рд╡рд░реЛрдВ рдХреЛ DSA рдФрд░ ECDSA рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдирдХрд▓реА SSL / TLS рд╣рд╕реНрддрд╛рдХреНрд╖рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рддреНрдпрд╛рдкрди рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рдерд╛ред"

  --- lib/libssl/src/ssl/s3_srvr.c +++ lib/libssl/src/ssl/s3_srvr.c @@ -2009,7 +2009,7 @@ static int ssl3_get_client_certificate(S else { i=ssl_verify_cert_chain(s,sk); - if (!i) + if (i <= 0) { al=ssl_verify_alarm_type(s->verify_result); SSLerr(SSL_F_SSL3_GET_CLIENT_CERTIFICATE,SSL_R_NO_CERTIFICATE_RETURNED); 

рдПрдВрдбреНрд░реЙрдпрдб


11 рдордИ 2010 рдХреЛ memset.c рджрд┐рдирд╛рдВрдХ рдХреЗ рд▓рд┐рдП рдкреИрдЪ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред

 --- libc-a/memset.c +++ libc-b/memset.c @@ -1,6 +1,6 @@ void *memset(void *_p, unsigned v, unsigned count) { unsigned char *p = _p; - while(count-- > 0) *p++ = 0; + while(count-- > 0) *p++ = v; return _p; } 

рд╕рд╣реА рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдмрдЬрд╛рдп, рд╢реВрдиреНрдп рдХреЛ рдореЗрдореЛрд░реА рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкрд╛рд░рд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Tarsnap


Tarsnap рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд▓реЗрдЦрдХ, рдЕрдореЗрдЬрд╝реЕрди S3 рдкрд░ рдмреИрдХрдЕрдк рдХреЗ рд╕реБрд░рдХреНрд╖рд┐рдд рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдСрдирд▓рд╛рдЗрди рд╕реЗрд╡рд╛, 2011 рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рддреЗ рд╕рдордп рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдорд╛рди (рдЧреИрд░) рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдПрдХ рдмрдЧ рдХреА рд╕реВрдЪрдирд╛ рджреА ред

 --- tarsnap-autoconf-1.0.27/lib/crypto/crypto_file.c +++ tarsnap-autoconf-1.0.28/lib/crypto/crypto_file.c @@ -108,7 +108,7 @@ /* Encrypt the data. */ if ((stream = - crypto_aesctr_init(&encr_aes->key, encr_aes->nonce)) == NULL) + crypto_aesctr_init(&encr_aes->key, encr_aes->nonce++)) == NULL) goto err0; crypto_aesctr_stream(stream, buf, filebuf + CRYPTO_FILE_HLEN, len); crypto_aesctr_free(stream); 

рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдбреЗрдЯрд╛ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ 16 рдмрд╛рдЗрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдореВрд▓реНрдп рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдмрджрд▓рд╛ред

рдЗрддрдирд╛ рд╣реА рдирд╣реАрдВ Apple рдЧрд▓рддрд┐рдпрд╛рдБ рдХрд░рддрд╛ рд╣реИред

Source: https://habr.com/ru/post/In214557/


All Articles