Slidy na talks.grsc.cz/hwhx2
European Coal and Steel Community
Eurovision Cover Song Contest
European Cybersecurity Challenge
Organizuje ENISA
Wooo, byrokracie!
Česká kvalifikace je Kybersoutěž
Existuje OpenECSC (každý rok jiné)
Capture The Flag
Jeopardy × Attack/Defence
The hardware equipment necessary to solve the hardware challenges is provided by the organizers; players are not allowed to use any additional tool to solve the hardware challenges apart from their laptops.
:(
FUNCTION | PIN | PIN | FUNCTION |
---|---|---|---|
FPGA_CLOCK | 1 | 2 | FPGA_RST |
FPGA_I0 | 3 | 4 | FPGA_O0 |
FPGA_I1 | 5 | 6 | FPGA_O1 |
FPGA_I2 | 7 | 8 | FPGA_O2 |
FPGA_I3 | 9 | 10 | FPGA_O3 |
N/A | 11 | 12 | SLOT_MACHINE_LEVER |
N/A | 13 | 14 | N/A |
CPU_I2C_SDA | 15 | 16 | CPU_I2C_SCL |
CPU_UART_RX | 17 | 18 | CPU_UART_TX |
GND | 19 | 20 | CPU_RST |
🌍 23 🏳️ 🏛️ 21 🏳️ 🏆 76
🏷️ hardware
I need a UART to I2C converter, use the slice!
📩 BOARD.md
📩 SLICE_POWER.jpg
# | Time | User |
---|---|---|
1 | 2024-10-09 10:27:59 | Team Australia 🧳 |
2 | 2024-10-09 11:11:14 | Team Luxembourg |
3 | 2024-10-09 11:14:00 | Team Austria |
4 | 2024-10-09 11:22:53 | Team Poland |
5 | 2024-10-09 11:35:56 | Team Switzerland |
6 | 2024-10-09 11:40:31 | Team Estonia |
7 | 2024-10-09 12:06:12 | Team Cyprus |
8 | 2024-10-09 12:10:20 | Team Romania |
9 | 2024-10-09 12:43:36 | Team Denmark |
10 | 2024-10-09 13:50:52 | Team Czech Republic (Team Czech Republic) |
11 | 2024-10-09 13:52:57 | Team Portugal |
12 | 2024-10-09 13:54:59 | Team Finland |
13 | 2024-10-09 14:04:55 | Team Croatia |
14 | 2024-10-09 14:07:02 | Team Slovakia |
15 | 2024-10-09 14:18:36 | Team Latvia |
16 | 2024-10-09 14:20:11 | Team Sweden |
17 | 2024-10-09 15:00:58 | Team Serbia |
18 | 2024-10-09 15:09:44 | Team United States 🧳 |
19 | 2024-10-09 15:09:48 | Team Ireland |
20 | 2024-10-09 15:27:54 | Team Italy |
21 | 2024-10-09 16:04:32 | Team Bulgaria |
22 | 2024-10-09 16:24:35 | Team Netherlands |
23 | 2024-10-09 17:28:19 | Team Belgium |
PGA Program version: 0x1 Available Program version: 0x1 Welcome to the pizza challenges _______ | ~~--. |%=@%%/ |o%%%/ __ |%%o/ _,--~~ | |(_/ ._ ,/' m%%%%| |o/ / `\. /' m%%o(_)%| |/ /o%%m `\ /' %%@=%o%%%o| /(_)o%%% `\ / %o%%%%%=@%%| /%%o%%@=%% \ | (_)%(_)%%o%%| /%%%=@(_)%%% | | %%o%%%%o%%%(_|/%o%%o%%%%o%%% | | %%o%(_)%%%%%o%(_)%%%o%%o%o%% | | (_)%%=@%(_)%o%o%%(_)%o(_)% | \ ~%%o%%%%%o%o%=@%%o%%@%%o%~ / \. ~o%%(_)%%%o%(_)%%(_)o~ ,/ \_ ~o%=@%(_)%o%%(_)%~ _/ `\_~~o%%%o%%%%%~~_/' `--..____,,--' 1. UART to I2C 2. PIN 3. Slot Machine >
1 SEND THESE MESSAGES VIA I2C TO THE ADDRESS 0x42 (1 MESSAGE PER LINE) 0x88 0x11 0x93 0x13 0xB8 0xE8 0x5F
🌍 19 🏳️ 🏛️ 19 🏳️ 🏆 96
🏷️ hardware
Look at my new numeric PIN protected flag, you cannot guess it!
Note: the documentation is in the UART to I2C
challenge
# | Time | User |
---|---|---|
1 | 2024-10-09 11:00:00 | Team Australia 🧳 |
2 | 2024-10-09 11:30:18 | Team Luxembourg |
3 | 2024-10-09 11:55:38 | Team Austria |
4 | 2024-10-09 13:12:12 | Team Denmark |
5 | 2024-10-09 13:15:20 | Team Serbia |
6 | 2024-10-09 14:13:24 | Team Iceland |
7 | 2024-10-09 14:18:32 | Team Romania |
8 | 2024-10-09 14:19:15 | Team Cyprus |
9 | 2024-10-09 14:35:47 | Team Belgium |
10 | 2024-10-09 14:47:13 | Team Finland |
11 | 2024-10-09 14:50:13 | Team United States 🧳 |
12 | 2024-10-09 15:00:10 | Team Czech Republic (Team Czech Republic) |
13 | 2024-10-09 15:22:39 | Team Ireland |
14 | 2024-10-09 16:05:27 | Team Latvia |
15 | 2024-10-09 16:14:10 | Team Sweden |
16 | 2024-10-09 16:17:23 | Team Poland |
17 | 2024-10-09 16:21:37 | Team Italy |
18 | 2024-10-09 16:24:40 | Team Netherlands |
19 | 2024-10-09 16:58:20 | Team Estonia |
FPGA Program version: 0x1 Available Program version: 0x1 Welcome to the pizza challenges _______ | ~~--. |%=@%%/ |o%%%/ __ |%%o/ _,--~~ | |(_/ ._ ,/' m%%%%| |o/ / `\. /' m%%o(_)%| |/ /o%%m `\ /' %%@=%o%%%o| /(_)o%%% `\ / %o%%%%%=@%%| /%%o%%@=%% \ | (_)%(_)%%o%%| /%%%=@(_)%%% | | %%o%%%%o%%%(_|/%o%%o%%%%o%%% | | %%o%(_)%%%%%o%(_)%%%o%%o%o%% | | (_)%%=@%(_)%o%o%%(_)%o(_)% | \ ~%%o%%%%%o%o%=@%%o%%@%%o%~ / \. ~o%%(_)%%%o%(_)%%(_)o~ ,/ \_ ~o%=@%(_)%o%%(_)%~ _/ `\_~~o%%%o%%%%%~~_/' `--..____,,--' 1. UART to I2C 2. PIN 3. Slot Machine >
2 Insert PIN:
Insert PIN: 1000 Wrong PIN Insert PIN: 1001 Wrong PIN
Insert PIN: 1000 Wrong PIN Insert PIN: 1001 Wrong PIN Insert PIN: 1002 Wrong PIN Insert PIN: 1003 Wrong PIN Insert PIN: 1004 Wrong PIN Insert PIN: 1005 Wrong PIN Insert PIN: 1006 Wrong PIN Insert PIN: 1007 Wrong PIN Insert PIN: 1008 Wrong PIN Insert PIN: 1009 Wrong PIN Too many retries
🌍 10 🏳️ 🏛️ 9 🏳️ 🏆 176
🏷️ hardware
We have this FPGA programmed with a finite state machine (FSM), it was outsourced, we lost the documentation and we think the contractor installed a backdoor in order to get the FLAG.
Note: the documentation is in the UART to I2C
challenge
📩 3.FSM.md
📩 FSM.png
# | Time | User |
---|---|---|
1 | 2024-10-09 12:04:44 | Team Australia 🧳 |
2 | 2024-10-09 12:11:51 | Team Czech Republic (Team Czech Republic) |
3 | 2024-10-09 12:29:19 | Team Sweden |
4 | 2024-10-09 14:38:58 | Team Austria |
5 | 2024-10-09 14:59:15 | Team Denmark |
6 | 2024-10-09 14:59:46 | Team Switzerland |
7 | 2024-10-09 15:13:09 | Team Luxembourg |
8 | 2024-10-09 15:54:10 | Team Romania |
9 | 2024-10-09 17:41:29 | Team Ireland |
10 | 2024-10-09 17:48:51 | Team Italy |
🌍 2 🏳️ 🏛️ 1 🏳️ 🏆 500
🏷️ hardware
A casino hired you to find out why some players win the slot machine all the time. You're given the source code of the slot machine.
HAL_GPIO_EXTI_Callback
is the challback of an interrupt on the pin: SLOT_MACHINE_LEVER
Note: the documentation is in the UART to I2C
challenge
📩 slot_machine.c
# | Time | User |
---|---|---|
1 | 2024-10-09 15:04:14 | Team Australia 🧳 |
2 | 2024-10-09 17:27:20 | Team Denmark |