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 |