<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>BLE Link Layer behavior for &amp;quot;barge-in attack&amp;quot;?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/23483/ble-link-layer-behavior-for-barge-in-attack</link><description>This is a more specific counterpart to a question I posted on StackExchange . If you want to know more about the attack itself, check that out, but here, I&amp;#39;m asking for a specific behavior that the attack takes advantage of. I&amp;#39;m going to refer to Devices</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 17 Jul 2017 20:13:30 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/23483/ble-link-layer-behavior-for-barge-in-attack" /><item><title>RE: BLE Link Layer behavior for "barge-in attack"?</title><link>https://devzone.nordicsemi.com/thread/92243?ContentTypeID=1</link><pubDate>Mon, 17 Jul 2017 20:13:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7ab814f4-30cb-41fb-b6bd-bc30645a666c</guid><dc:creator>Elias</dc:creator><description>&lt;p&gt;The purpose is that the device not being jammed will be tricked into dropping its end of the connection via passing its Supervision Timeout. The jammer can then take the place of that device in the connection.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Link Layer behavior for "barge-in attack"?</title><link>https://devzone.nordicsemi.com/thread/92242?ContentTypeID=1</link><pubDate>Fri, 14 Jul 2017 22:24:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:42844ab5-9e4c-4168-a479-7719a9eecce4</guid><dc:creator>Elias</dc:creator><description>&lt;p&gt;A quote from the Core Spec is pretty much exactly what I was hoping for.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Link Layer behavior for "barge-in attack"?</title><link>https://devzone.nordicsemi.com/thread/92244?ContentTypeID=1</link><pubDate>Fri, 14 Jul 2017 14:35:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0d068b70-ba1b-42c2-bc3b-66a96dc5ba86</guid><dc:creator>Ulrich Myhre</dc:creator><description>&lt;p&gt;If you know all the parameters of the connection, it is indeed possible to impersonate a peer over an unencrypted connection. Constantly sending NACKs will not normally kill a connection, but if timed correctly they can introduce protocol timeouts, which effectively disables most of the communication. Impersonation can also be executed on encrypted connections, but no data can be sent. This is because empty PDUs are not encrypted in the same way as data PDUs, so you can keep sending empty NACKs to keep the connection alive.&lt;/p&gt;
&lt;p&gt;The existence of such an attack is one of the reasons why the LE Ping feature was introduced for encrypted connections. It makes sure that some data packet is sent every now and then, not only empty PDUs. If the peer does not respond to it, the connection dies. If the peer does not know the session or long-term key it will lead to a MIC failure and the connection dies.&lt;/p&gt;
&lt;p&gt;Using encryption is recommended for sensitive information, and pairing methods using Out Of Band-data are usually the most secure in that regard. LE Secure Connections with Passkey Entry is also quite hard to MITM, as you need to guess each individual bit in the PIN. Failing a single bit check aborts the procedure, and application-specific back-off algorithms can lead to exponential lock-outs for repeated attempts.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Link Layer behavior for "barge-in attack"?</title><link>https://devzone.nordicsemi.com/thread/92241?ContentTypeID=1</link><pubDate>Fri, 14 Jul 2017 07:53:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fc5d5d29-72ef-4dad-89fe-6e370b72d7f3</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;As far as  I understand, the connection will not be timed out as long as the peer still receive &amp;quot;valid packet&amp;quot; , so it doesn&amp;#39;t mater if it&amp;#39;s a NACK or and ACK, it&amp;#39;s still a valid packet. Quoted here:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;To be able to detect link loss, both
the master and the slave shall use a
Link Layer connection supervision
timer, T_LLconnSupervision. Upon
reception of a valid packet, the timer
shall be reset.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Core spec 4.2 , Vol 6 Part B section 4.5.2 .&lt;/p&gt;
&lt;p&gt;B will continue transmitting , there is no time out for this except if it&amp;#39;s in a procedure that has a timeout, such as encrypting (30s timeout).&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t understand purpose, what is the next step of jamming a device and then let other device transmitting ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Link Layer behavior for "barge-in attack"?</title><link>https://devzone.nordicsemi.com/thread/92237?ContentTypeID=1</link><pubDate>Thu, 13 Jul 2017 11:53:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e84ca90a-d20d-449d-9139-9f501fbc7fc1</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;I&amp;#39;ve also read your attack scenario several times again and I believe it is not applicable. Once any timeout kicks-in then device terminates the link so you cannot force one peer by jamming the packets to disconnect from legitimate target and then stay connected to &amp;quot;attacker&amp;quot;. Or maybe I haven&amp;#39;t understood how exactly this attack should work. From my 4-year experience and several security analysis there is just relay/MITM attack possible (you really need to &amp;quot;block&amp;quot; packets from one peer and mimic it by sending your own packets towards second peer + vice versa for the other direction) or dumb DoS (jamming whole spectrum or just particular channel + time to disturb either Tx or Rx windows). Both are pretty easy to execute (basic BLE knowledge and any dev kit will do the job).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Link Layer behavior for "barge-in attack"?</title><link>https://devzone.nordicsemi.com/thread/92240?ContentTypeID=1</link><pubDate>Thu, 13 Jul 2017 07:07:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:83109ec2-da93-4019-97f3-5c42ac373d9e</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;Indeed, not advancing LL counters mean that packet is invalid (or at least this is how I understand BT SIG Core spec and expect all BLE stacks to be validated during qualification, haven&amp;#39;t verified myself). If the LL PDU is invalid in this sense it should be completely ignored by LL and should not be propagated to higher layers so it is effectively equal to receiving packet with wrong integrity/security or not receiving the packet at all.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Link Layer behavior for "barge-in attack"?</title><link>https://devzone.nordicsemi.com/thread/92239?ContentTypeID=1</link><pubDate>Thu, 13 Jul 2017 06:49:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4f37b650-e785-4e83-8d06-a52c4bfce408</guid><dc:creator>Elias</dc:creator><description>&lt;p&gt;Yes, I know about the Supervision Timeout, but as far as Device B is concerned, no jamming is happening. Do you mean to say that valid PDUs with a non-incremented NESN still count against the Timeout?&lt;/p&gt;
&lt;p&gt;As for the bit about channel re-map, you&amp;#39;re right, it would depend on the first part of the question, so I&amp;#39;ve removed it, since it was a bit distracting.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Link Layer behavior for "barge-in attack"?</title><link>https://devzone.nordicsemi.com/thread/92238?ContentTypeID=1</link><pubDate>Thu, 13 Jul 2017 06:44:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9637d26a-5523-4187-b473-19fa5ed6b501</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;There is parameter called Supervision Timeout which guards &amp;quot;lost&amp;quot; connections. It&amp;#39;s typically in 1-32s range so if you keep jamming or blocking Link Layer PDU in one or both directions for 30~1000 connection intervals in the row it&amp;#39;s treated by BLE controllers (stacks) on both sides as if they would lost the link and they will terminate it internally. This interval has some relation to other connection parameters but in general it is managed by upper layers of the stack if they have intention to do it.&lt;/p&gt;
&lt;p&gt;To channel re-mapping: you mean changing channel map of the connection? That cannot happen without correctly received LL packet, can it? I believe that if you are loosing all LL packets in a row you won&amp;#39;t change any parameter of the connection (however normal &amp;quot;hardcoded&amp;quot; properties like channel hopping for every interval will be exercised).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>