Introduction

I recently bought a DVID board which is an open source vulnerable designed IoT device. In this post I will try to explain how to solve the third challenge of the DVID project. In this challenge we need to write data to a special characteristic.

Challenge

Let’s flash the firmware, enable and setup the usb dongle:

1
2
3
sudo avrdude -c usbasp -p m328p -U flash:w:characteristics2.ino.with_bootloader.arduino_standard.hex
sudo systemctl start bluetooth
sudo hciconfig hci1 up

The following commands are exactly the same than those used in my previous post, more details on those steps are given in it.

1
2
3
4
5
sudo bluetoothctl
scan on
connect 00:13:AA:00:22:57
menu gatt
list-attributes

From the challenge tips Come on to say hello on 0000ffe1 we know that we need to write hello on the UUID 0000ffe1.

1
select-attribute 0000ffe1-0000-1000-8000-00805f9b34fb

To write data to a specific characteristics it’s really easy, you just need to convert your data to hexadecimal values. Here are the hexadecimal values for hello

1
write "0x68 0x65 0x6c 0x6c 0x6f"

And we get the flag on the board!