Day | Time | Duration | |
02 June | Thursday | 09:00 to 17:00 PST/GMT-8 | 8 Hours |
03 June | Friday | 09:00 to 17:00 PST/GMT-8 | 8 Hours |
16 June | Thursday | 09:00 to 17:00 PST/GMT-8 | 8 Hours |
17 June | Friday | 09:00 to 17:00 PST/GMT-8 | 8 Hours |
Both Bluetooth Low Energy and NFC/RFID are wireless technologies extensively used not only in IoT gadgets and toys but also in high-risk devices: access control systems, smart locks, medical, payment and banking appliances. With the growing numbers of such devices, security becomes more and more important, along with the constantly growing demand for specialists in this area.
This unique hands-on course combining BLE and NFC security trainings aims to meet this demand, providing solid understanding of security aspects for both technologies, along with practical skills and included hardware tools for hands-on exercises.
Sign up for just a single topic (2 days BLE or 2 days NFC), or sign up for both in a bundle, and get a discount!
1. What is Bluetooth Low Energy, how it differs from previous Bluetooth versions – introduction.
2. BLE advertisements, broadcasted packets
a) Theory – BLE advertisement packets
b) Scanning for nearby BLE devices’ advertisements: smartphone, command-line, scripts, other tools.
c) BLE Beacons
d) Tracking devices and crowdsourced location (key finders, Apple AirTags, …).
e) Apple, Microsoft devices BLE advertisements.
f) COVID-19 contact tracing / exposure notification BLE packets.
g) Other BLE advertisements – energy meters revealing current indication, sex toys revealing device model, …
h) Bleedingbit – RCE chain via improper BLE advertisements parsing.
3. BLE connections
a) Theory introduction: GATT specification, central vs peripheral device, services, characteristics, connections, …
b) Connecting to your dedicated BLE device using various tools
c) Taking control of simple, insecure devices (BLE dildo, key finder, …)
4. Sniffing BLE
a) BLE RF layer theory introduction
b) Sniffing live raw BLE packets from the air using provided hardware and Wireshark
c) Sniffing demos: smart lock plain text password, banking token OTP
d) Overview of various hardware and open source sniffers: nRF Sniffer, Ubertooth, Btlejack, Sniffle, SDR, …
5. BLE HCI dump – reliably capture own packets
a) Difference from RF layer sniffing
b) Investigate BLE packets intercepted on Android phone in Wireshark
c) Linux command-line hcidump
6. BLE “Machine in the Middle” / remote relay
d) Conditions for MITM, attack scenarios, MAC address cloning
e) BLE MITM / remote relay in practice (local, via Internet), various tools (GATTacker, BtleJuice, Mirage).
f) Abusing proximity autounlock feature via remote relay.
g) Tampering BLE packets via MITM – demo using mobile Point of Sale to alter information displayed on terminal.
7. BLE insecurity case studies
a) Sample smart lock attack: decompile Android application, reverse-engineer BLE protocol commands, identify weakness in protocol, exploit in practice using mobile application
b) Various attacks on proprietary authentication/encryption protocols based on real devices (including several smart locks).
c) Abusing excessive BLE services, hard-coded credentials, remote access share functionality, cloud interface, …
8. BLE link-layer security
a) BLE link layer security mechanisms – introduction, levels, pairing, bonding, why most devices do not implement it at all.
b) Pair the provided smartphone with your dedicated BLE device, sniff the pairing process and crack it.
c) Attacks possible on paired/bonded connections.
d) BLE MAC address randomization, “silent pairing” attacks recovering Identity Resolving Key (for example leveraging contact tracing apps).
e) Abusing trust relationships of bonded devices – vulnerabilities in HID devices, Google Titan U2F token vulnerability technical analysis, attacks via other applications installed on the same mobile phone, …
9. Provided BLE development boards
a) Technical details about provided BLE devboards.
b) How to develop own firmware or adjust included training device source code.
c) Review of provided firmware images / source (sniffer, attack tools, dedicated BLE device).
d) Flashing firmware on the devkits.
10. BLE jamming and hijacking
a) Theory introduction: how to hijack BLE ongoing connections
b) Btlejack, ButteRFly – possible attacks, tools usage.
11. Web Bluetooth
a) Introduction, security design consideration, sample implementations, possible attacks
b) Interact with your BLE device via browser – run sample Web Bluetooth javascript code.
12. BLE device firmware over the air update security
a) Introduction, how the firmware update works, memory layout of BLE SoC.
b) Abuse insecure Over The Air firmware update on provided Nordic Semiconductor SoC.
c) Insecure OTA firmware upgrade in Texas Instruments SoC (taking control over wireless routers, stealing Tesla keys, …).
13. Bluetooth 5 and beyond
a) Introduction, new features, why so many devices claim to be Bluetooth 5 but are not really.
b) New physical layers: 2M, long range coded PHY.
c) New channel hopping RNG.
d) Sniffing BLE5 – current hardware, software support.
14. Bluetooth Mesh
a) Introduction, network topology, BLE4 advertisements as a transport layer, mandatory encryption.
b) Flashing sample Bluetooth Mesh device firmware on a supplied devkit.
c) Provisioning the devices in practice into your own Mesh network
d) Known vulnerabilities and possible weaknesses of Mesh implementations.
15. Other attacks on BLE devices
a) Attacking BLE devices via RF side-channel analysis (e.g. leaking AES key).
b) Vulnerabilities in BLE SDK (e.g. RCE in Nordic SoftDevice)
c) SoC vulnerabilities (memory readout protection bypass, fault injection,…). Sample attack to try out in practice on provided nRF51 development board
16. Brief review of the multitude attacks on BLE protocol and its implementations as well as attack tools (Bleedingbit, Sweyntooth, BlueFrag, KNOB, BIAS, BLESA, BLURTooth, Frankenstein, JackBNimBLE, InjectaBLE, …)
17. Summary, best practices, references, “hackme” challenges…
1. Short introduction
a) RFID/NFC – where do I start?
b) Frequencies, card types, usage scenarios.
c) How to recognize card type – quick walkthrough.
d) Equipment, and what can you do with it – mobile phone, card reader, simple boards, Chameleon Mini, Proxmark, other hardware.
2. UID-based access control
a) Introduction – simple, still surprisingly common technologies
b) Communication between a reader and tag.
c) What is stored on the tag?
d) Low Frequency EM410X (“unique”), HID Prox, …, High Frequecy Mifare UID
e) Cloning card’s UID – cloners, Proxmark, Chameleon, mobile phone, …
f) Simulating (Proxmark, Chameleon, mobile phone,…), brute-forcing.
g) Interpreting markings on the tag, decoding UID from the picture.
h) Sample vulnerability of simple access control reader that allows to unlock it without the need to have a valid card.
i) Countermeasures against attacks
3. Wiegand – typical transmission between the reader and access controller
a) Theory introduction, signal DATA0, DATA1
b) Wiegand sniffers, implants, transmitters – hardware, open source software
c) Decoding card UID from sniffed bytes, clone the card
d) Replay card data on the wire to open lock
4. Mifare Ultralight, NTAG
a) Data structure.
b) Reading, cloning, emulating.
c) Example data stored on a hotel guest card.
d) Ultralight EV1, C.
5. Mifare Classic & its weaknesses – practical exercises based on hotel door lock system, ski lift card, bus ticket
a) Mifare Classic – data structure, access control, keys, encryption.
b) Default, leaked keys.
c) Reading and cloning card data using just a mobile phone.
d) Cracking keys using various attacks and tools (Proxmark, libnfc, Chameleon).
e) Attacks on EV1 “hardened” Mifare Classic.
f) Online attacks against the reader.
6. Reverse-engineering data stored on a sample hotel system guest card
a) Decoding access control data (room number, date) stored on the hotel guest card.
b) Creating hotel “emergency card” to open all the hotel doors unconditionally, having only sample guest card.
7. Mifare DESFire
a) Introduction, data format, access modes.
b) Creating sample tag for DESFire access control system.
c) Publicly known attacks (misconfiguration, implementation issues) in smart locks, access control, ticketing systems.
8. ISO15693/iCode
a) Cloning ISO15693 UID on a “magic UID” card, unlocking smart lock.
b) Data of several example ski passes.
9. HID iClass
a) Cloning “legacy” / “standard security” iClass.
b) Attacks on iClass Elite.
c) Downgrade attacks.
10. Remote relay attacks against NFC/ISO1443
a) Introduction: research, tools, possibilities and limitations.
b) Practical remote relay of iClass SEOS and DESFire access control.
11. Sample Hitag2 access contol – sniffing password mode, simulating tags
12. Host Card Emulation – smartphone as NFC tag
a) Hardware Secure Element vs software Host Card Emulation
b) Protocols, commands, applications – ISO14443-4, 7816-4, APDU, AID, …
c) Example vulnerable HCE access control system (unlocking door using your NFC phone) – sample vulnerabilities.
d) NFC communication analysis: sniffing using Proxmark, dumping on the phone.
13. Intercepting card data from distance – antennas, possibilities and limits.
1. What is Bluetooth Low Energy, how it differs from previous Bluetooth versions – introduction. 2. BLE advertisements, broadcasted packets a) Theory - BLE advertisement packets b) Scanning for nearby BLE devices’ advertisements: smartphone, command-line, scripts, other tools. c) BLE Beacons - iBeacon, Eddystone - Spoofing/cloning beacons to get rewards, free beer, or activate connected underwear d) Tracking devices and crowdsourced location (key finders, Apple AirTags, …). e) Apple, Microsoft devices BLE advertisements. f) COVID-19 contact tracing / exposure notification BLE packets. g) Other BLE advertisements - energy meters revealing current indication, sex toys revealing device model, … h) Bleedingbit - RCE chain via improper BLE advertisements parsing. 3. BLE connections a) Theory introduction: GATT specification, central vs peripheral device, services, characteristics, connections, … b) Connecting to your dedicated BLE device using various tools - nRF Connect mobile application: read/write/notify, automation with macros. - BlueZ command-line - other tools c) Taking control of simple, insecure devices (BLE dildo, key finder, ...) 4. Sniffing BLE a) BLE RF layer theory introduction - Radio modulation, channels, hopping, connection initiation - Why so many devices do not encrypt link-layer - Various sniffing hardware and software options b) Sniffing live raw BLE packets from the air using provided hardware and Wireshark - Wireshark tips&tricks - Capture your own connection from mobile app to your BLE device - How to combine multiple sniffers for better reliability c) Sniffing demos: smart lock plain text password, banking token OTP d) Overview of various hardware and open source sniffers: nRF Sniffer, Ubertooth, Btlejack, Sniffle, SDR, … 5. BLE HCI dump – reliably capture own packets a) Difference from RF layer sniffing b) Investigate BLE packets intercepted on Android phone in Wireshark c) Linux command-line hcidump 6. BLE “Machine in the Middle” / remote relay d) Conditions for MITM, attack scenarios, MAC address cloning e) BLE MITM / remote relay in practice (local, via Internet), various tools (GATTacker, BtleJuice, Mirage). f) Abusing proximity autounlock feature via remote relay. g) Tampering BLE packets via MITM - demo using mobile Point of Sale to alter information displayed on terminal.
7. BLE insecurity case studies a) Sample smart lock attack: decompile Android application, reverse-engineer BLE protocol commands, identify weakness in protocol, exploit in practice using mobile application b) Various attacks on proprietary authentication/encryption protocols based on real devices (including several smart locks). c) Abusing excessive BLE services, hard-coded credentials, remote access share functionality, cloud interface, ... 8. BLE link-layer security a) BLE link layer security mechanisms - introduction, levels, pairing, bonding, why most devices do not implement it at all. b) Pair the provided smartphone with your dedicated BLE device, sniff the pairing process and crack it. c) Attacks possible on paired/bonded connections. d) BLE MAC address randomization, “silent pairing” attacks recovering Identity Resolving Key (for example leveraging contact tracing apps). e) Abusing trust relationships of bonded devices - vulnerabilities in HID devices, Google Titan U2F token vulnerability technical analysis, attacks via other applications installed on the same mobile phone, ... 9. Provided BLE development boards a) Technical details about provided BLE devboards. b) How to develop own firmware or adjust included training device source code. c) Review of provided firmware images / source (sniffer, attack tools, dedicated BLE device). d) Flashing firmware on the devkits. 10. BLE jamming and hijacking a) Theory introduction: how to hijack BLE ongoing connections b) Btlejack, ButteRFly – possible attacks, tools usage. 11. Web Bluetooth a) Introduction, security design consideration, sample implementations, possible attacks b) Interact with your BLE device via browser - run sample Web Bluetooth javascript code. 12. BLE device firmware over the air update security a) Introduction, how the firmware update works, memory layout of BLE SoC. b) Abuse insecure Over The Air firmware update on provided Nordic Semiconductor SoC. c) Insecure OTA firmware upgrade in Texas Instruments SoC (taking control over wireless routers, stealing Tesla keys, …). 13. Bluetooth 5 and beyond a) Introduction, new features, why so many devices claim to be Bluetooth 5 but are not really. b) New physical layers: 2M, long range coded PHY. c) New channel hopping RNG. d) Sniffing BLE5 – current hardware, software support. 14. Bluetooth Mesh a) Introduction, network topology, BLE4 advertisements as a transport layer, mandatory encryption. b) Flashing sample Bluetooth Mesh device firmware on a supplied devkit. c) Provisioning the devices in practice into your own Mesh network d) Known vulnerabilities and possible weaknesses of Mesh implementations. 15. Other attacks on BLE devices a) Attacking BLE devices via RF side-channel analysis (e.g. leaking AES key). b) Vulnerabilities in BLE SDK (e.g. RCE in Nordic SoftDevice) c) SoC vulnerabilities (memory readout protection bypass, fault injection,…). Sample attack to try out in practice on provided nRF51 development board 16. Brief review of the multitude attacks on BLE protocol and its implementations as well as attack tools (Bleedingbit, Sweyntooth, BlueFrag, KNOB, BIAS, BLESA, BLURTooth, Frankenstein, JackBNimBLE, InjectaBLE, …) 17. Summary, best practices, references, “hackme” challenges…
1. Short introduction a) RFID/NFC – where do I start? b) Frequencies, card types, usage scenarios. c) How to recognize card type – quick walkthrough. d) Equipment, and what can you do with it – mobile phone, card reader, simple boards, Chameleon Mini, Proxmark, other hardware. 2. UID-based access control a) Introduction - simple, still surprisingly common technologies b) Communication between a reader and tag. c) What is stored on the tag? d) Low Frequency EM410X (“unique”), HID Prox, …, High Frequecy Mifare UID e) Cloning card’s UID – cloners, Proxmark, Chameleon, mobile phone, ... f) Simulating (Proxmark, Chameleon, mobile phone,...), brute-forcing. g) Interpreting markings on the tag, decoding UID from the picture. h) Sample vulnerability of simple access control reader that allows to unlock it without the need to have a valid card. i) Countermeasures against attacks 3. Wiegand – typical transmission between the reader and access controller a) Theory introduction, signal DATA0, DATA1 b) Wiegand sniffers, implants, transmitters – hardware, open source software c) Decoding card UID from sniffed bytes, clone the card d) Replay card data on the wire to open lock 4. Mifare Ultralight, NTAG a) Data structure. b) Reading, cloning, emulating. c) Example data stored on a hotel guest card. d) Ultralight EV1, C. 5. Mifare Classic & its weaknesses – practical exercises based on hotel door lock system, ski lift card, bus ticket a) Mifare Classic – data structure, access control, keys, encryption. b) Default, leaked keys. c) Reading and cloning card data using just a mobile phone. d) Cracking keys using various attacks and tools (Proxmark, libnfc, Chameleon). e) Attacks on EV1 “hardened” Mifare Classic. f) Online attacks against the reader.
6. Reverse-engineering data stored on a sample hotel system guest card a) Decoding access control data (room number, date) stored on the hotel guest card. b) Creating hotel “emergency card” to open all the hotel doors unconditionally, having only sample guest card. 7. Mifare DESFire a) Introduction, data format, access modes. b) Creating sample tag for DESFire access control system. c) Publicly known attacks (misconfiguration, implementation issues) in smart locks, access control, ticketing systems. 8. ISO15693/iCode a) Cloning ISO15693 UID on a “magic UID” card, unlocking smart lock. b) Data of several example ski passes. 9. HID iClass a) Cloning “legacy” / “standard security” iClass. b) Attacks on iClass Elite. c) Downgrade attacks. 10. Remote relay attacks against NFC/ISO1443 a) Introduction: research, tools, possibilities and limitations. b) Practical remote relay of iClass SEOS and DESFire access control. 11. Sample Hitag2 access contol – sniffing password mode, simulating tags 12. Host Card Emulation – smartphone as NFC tag a) Hardware Secure Element vs software Host Card Emulation b) Protocols, commands, applications – ISO14443-4, 7816-4, APDU, AID, … c) Example vulnerable HCE access control system (unlocking door using your NFC phone) – sample vulnerabilities. d) NFC communication analysis: sniffing using Proxmark, dumping on the phone. 13. Intercepting card data from distance – antennas, possibilities and limits.
Trainer, speaker, pentester and IT security consultant with over 15 years of experience. Participated in countless assessments of systems’ and applications’ security for leading financial companies, public institutions and cutting edge tech startups. Has an MSc in automation&robotics, developed secure embedded systems certified for use by national agencies. Currently Slawomir researches security of new technologies (especially Bluetooth Low Energy and NFC/RFID) and provides relevant trainings – based among others on electronic locks and access control systems (www.smartlockpicking.com). Beside research and training, he focuses on consulting and designing of secure solutions for various software and hardware projects, during all phases – starting from a scratch.
Previously gave talks, workshops or trainings at HackInTheBox Amsterdam, BlackHat USA, HITB Cyberweek, HackInParis, multiple Appsec EU, Deepsec, BruCON, Confidence, Devoxx and many other events.
Training score :
Instructor: 90%
Course material: 91%
“Well prepared training, due to the amount of tools and equipment also easy to continue at home.”
“Trainer did a good job in preparing all the labs. Really gorgeous.”
“The best thing with this course is the instructor and our ability to do all exercise back at home.”
“Great instructor, well maintained materials had a lot of experience.”
” I am amazed how well everything is prepared.”
“Great instructor, lot’s of information, topics and exercise to practise at home.”