Dork's port

Linux에서 Ubertooth one 설치하기(Bluetooth sniffing) 본문

Linux

Linux에서 Ubertooth one 설치하기(Bluetooth sniffing)

Dork94 2017. 10. 23. 03:17

 

 

 

 

 

안녕하세요.


오늘은 블루투스 스니핑 도구인 ubertooth one을 리눅스에서 동작하도록 설치를 진행 해보겠습니다.


따라하실때 글 작성일을 잘 보고 최신버전으로 설치하시길 바랍니다.


현재 글 작성일은 2017년 10월 23일 입니다.


ubertooth의 설치 가이드는 https://github.com/greatscottgadgets/ubertooth/wiki/Build-Guide 를 참조하였습니다.


사용 운영 체제는 아래와 같습니다.


# uname -a

Linux kali 4.12.0-kali1-amd64 #1 SMP Debian 4.12.6-1kali5 (2017-08-25) x86_64 GNU/Linux



우선, 설치하시기 전에 빌드할때에 몇가지 패키지가 사용됩니다. 아래의 명령어를 통해 관련 패키지들을 다운 받습니다.


# apt-get install cmake libusb-1.0-0-dev make gcc g++ libbluetooth-dev pkg-config libpcap-dev python-numpy python-pyside python-qt4



다음으로는 Bluetooth baseband library라고 불리는 라이브러리가 bluetooth패킷의 decode에 사용되는 Ubertooth tools를 설치할때에 필요합니다. 따라서 libbtbb(Bluetooth baseband library)를 설치합니다.


# wget https://github.com/greatscottgadgets/libbtbb/archive/2017-03-R2.tar.gz -O libbtbb-2017-03-R2.tar.gz
# tar xf libbtbb-2017-03-R2.tar.gz
# cd libbtbb-2017-03-R2
# mkdir build
# cd build
# cmake ..
# make
# sudo make install

시간에 따라 해당 파일이 삭제되거나 최신버전이 있을 수 있으므로 위의 설치 가이드 링크에서 확인하는 것이 좋습니다.


설치가 처음이거나, library를 찾을 수 없다고 에러가 나오는 경우는 아래의 명령어를 실행합니다.


# ldconfig



다음으로는 Ubertooth tools를 설치할 차례입니다.


# wget https://github.com/greatscottgadgets/ubertooth/releases/download/2017-03-R2/ubertooth-2017-03-# R2.tar.xz -O ubertooth-2017-03-R2.tar.xz
# tar xf ubertooth-2017-03-R2.tar.xz
# cd ubertooth-2017-03-R2/host
# mkdir build
# cd build
# cmake ..
# make
# sudo make install


또한, 설치가 처음이거나, library를 찾을 수 없다고 에러가 나오는 경우는 아래의 명령어를 실행합니다.


# ldconfig





Wireshakr에서는 1.12 이상의 버전에서는 ubertooth BLE plugin을 기본으로 지원합니다. 따라서, BLE(Bluetooth Low Energy, Bluetooth 4.0)패킷을 와이어샤크에서 패킷을 capture하는게 가능합니다.


그러기 위해서는 아래의 과정을 통해 설치를 진행하여야 합니다. 이때, 디렉토리로 추후 다시 돌아와야 하기때문에 이때 작업 디렉토리를 기억해둬야 합니다.



# apt-get install wireshark wireshark-dev libwireshark-dev cmake
# cd libbtbb-2017-03-R2/wireshark/plugins/btbb
# mkdir build
# cd build
# cmake -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu/wireshark/libwireshark3/plugins ..
# make
# sudo make install

위의 명령까지 정상적으로 실행 되었으면, 다시 이전의 작업디렉토리로 돌아와 아래의 명령들을 실행 합니다.


# apt-get install wireshark wireshark-dev libwireshark-dev cmake
# cd libbtbb-2017-03-R2/wireshark/plugins/btbredr
# mkdir build
# cd build
# cmake -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu/wireshark/libwireshark3/plugins ..
# make
# sudo make install


다음은 Ubertooth를 Linux에서 인식시키위하여 아래의 명령어를 실행합니다.



# echo 'ACTION=="add" BUS=="usb" SYSFS{idVendor}=="1d50" SYSFS{idProduct}=="6002" GROUP:="plugdev" MODE:="0660"' > /etc/udev/rules.d/99-ubertooth.rules



그 후 이전의 작업 디렉토리로 돌아가 아래의 명령을 실행합니다.


# cd libbtbb-2017-03-R2/build/ubertooth-2017-03-R2

# cp -r host/build/misc/udev/ /etc/udev/rules.d/
# udevadm control --reload-rules


그리고 재부팅 하여 동작을 확인합니다.



※ 실행이 정상적으로 되지 않거나 ubertooth-scan 명령어를 입력했을 때에 unable to find hci0와 같은 에러코드가 발생한다면 bluetooth가 사용하도록 설정 되어있는지 봐야한다.


kali linux에서는 아래와 같은 명령어로 블루투스를 실행 할 수 있다.


# /etc/init.d/bluetooth start



 

질문은 댓글로 받도록 하겠습니다.

 

 

 

 

 

 

 


Wireshark로 Packet Caputre를 하기 위해서는 다음 포스팅을 참조 바랍니다.

Comments