EKOPARTY CTF 2016 Write-up часть 1
С 26 по 28 октября 2016 проходило международное CTF-событие EKOPARTY CTF 2016, в котором участвовала наша команда Swampers. Среди 721 участника Swampers заняли 44 место.
Мы решили выложить на сайте решения заданий конкурса (write-ups). Сегодняшняя часть посвящена заданиям разделов FBI и Forensics.
EKO fbi 25 Welcome to the dark side
Задача: At Silk Road, every precaution is made to ensure your anonymity and security, from connecting to the site, to making your transactions, to receiving your items.
https://silkroadzpvwzxxv.onion
Решение: Заходим на указанный сайт через Tor-браузер. В исходном коде страницы записан флаг.
EKO for 50 Certified Excel Hacker
Задача: Can you wait for the answer?
Решение: Скачиваем приложенный excel-файл и видим, что на базе макросов реализована какая-то работа. Код макросов посмотреть нельзя без пароля. Выполняем манипуляции по смене пароля (в бинарном файле меняем сигнатуру DPB на DPx) и получаем доступ к макросам. В коде макроса, который отвечает за вывод кода на основной странице excel’я много предупреждений, что это не ответ. Значит, надо смотреть в другую сторону. Видим страницу данных, которая называется answer. Разблокируем ее и видим флаг.
r2C +17 d17
rF0 r2C -17 u17
r33 +0B d0B
r43 +0C d0C
rF0 r33 -0B u0B
rF0 r43 -0C u0C
r1B +16 d16
rF0 r1B -16 u16 r29 +2C d2C
r43 +0C d0C rF0 r29 -2C u2C
rF0 r43 -0C u0C r1B +16 d16
rF0 r1B -16 u16 r29 +2C d2C
rF0 r29 -2C u2C
r35 +1C d1C
rF0 r35 -1C u1C r44 +12 d12
r3C +18 d18
rF0 r44 -12 u12
rF0 r3C -18 u18 r2D +15 d15
r29 +2C d2C rF0 r2D -15 u15
rF0 r29 -2C u2C r2B +09 d09
rF0 r2B -09 u09 r4B +0F d0F
rF0 r4B -0F u0F r1C +04 d04
r34 +0A d0A rF0 r1C -04 u04
rF0 r34 -0A u0A
r29 +2C d2C
rF0 r29 -2C u2C
r59 +E5 dE5
r24 +08 d08
rF0 r24 -08 u08
r42 +0E d0E
r44 +12 d12 rF0 r42 -0E u0E
rF0 r44 -12 u12
rF0 r59 -E5 uE5
r12 +E1 dE1
r54 +2F d2F
rF0 r54 -2F u2F
rF0 r12 -E1 uE1
r33 +0B d0B
r44 +12 d12 rF0 r33 -0B u0B
rF0 r44 -12 u12
r4B +0F d0F
rF0 r4B -0F u0F r1C +04 d04
rF0 r1C -04 u04
r4D +13 d13
r43 +0C d0C
rF0 r4D -13 u13 rF0 r43 -0C u0C r1C +04 d04
rF0 r1C -04 u04 r31 +11 d11 r44 +12 d12
rF0 r31 -11 u11 rF0 r44 -12 u12
r4B +0F d0F
r1C +04 d04 rF0 r4B -0F u0F
rF0 r1C -04 u04
r12 +E1 dE1
r5B +30 d30
rF0 r5B -30 u30
rF0 r12 -E1 uE1
r11 +E0 dE0
r21 +06 d06
1. What is it? We can find a part of the file in Google.
2. But after a while, we found it.
3. Okay, this is a log file of an HID Keyboard.
4. We open USB HID usage table USB HID.
5. The flag format EKO{} encoded, looks like this: +08 +0e +12 +2f +30.
6. We later quickly find encoded text. Get the flag: EKO{HOLAPIANOLA}
EKO for 125 Knock Knock
What are they talking about?
Extract an archive. View file "nanunanu".
;Rate: 1000000
;Channels: 5
0000000a@0
00000008@5
0000000a@17
00000008@23
0000000a@29
00000008@35
0000000a@41
00000009@48
0000000b@54
..........
1. We can see a dump. Let's go deeper. First, we can see that every moment we send/receive 1-byte. Using this we can propose possible protocols: it could be RS-232 (UART), USB, 1-Wire, CAN, I2C.
2. Open this file in protocol analyser. I've used Logic Sniffer
3. Possibly it can be I2C.
4. I2C interface uses 2 bus: SDA and SCL. If you watch more properly, you can see that Channel 1 is SCL and Channel 0 is SDA.
5. Decode a message from ASCII. Get the flag: EKO{oh..icu2}