NoNameBadge
Перший український апаратний бейдж, відкритий для зламу
Специфікація
Основна партія бейджів конференції матиме на борту лише ESP32, 10х WS2812 світлодіодів та декілька тач-кнопок. Цього досить для розваг з завданнями бейджу та, власне, пам’яті про конференцію.
Завдання в бейджі — щось на кшталт Capture the Flag. Хочемо, щоб кожен міг виконати хоча б 1-2 завдання з шести (на момент публікації). Для роботи з завданнями досить мати з собою лептоп, microUSB кабель та встановлений putty/screen.
Під час конференції у відвідувачів буде можливість придбати додаткові модулі по собівартості та власноруч впаяти їх у свій бейдж. Серед модулів:
1. CAN transciever для роботи з автомобільними мережами
2. MPU9050 для розрахунку положення у просторі та… прогнозу погоди
Будова ESP32 дозволяє вивести бажані інтерфейси (UART, I2C, SPI, CAN etc) на будь-які зовнішні піни. Це відкриває для усіх нас можливість під'єднувати до бейджа будь-яку сумісну периферію/сенсори.
Ось це і є нашою метою. Бейдж створюється для надання відвідувачам конференції повноцінної платформи для знайомства зі світом IoT та Embedded. Впродовж 2019 року відбудеться серія вебінарів та воркшопів з використанням бейджів під брендами TechMaker та NoNameCon. Бейдж не повинен збирати пил на полиці. Його роль не обмежується наданням вам доступу до зали конференції. Ви отримуєте квиток у світ розробки пристроїв та їх захисту від сучасних загроз.
Інструкція
Щоб увімкнути бейдж - під’єднайте його до powerbank або USB порту комп’ютера за допомогою microUSB кабеля. Під час першого ввімкнення світлодіоди не горітимуть. Розв'язані завдання запалюватимуть відповідні світлодіоди. “Світловий стан” бейджа допоможе вам знайти співрозмовників серед відвідувачів конференції та за бажання поділитися досвідом.
Після дотику до значка мікроконтролера увімкнеться “веселка”. Послідовні торкання запалюватимуть випадкові кольори на світлодіодах. Щоб повернутися у початковий стан, натисніть кнопку Reset або вимкніть та знову увімкніть живлення бейджу.
На платі розміщені роз'єми для підключення модулів: OLED-екрану, CANbus трансівера, акселерометра/гіроскопу тощо. Під час конференції ви можете спробувати знайти, де їх можна придбати та де припаяти до бейджа.
Увага: бейдж містить схему живлення від Li-Po акумулятора. Світлодіоди під’єднані до 5В лінії живлення і під час живленні від акумулятора не працюють. Це зроблено умисно, так як під час роботи вони можуть споживати значний струм (декілька ампер), що значно скоротить автономну роботу бейджа.
Ваш бейдж містить прошивку з 6 завданнями. Назви та тематика завдань:
- Mr Bean Walker – reverse engineering
- BruteSearcher – web application security
- NoNameCon SpyNet - web application security
- Ployka PWNer - cryptography
- Binary Hero - reverse engineering
- Side Blennel - steganography
Для їх вирішення потрібен ноутбук та інтернет. Завдання не пов'язані між собою. Робота з завданнями починається з підключення до бейджу кабелем USB - microUSB та запуском терміналу (залежно від ОС):
Windows: putty, оберіть COM порт, який призначений ОС
Linux: screen /dev/ttyACM0 115200
macOS: screen /dev/cu.SLAB_USBtoUART 115200
Для Windows 10 та macOS можуть знадобитися драйвери (мають цифровий підпис): https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
Для з’єднання бейджа до інтернет, увімкніть на телефоні tethering та запустіть в BadgeOS команду join з аргументами створеної вами Wi-Fi мережі: join SSID PASSWORD
Телеграм група з обговоренням завдань та анонсами рішень: https://t.me/joinchat/CQN5AxO4dk6-9UJJnk7Pkg
Prototyping
Demo