Skip to content
Permalink
Browse files

Bluetooth: SMP: MITM security possible without IO when OOB data present

Allow Security level HIGH and FIPS to be initiated when we have received
OOB data for the remote device. The security property of MITM is allowed
if out of band authentication data is available.

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
  • Loading branch information...
joerchan authored and carlescufi committed Jul 31, 2019
1 parent 835b1c1 commit a2531e1622e881c6ed285561f5aaa1f15201578c
Showing with 5 additions and 2 deletions.
  1. +5 −2 subsys/bluetooth/host/smp.c
@@ -2338,9 +2338,12 @@ static bool sec_level_reachable(struct bt_conn *conn)
case BT_SECURITY_MEDIUM:
return true;
case BT_SECURITY_HIGH:
return get_io_capa() != BT_SMP_IO_NO_INPUT_OUTPUT;
return get_io_capa() != BT_SMP_IO_NO_INPUT_OUTPUT ||
(bt_auth && bt_auth->oob_data_request && oobd_present);
case BT_SECURITY_FIPS:
return get_io_capa() != BT_SMP_IO_NO_INPUT_OUTPUT &&
return (get_io_capa() != BT_SMP_IO_NO_INPUT_OUTPUT ||
(bt_auth && bt_auth->oob_data_request &&
oobd_present)) &&
sc_supported;
default:
return false;

0 comments on commit a2531e1

Please sign in to comment.
You can’t perform that action at this time.