Ver código fonte

Merge branch 'bugfix/btdm_security_vulnerability' into 'master'

fix bluetooth security vulnerability of ECDH public key checking

See merge request idf/esp-idf!3089
Jiang Jiang Jian 7 anos atrás
pai
commit
4cd1643006
2 arquivos alterados com 13 adições e 1 exclusões
  1. 1 1
      components/bt/lib
  2. 12 0
      components/esp32/ld/esp32.rom.ld

+ 1 - 1
components/bt/lib

@@ -1 +1 @@
-Subproject commit 17e29e6ed4e2c952a24e4097e9f41bb89bac6128
+Subproject commit c272133d6d9c046e05e2514b12e17cc561980865

+ 12 - 0
components/esp32/ld/esp32.rom.ld

@@ -272,6 +272,9 @@ PROVIDE ( r_E1 = 0x400108e8 );
 PROVIDE ( r_E21 = 0x40010968 );
 PROVIDE ( r_E21 = 0x40010968 );
 PROVIDE ( r_E22 = 0x400109b4 );
 PROVIDE ( r_E22 = 0x400109b4 );
 PROVIDE ( r_E3 = 0x40010a58 );
 PROVIDE ( r_E3 = 0x40010a58 );
+PROVIDE ( lm_n192_mod_mul = 0x40011dc0 );
+PROVIDE ( lm_n192_mod_add = 0x40011e9c );
+PROVIDE ( lm_n192_mod_sub = 0x40011eec );
 PROVIDE ( r_ea_alarm_clear = 0x40015ab4 );
 PROVIDE ( r_ea_alarm_clear = 0x40015ab4 );
 PROVIDE ( r_ea_alarm_set = 0x40015a10 );
 PROVIDE ( r_ea_alarm_set = 0x40015a10 );
 PROVIDE ( _read_r = 0x4000bda8 );
 PROVIDE ( _read_r = 0x4000bda8 );
@@ -301,6 +304,7 @@ PROVIDE ( r_ecc_gen_new_public_key = 0x400170c0 );
 PROVIDE ( r_ecc_gen_new_secret_key = 0x400170e4 );
 PROVIDE ( r_ecc_gen_new_secret_key = 0x400170e4 );
 PROVIDE ( r_ecc_get_debug_Keys = 0x40017224 );
 PROVIDE ( r_ecc_get_debug_Keys = 0x40017224 );
 PROVIDE ( r_ecc_init = 0x40016dbc );
 PROVIDE ( r_ecc_init = 0x40016dbc );
+PROVIDE ( ecc_point_multiplication_uint8_256 = 0x40016804);
 PROVIDE ( RecvBuff = 0x3ffe009c );
 PROVIDE ( RecvBuff = 0x3ffe009c );
 PROVIDE ( r_em_buf_init = 0x4001729c );
 PROVIDE ( r_em_buf_init = 0x4001729c );
 PROVIDE ( r_em_buf_rx_buff_addr_get = 0x400173e8 );
 PROVIDE ( r_em_buf_rx_buff_addr_get = 0x400173e8 );
@@ -599,6 +603,14 @@ PROVIDE ( r_lc_util_get_offset_clke = 0x4002f538 );
 PROVIDE ( r_lc_util_get_offset_clkn = 0x4002f51c );
 PROVIDE ( r_lc_util_get_offset_clkn = 0x4002f51c );
 PROVIDE ( r_lc_util_set_loc_trans_coll = 0x4002f500 );
 PROVIDE ( r_lc_util_set_loc_trans_coll = 0x4002f500 );
 PROVIDE ( r_lc_version = 0x40020a30 );
 PROVIDE ( r_lc_version = 0x40020a30 );
+PROVIDE ( lc_set_encap_pdu_data_p192 = 0x4002e4c8 );
+PROVIDE ( lc_set_encap_pdu_data_p256 = 0x4002e454 );
+PROVIDE ( lm_get_auth_method = 0x40023420);
+PROVIDE ( lmp_accepted_ext_handler = 0x40027290 );
+PROVIDE ( lmp_not_accepted_ext_handler = 0x40029c54 );
+PROVIDE ( lmp_clk_adj_handler = 0x40027468 );
+PROVIDE ( lmp_clk_adj_ack_handler = 0x400274f4 );
+PROVIDE ( lm_get_auth_method = 0x40023420);
 PROVIDE ( lmp_accepted_ext_handler = 0x40027290 );
 PROVIDE ( lmp_accepted_ext_handler = 0x40027290 );
 PROVIDE ( lmp_not_accepted_ext_handler = 0x40029c54 );
 PROVIDE ( lmp_not_accepted_ext_handler = 0x40029c54 );
 PROVIDE ( lmp_clk_adj_handler = 0x40027468 );
 PROVIDE ( lmp_clk_adj_handler = 0x40027468 );