A Bluetooth egy olyan protokoll, amely a 2,4-2,485 GHz-es frekvenciatartományban működik. Kis teljesítményű, közeli/térbeli kommunikációra fejlesztették ki 1994-ben. Ez a protokoll szórt spektrumot használ, és biztonsági megoldásként másodpercenként 1600 ugrást végez. A Bluetooth hatótávolsága 10 méter, de a gyártók által az eszközeikbe beépíthető hatótávolságnak nincs korlátja. Sok eszköz hatótávolsága elérheti akár a 100 métert is, amely akár tovább növelhető speciális antennákkal.
Párosításnak nevezzük azt, amikor két bluetooth-eszköz összekapcsolódik. Szinte bármilyen két Bluetooth-eszköz csatlakozhat egymáshoz.
Minden felismerhető bluetooth-eszköz a következő információkat továbbítja:
- Név
- Osztály
- Szolgáltatások listája
- Műszaki információ
A két eszköz párosításakor egy előre megosztott kapcsolati kulcsot cserélnek. Mindkét készülék tárolja ezt a kulcsot, hogy a későbbi párosítás során azonosítani tudja a másikat. Minden eszköz rendelkezik egy MAC címmel (egyedi 48 bites azonosító), és általában egy gyártó által kiadott névvel.
A Bluetooth protokoll stack Linux implementációja a BlueZ (illetve: link1), és a legtöbb Linux disztribúcióban alapértelmezés szerint telepítve van. Az első ábrán látható a Bluetooth stack blokkvázlata.

1. ábra Bluetooth stack blokkvázlata
A "Bluetooth hardware"-t és a "Bluetooth application"-t a felhasználó határozza meg, a többi rész pedig a BlueZ-hez tartozik. A BlueZ számos olyan alkalmazást tartalmaz, amelyekkel a Bluetooth-t használó eszközt felderíthetjük, tulajdonságait megismerhetjük, és akár a segítségével egy sikeres támadás is kivitelezhető.
Ezek a főbb alkalmazások a következők:
-hciconfig: Ez az alkalmazás olyan mint az "ifconfig" (vagy "iwconfig") Linuxban, azzal a különbséggel, hogy a Bluetooth eszközökön működik.
-hcitool: Ezzel az alkalmazással a különböző bluetooth-os eszközök adatai (név, MAC cím, osztály, stb.) kérdezhetők le.
-hcidump: Ez az alkalmazás lehetővé teszi számunkra a Bluetooth-kommunikáció sniffelését.
A protokollrétegeken kívül a Bluetooth specifikáció egy gazdavezérlő interfészt (HCI) is meghatároz. Ez biztosítja az alapsávvezérlőhöz, a hardver állapot- és vezérlőregiszterekhez, stb. való hozzáférést. Ezeknek az alkalmazásoknak a neve is innen ered (pl.: hciconfig, hcidump és hcitool).
Ahhoz, hogy tudjunk Bluetooth eszközöket vizsgálni, szükséges egy olyan USB-s adaptert csatlakoztatni, amelynek a segítségével Bluetooth hálózat látható. Az "Eszközök/USB" menüpontjában tudjuk felcsatlakoztatni ezt az USB-s eszközt a virtuális géphez (ParrotSec OS). Ez a folyamat látható a 2. ábrán.

2. kép Az USB-s eszköz felcsatlakoztatása a virtuális géphez (pl.: ParrotSec, Kali Linux)
Ezután már kiadható a "hciconfig" utasítás, amelynek segítségével a csatlakoztatott eszköz MAC címe, állapota, interfészneve megjeleníthető (3. ábra).

3. kép A hciconfig utasítás alkalmazása. Az eszköz ki- illetve bekapcsolása
Ha szeretnénk kikapcsolni az USB-s eszközünket, akkor a következő utasítás kiadása szükséges:
sudo hciconfig hci0 down
Ha szeretnénk bekapcsolni a korábban felcsatlakoztatott eszközt, akkor a következő utasítást kell alkalmaznunk:
sudo hciconfig up
A bekapcsolás látható a 4. ábrán.

