Linking Bluetooth and Ethernet packets - security

If I am listening to Ethernet packets going across a Wi-Fi network using a card in monitor mode, and listening to Bluetooth packets using an Ubertooth, is there any way to link both types of packets to devices? As far as I am aware there no commonality between the Bluetooth BD_ADDR and the Ethernet MAC address of a device.
Essentially: is there a common denominator in Wi-Fi and Bluetooth packets that can be used to link the two?
Edit: just to add, the device in question is a smartphone.

Related

Is just the BD_ADDR of responding devices shared with the master during inquiry?

Is the Bluetooth address exchanged between two Bluetooth devices if no connection is made yet?
As when a device is in discovery mode, and you see for example a tv, headphones, or a different computer show up, is the Bluetooth address of that device being shared with the device making the inquiry, or are the others also getting the Bluetooth address of the inquiring device?
Alternatively, is the Bluetooth address only shared upon selection of the device for connection?
Thanks!
Edit: spelling
Advertising devices broadcast one-way. They do not know what devices have discovered them. Scanning for advertisements is passive. It does not require sending any packets, so neither the advertising device, nor other scanners in the area, will be aware of the scanning device.
Note that Bluetooth addresses are quite complex and varied, so how they are shared is not trivial. Devices have many kinds of addresses and change what they publicize frequently. But to the question of when an address (rather than the address) is shared, that is during connection.

How to analyze live Bluetooth packet in wireshark?

If i use bluez hcitool, like hcitool scan then I could see packets in wireshark properly under interface bluetooth0. And I am sure that bluez in using on-board Bluetooth chip.
I have written my own application with my own Bluetooth stack ( i am not using bluez ) for USB Bluetooth dongle (using libusb ), but when I start wireshark with bluetooth1 interface, then wireshark not show any packet.
Should my application send packets to wireshark? if so, can some one please direct me how to see my Bluetooth packets in wireshark?

IP Multicast - would this work on my dual homed embedded Linux device?

I am working on an embedded Linux project. It has a cell modem that comes up as ppp0 and a single Ethernet interface eth0 that may or may not be connected. The cable could be unplugged at any time from eth0 or may never be plugged in.
Is it possible to setup multicasting so that it could intelligently send the outgoing traffic over eth0 if it's up, otherwise over ppp0? If so I would be very interested on how to do this.
Thanks,
Fred

Communicating with USB bluetooth dongle from FTDI vinculum 2 USB host controller

I have been asked to figure out how to achieve bluetooth communication through an off-the-shelf dongle (in this case a dongle utilizing the Broadcom BCM2045 chip) using the FTDI Vinculum 2 (VNC2) USB controller. I have custom firmware written for the VNC2 to communicate with a generic USB device with the VNC2 acting as the host, and I can successfully read the VID and PID from the dongle as well as the USB device class, subclass, and protocol. I can also send data to the dongle using the bulk data endpoint and I believe the device is receiving though I have no way to tell at the moment.
So I believe I can communicate with the dongle, the problem is I have no idea WHAT to communicate to it in order to set it up in discoverable mode or to pair it with another discoverable device, nor how to actually transmit data through the wireless link once it is paired. I don't even know if there exists a standard communication protocol for this type of thing or if every device will be different. I have a vague understanding of the bluetooth protocol stack and it is my understanding that I won't be required to fully understand that as it should be implemented in the dongle on one end and in the android smartphone that we hope to connect to on the other end. Like I said, I can currently send data to the bulk endpoint, is it true that this endpoint is only for data transfer over the wireless link and I will need to connect to a different endpoint in order to send setup/configuration messages to the dongle?
In short, I need to know what data to send over the USB bus to control any generic bluetooth dongle if possible or at least one specific bluetooth dongle. I have a USB port sniffer but the complexity of the output while using the dongle to communicate is staggering and I doubt I'll ever figure it out.
Thank you in advance.
Bluetooth dongles communicate with host software stack using HCI (host control interface), which is defined in the Bluetooth spec. For reference, you can look at source code for the open source BlueZ stack (standard linux stack). You could run BlueZ on linux talking to your USB dongle, and use hcidump to capture actual packets going across HCI. You can also check out hcitool and hciconfig for performing specific actions.

Can a bluetooth usb dongle be detected when only powered on?

I bought one of those tiny bluetooth USB dongles that you can plug on a PC and make bluetooth communications. I am wondering if I just plug this dongle to a USB power source, like the USB charger that comes with iPad, can the bluetooth dongle power up, and be discovered as a bluetooth device? This sounds reasonable, since the bluetooth dongle should be able to broadcast itself, at least using some low-level protocol, i.e. showing its Mac address.
However, I tried to do the following:
1.Plug the bluetooth dongle on my iPad's usb charger
2.Search bluetooth devices on my laptop
and I could not find it. Is it because the bluetooth dongle needs the PC to initialize it, so that it can be discovered? Or I am not doing it right?
Thanks
It depend on the dongle
Typical PC dongles depends on the host (pc) to initialize and start any bluetooth activity - including scanning etc
It is practically possible to make dongles that can start becoming discoverable without waiting for host initialization. This has to be a custom build

Resources