Do you want to get into tinkering and hacking Bluetooth LE devices? Up until now, doing so was very much a DIY process. You would have to find relevant documentation or videos, and then find various BLE devices to test on. In order to make this learning process easier, I created a Bleutooth LE CTF, named BLECTF , which aims to teach the fundamentals of BLE connections, interactions, and hacking.…
This documentation goes though the process of manually building a base Kali Linux image for the Intel Edison board. These steps were derived from frankensteining the edison build scripts for Debian Jessie and some of the Kali Linux ARM build scripts . All of the content from this post can be found in my github repo for this project here , along with pre compiled images (coming soon!) and ansible…
This documentation goes though the process of building a base Debian Linux image via simple make files for the Intel Edison board. The make file method for building Debian images is very similar to my last post for building Yocto images from Intels make file method. The make files provided by Intel in the BSP Edison source package wrap the build process with scripts to make building an extremely…
Creating remote apt repos on github If you read my last blog post, you would know that I am really into deploying applications and systems with deb and rpm packages whenever possible. One of the things you will eventualy want to do, to make deb and rpm package deployment easier, is to create a remote apt or yum repo to host your packages. One of the cooler tricks I have come up with in recent…
Building a Simple Deb Package All of the hip kids today are into deploying packages and complex systems with things like Ansible, Docker, Chef, Puppet, Vagrent and Salt Stack. While these deployment tools are awesome, you should not forget about good old fashioned system packages for application deployment. I fully understand there are times when some of these newer deployment tools are a better…
This documentation goes though the process of building a Yocto Linux image via simple make files for the Intel Edison board. The make file method for building Yocto images is much simpler than the manual build methods. The make files provided by Intel in the BSP Edison source package wrap the build process with scripts to make building an extremely simple process. Most of the base steps found in…
This documentation goes though the process of manually building a Yocto Linux image for the Intel Edison hardware. The build techniques used here do not use the easier make file method which is now available in the Intel Edison Board Support Package (BSP) source. For documentation on building via the make file method, I will do a follow up post which explains that process in detail. The manual…
This writeup goes over details on how to build and install a Kali Linux image for an Overo Gumstix board. The build notes and images in this post are for a stock Kali Linux OS configured for a Gumstix Overo device. The Kali image is configured for easy SSH network access over wired, wireless or USB when the Gumstix device is powered. In order to create as Kali Linux device that resembled a USB…
This writeup goes over details on how to build and install a Debian Wheezy Linux image for an Overo Gumstix board. The build notes and images in this post are for a stock Debian Wheezy OS configured for a Gumstix Overo device. The Debian image is configured for easy SSH network access over wired, wireless or USB when the Gumstix device is powered. This Debian build utilizes the kernel, modules and…
This writeup goes over some basics on how to build and install a Yocto Linux image for an Overo Gumstix board. The Yocto build described in this document can be directly installed on a Gumstix board or you can utilize the kernel, modules and firmware it creates to construct other Linux distributions (Debian, Kali, Ubuntu, Fedora, etc) for your Gumstix board. Here is a short summary of what this…
Ill start this post off by saying, I am not a huge Windows fan, but due to my line of work, I must keep up with Windows as much as possible. One of the newest features which actually excites me is the addition of the windows command line package management system called OneGet which can be found in the latest versions of Powershell and Windows. If you are familiar with Linux based package…
In 2013 I released the "Bluetooth Device Database" project and spoke about it at DEFCON 21. Recently, I grew tired of paying my EC2 bill and decided to retire the project. All of the source code used to create the clients and server is still available in my bluetoothdatabase github repo . The slides and videos from the DEFCON 21 talk can be found here . If you have any questions about the project…
In mid 2013 I gave a talk at a conference called Lockdown in Wisconsin. During the talk I released a pure python library for parsing rudimentary bluetooth baseband data and interacting with an Ubertooth USB device. The core Ubertooth C libraries and tools are much more robust (and faster), but the pure python implementation provided the following: Quick deployment with no need for compiling. Rapid…
At DEFCON 21 I gave a talk about tracking bluetooth devices on a large scale. The videos from this presentation are now available here . During the presentation I released an IOS tool which sideloaded bluetooth functionality to allow an iphone to track other bluetooth devices. The tool then sent the data to a web service for storage & analysis. The code used to create the IOS sensor node and the…
I will be giving a talk titled "Passive Aggressive Bluetooth Scanning with Python" at BSides LA on 8/22/13. Here is a summary of the talk: Bluetooth devices can be scanned either though active or passive techniques. Active scanning is done with commodity bluetooth hardware and utilizes fundamental bluetooth features whereas passive scanning techniques require specialized hardware and software…
I will be speaking at DEFCON 21 this year about a project of mine titled "The Bluetooth Device Database". In short, this is a fun project of mine that shows how track-able people are by discoverable bluetooth devices. Here is a summary of the talk: As of 2013, it is estimated that there are now billions of bluetooth devices deployed worldwide. The goal of the Bluetooth Database Project is to track…
I will be giving a talk titled "Passive Bluetooth Monitoring with Scapy and Pandas" at Lockdown 2013. During this talk, I will be boring the audience with some Pandas data analytics as well as releasing some new tools. Included in these tools is a rough proof of concept pure python bluetooth baseband library for use with the Ubertooth dongle. The slides, demo code and other content will be…
The video, slides and content from my Ubertooth/Scapy talk at Blackhat USA 2012 is now available here . This talk was a shorter version of my DEFCON 20 talk. Here is a summary of the content: Recognizing a need to support passive bluetooth monitoring in Scapy, Python's interactive monitoring framework, a project was launched to produce this functionality. Through this functionality, a new means…
There is a nice writeup of my Scapy/Ubertooth talk over at lavamonky.com . Ive gotten a lot of great feedback on the project and love hearing what others have to say about it. Here is a direct link to the article if you are interested.
SUMMARY Well, I had a great time presenting my talk at Blackhat and Defcon this year. I got some great feedback and met some awesome people. If you were not at the conference or want the most up to date versions of my content, here are links to everything... SLIDES Here is a link to the slides from my talks. These are more up to date then the ones on the conference media and are the ones I…
Compiling the bluez software in linux is fairly straight forward, but getting getting the bluez test applications to build can be a pain your first time doing it. The test tools included with the source give us many cool applications not typically installed with ubuntus binary bluez package (i.e. apt-get install bluez). One of the applications included in the test tools that I use all the time is…
The following tutorial is a step by step guide on how I go about setting up Kismet with uberooth support on a fresh ubuntu 12.04 install. The guide will work on both 32 and 64 bit OS variants and can also be altered to work on other distros. This tutorial assumes you already have a working ubertooth setup. If you do not, please follow my other guides on this site for setting up your ubertooth…
Keeping the firmware on your Ubertooth up to date with the latest code changes will give you access to the newest fixes and features available for the device. It is not clearly evident to all uses that the software for this device is in constant growth and not automatically updated, so this tutorial will help you quickly learn how you can sync your firmware with the latest greatest device code.…
NOTE: The latest ubertooth source builds now instruct you on how to do this. You can follow their steps or use this if you like. The config changes in this tutorial are also helpful if you want non root access to your other usb devices. I try to avoid running arbitrary software as root whenever possible. By applying this simple udev rule, you will not have to worry about running your ubertooth…