4. kép Használható az USB-s eszközünk
Ha a használt USB-s eszközünk MAC címére és hálózati interfészének a nevére vagyunk kiváncsiak, akkor alkalmazhatjuk a "hciconfig" vagy a "hcitool" utasítások egyikét (5. ábra).
hciconfig dev
vagy
hcitool dev

5. kép Hálózati USB-s eszközünk MAC címének a lekérdezése
Ha szeretnénk scannelni a hálózatot, akkor a következő utasítás kiadása szükséges.
hcitool scan
Ennek segítségével a Bluetooth eszközök listája lekérdezhető. Ha az ún. BLE eszközökre vagyunki kiváncsiak, haszáljuk a "scan" helyett a "lescan"-t.

6. kép A közelben található bluetooth eszközök
A scannelés folyamata nyomon követhető akár a Wireshark program használatával is. Tekintettel arra, hogy a hálózati forgalmat szeretnénk figyelemmel kisérni, ezért rootként (sudo) kell ezt az alkalmazást elindítani (7. ábra).
sudo wireshark &

7. kép A Wireshark segítségével a scannnelés folymata felügyelhető
A "hcitool" segítségével le tudjuk kérni a kiválasztott eszköz nevét, ehhez viszont már ismerni kell az eszköz MAC címét.
hcitool name MAC cím
Az eredmény látható a 8. ábrán.

8. kép A keresett eszköz neve és MAC címe
Lekérhetjük akár a saját eszközünk nevét is (9. ábra).
hciconfig hci0 name
Az eredmény látható a 9. ábrán.

9. kép Eszközünk neve, MAC címe, hálózati neve
Ha a vizsgálandó bluetooth-os eszközről szeretnénk több információt megkapni, akkor az "sdptool" alkalmazást kell használnunk. Az "sdp" a Service Discovery Protocol-ra (SDP) utal. Ennek az alkalmazásával tudunk lekérdezéseket végrehajtani a kérdéses eszközön, megtudhatunk többet a jogosultságokról, stb.
Adjuk ki a következő utasítást.
sdptool browse --tree --l2cap MAC cím
Ennek az utasításnak a hatására kapjuk a következő eredményt, ahol több információ áll már a rendelkezésünkre, mint a korábbi esetekben. Ezzel az alkalmazással kaphatunk meg olyan információkat, amelyek felhasználásával megismerhetünk például sérülékenységeket is a vizsgált eszközön.

10. kép SDP protokoll alkalmazása az "sdptool" segítségével
A cikkünk elején említésre került az, hogy milyen adatok kerülnek továbbításra a bluetooth-t használó eszközöknél. Nézzük meg az egyik ilyen felderített eszköznél ezeket az adatokat, ehhez adjuk ki a következő utasítást.
hcitool inq
Az eredmény a következő ábrán látható.

11. kép A clock és az osztály meghatározása
Ha szeretnénk logolni a kereséseinket, akkor alkalmazhatjuk a "bluelog" programot. A használatára mutat egy példát a következő utasítás.
bluelog -i hci0 -vtn -o FILENÉV
A megtalált eszközöket, tulajdonságaikat (a kapcsolók függvényében) kiírja a megadott file-ba (12. ábra).

12. kép Logolás készítése
Az nmap (grafikus megjelenítésnél a ZenMap) használata az IT biztonság, illetve az üzemeltetés területén dolgozó szakembereknél szinte elkerülhetetlen. Az ingyenes szoftver segítségével tesztelhetők a számítógépeink, a számítógéphálózatunk, vizsgálha. . . .
A Python programozási nyelv nagyon elterjedt a fejlesztők körében. Használják beágyazott rendszereknél, webes alkalmazásoknál, IT biztonság különböző területein, stb. Látható, hogy nagyon széles a felhasználási területe ennek a nyelvnek, ideje volt m. . . .
Bemutatjuk most a saját (!) Wifi-s hálózatunk tesztelésének az alapjait. Megnézzük, hogy hogyan lehet biztonságos jelszót választani. Feltörhetetlen rendszer nem létezik, de megismerve a tesztelés folyamatát, válaszokat kaphatunk arra vonatkozólag, h. . . .