新的 BLUFFS 攻击导致蓝牙连接不再私密

蓝牙是一种连接我们设备的低功耗无线技术,有一个新的漏洞需要解决。
中间的攻击者可以使用新的 BLUFFS 攻击轻松窥探您的通信。
法国研究中心 EURECOM 的研究员 Daniele Antonioli 演示了六种新颖的攻击,这些攻击被定义为 BLUFFS(蓝牙转发和未来保密)攻击。
它们在大规模上有效,利用广泛的设备,例如多个操作系统上的笔记本电脑、智能手机、耳机和扬声器。
大多数芯片供应商,例如英特尔、博通、苹果、三星、高通等,都可能受到影响,因为这些攻击针对的是架构级别的蓝牙。
中间人 (MITM) – 一名黑客 – 可以利用漏洞来破坏蓝牙会话保密性。
研究人员发布了该工具包,它可以自动执行并检查攻击的有效性。 该工具包操纵和监视蓝牙会话密钥的派生。
论文中写道:“通过在来自流行硬件和软件供应商的 17 种不同的蓝牙芯片(18 种设备)上进行评估,并支持最流行的蓝牙版本,我们表明我们的攻击对蓝牙生态系统产生了重大和大规模的影响。”
研究人员还开发并测试了增强的密钥派生功能,可以阻止此类攻击。他们负责任地向蓝牙 SIG 披露了调查结果。
蓝牙 SIG 承认了这项工作,并发布了一份报告,指出支持蓝牙核心规范 4.2 至 5.4 中的安全连接配对和安全简单配对的设备可能容易受到 MITM 攻击。
声明中写道:“为了使这次攻击成功,攻击设备需要位于两个易受攻击的蓝牙设备的无线范围内,并使用通过 BR/EDR 安全连接配对程序获得的链接密钥启动加密程序。”
研究人员发现,中间人攻击者可以强制配对设备使用传统的、安全性较低的方法和较短的加密密钥建立加密程序,并在此过程中操纵某些值。
如果成功,附近的攻击者可以确保每个会话都使用相同的加密密钥。暴力破解可用于解密任何后续会话。
虽然存在安全风险,但某些系统可能会采取措施拒绝从“降级会话”访问主机资源。
“预计在会话期间不可能实时暴力破解 7 个八位字节的密钥,但是,能够与受攻击设备共处一地的攻击者可能能够记录足够的私人流量,从而对单个设备进行攻击。会话密钥值得”,蓝牙 SIG 表示。
“如果成功的攻击者可以将加密密钥长度减少到 7 个八位字节以下,则攻击者可能能够实时完成加密密钥的暴力破解,从而允许对受影响对等点之间的流量进行实时注入攻击。”
建议供应商实施拒绝使用弱密钥的服务级别连接的解决方案。
EURECOM 的研究人员自己提供了一个低成本的工具包来安装蓝牙固件。
“我们希望我们的修复很快就会添加到标准中并由供应商实施。此外,我们向供应商建议在等待标准更新时可以采取的实施级缓解措施,”论文中写道。
由于该漏洞存在于协议级别,因此用户无法采取太多措施来保护连接。
相关文章:
新的 BLUFFS 攻击导致蓝牙连接不再私密
蓝牙是一种连接我们设备的低功耗无线技术,有一个新的漏洞需要解决。 中间的攻击者可以使用新的 BLUFFS 攻击轻松窥探您的通信。 法国研究中心 EURECOM 的研究员 Daniele Antonioli 演示了六种新颖的攻击,这些攻击被定义为 BLUFFS(蓝牙转发和…...
安全测试之推荐工具(一)
文章目录 一、前言二、Web安全(一)AppScan(推荐)(二)AWVS(推荐)(三)Burp Suite(推荐)(四)OWASP ZAP 三、主机安…...
final关键字
修饰 类,属性,方法,局部变量(包括方法参数) 类似c语言的const 使用方式: 1 不希望类被继承 用final类(类很重要,担心别人重写/修改) 2 不希望某…...
WPF MVVM模式下如何将UI窗口变量传参到Viewmodel层
WPF MVVM模式下如何将UI窗口变量传参到Viewmodel层 UI层窗口定义 //窗口中绑定ViewModel<hc:GlowWindow.DataContext><viewmodel:MainWindowViewModel /></hc:GlowWindow.DataContext>//注册初始化事件<hc:Interaction.Triggers><hc:EventTrigger…...
条款22:将成员变量声明为private
1.前言 首先,我们应该利用反证法,看看为什么成员变量不该是public,然后再了解所有反对public成员变量的论点同样适用于protected成员变量。最后得出一个结论:成员变量应该是private。 2.为什么不用public 如果成员变量不是publ…...
PTA 7-224 sdut-C语言实验-排序问题
输入10个整数,将它们从小到大排序后输出,并给出现在每个元素在原来序列中的位置。 输入格式: 输入数据有一行,包含10个整数,用空格分开。 输出格式: 输出数据有两行,第一行为排序后的序列,第二行为排序…...
【JavaScript】3.2 JavaScript性能优化
文章目录 1. 避免全局查找2. 避免不必要的属性查找3. 使用快速的JavaScript方法4. 避免不必要的DOM操作5. 使用Web Workers进行后台处理总结 性能优化是任何编程语言的重要组成部分,JavaScript也不例外。在这个章节中,我们将探讨如何优化JavaScript代码&…...
pytorch bert实现文本分类
以imdb公开数据集为例,bert模型可以在huggingface上自行挑选 1.导入必要的库 import os import torch from torch.utils.data import DataLoader, TensorDataset, random_split from transformers import BertTokenizer, BertModel, BertConfig from torch import…...
《开箱元宇宙》:Madballs 解锁炫酷新境界,人物化身系列大卖
你是否曾想过,元宇宙是如何融入世界上最具代表性的品牌和名人的战略中的?在本期的《开箱元宇宙》 系列中,我们与 Madballs 的战略顾问 Derek Roberto 一起聊聊 Madballs 如何在 90 分钟内售罄 2,000 个人物化身系列,以及是什么原…...
4K-Resolution Photo Exposure Correction at 125 FPS with ~8K Parameters
MSLTNet开源 | 4K分辨率125FPS8K的参数量,怎养才可以拒绝这样的模型呢? 错误的曝光照片的校正已经被广泛使用深度卷积神经网络或Transformer进行广泛修正。尽管这些方法具有令人鼓舞的表现,但它们通常在高分辨率照片上具有大量的参数数量和沉…...
网络初识:局域网广域网网络通信基础
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、局域网LAN是什么?二、广域网是什么:三. IP地址四.端口号五.认识协议5.1五元组 总结 前言 一、局域网LAN是什么? 局域网…...
JVM之jps虚拟机进程状态工具
jps虚拟机进程状态工具 1、jps jps:(JVM Process Status Tool),虚拟机进程状态工具,可以列出正在运行的虚拟机进程,并显示虚拟机执 行主类(Main Class,main()函数所在的类)的名称,…...
C++实现顺序栈的基本操作(扩展)
#include <stdio.h> typedef char ElemType; #define StackSize 100 /*顺序栈的初始分配空间*/ typedef struct { ElemType data[StackSize]; /*保存栈中元素*/int top; /*栈顶指针*/ } SqStack; void InitStack(SqStack &st) {st.top-1; } …...
用python写一个简单的爬虫
爬虫是一种自动化程序,用于从互联网上获取数据。它能够模拟人类浏览网页的行为,访问网页并提取所需的信息。爬虫在很多领域都有广泛的应用,例如数据采集、信息监控、搜索引擎索引等。 下面是一个使用Python编写的简单爬虫示例: …...
分布式追踪
目录 文章目录 目录自定义指标1.删除标签2.添加指标3.禁用指标 分布式追踪上下文传递Jaeger 关于我最后最后 自定义指标 除了 Istio 自带的指标外,我们还可以自定义指标,要自定指标需要用到 Istio 提供的 Telemetry API,该 API 能够灵活地配…...
make -c VS make -f
make 是一个用于构建(编译)项目的工具,它通过读取一个名为 Makefile 的文件来执行构建任务。make 命令有很多选项和参数,其中包括 -c 和 -f。 make -c: 作用:指定进入指定的目录并执行相应的 Makefile。 示…...
Unity 代码控制Color无变化
Unity中,我们给Color的赋值比较常用的方法是: 1、使用预定义颜色常量: Color color Color.white; //白色 Color color Color.black; //黑色 Color color Color.red; //红色 Color color Color.green; //绿色 Color color Color.blue; …...
【Erlang进阶学习】2、匿名函数
受到其它一些函数式编程开发语言的影响,在Erlang语言中,将函数作为一个对象,赋予其“变量”的属性,即为我们的匿名函数 或 简称 fun,它具有以下特性: (匿名函数:不是定义在Erlang模…...
肖sir__mysql之视图__009
mysql之视图 一、什么是视图 视图是一个虚拟表(逻辑表),它不在数据库中以存储形式保存(本身包含数据),是在使用视图的时候动态生成。 二、视图作用 1、查询数据库中的非常复的数据 例如:多表&a…...
FPGA falsh相关知识总结
1.存储容量是128M/8 Mb16MB 2.有256个sector扇区*每个扇区64KB16MB 3.一页256Byte 4.页编程地址0256 5:在调试SPI时序的时候一定注意,miso和mosi两个管脚只要没发送数据就一定要悬空(处于高组态),不然指令会通过两…...
springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...
12.找到字符串中所有字母异位词
🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
