我正在阅读蓝牙低功耗:开发人员手册,并对MITM的保护感到困惑。
本书在交换配对信息后说,双方都会生成一个随机数。连同该随机数一起计算确认值。然后在双方之间交换确认值,然后显示随机数。
交换的消息在配对中就像这样。
[Apr 25 18:04:43.919] [SMP Send] LE SMP Pairing Request Command
[Apr 25 16:53:09.005] [SMP Receive] LE SMP Pairing Response Command
[Apr 25 16:53:09.019] [SMP Send] LE SMP Pairing Confirm Command
[Apr 25 16:53:14.016] [SMP Receive] LE SMP Pairing Confirm Command
[Apr 25 16:53:14.017] [SMP Send] LE SMP Pairing Random Command
[Apr 25 16:53:14.076] [SMP Receive] LE SMP Pairing Random Command
这本书声称这可以防止MITM攻击,因为MITM必须猜测2 ^ 128个可能的随机数来计算确认值。
我的问题是,这有助于防止MITM攻击。我的意思是,如果我是MITM,我只需将确认号码从一端传递到另一端,甚至不需要计算。
我确信我一定错过了什么。
答案 0 :(得分:1)
你错过了MITM攻击的意思。
通过简单地将从一个设备接收的数据传递给另一个设备,不会使您成为MITM攻击者。只是一个MITM。
To" attack"在传递数据之前,您必须实际修改数据,而不会让接收方注意到它。理想情况下,您不仅可以搞砸通信,而且还可以进行有意义的更改(例如,在保留发件人签名的同时替换目标银行帐号,这样您就可以获得金钱而不是原始发件人。)
通过不对您拦截的数据(发送前)进行任何修改,您只需充当转发器。
答案 1 :(得分:0)
攻击可能不是一直有意的; MITM可能只对挖掘数据感兴趣;数据可能非常重要,不需要攻击/修改,因此取决于;只是揭示数据本身就足够了!!