
24-27 апреля на площадке Уральского федерального университета (Екатеринбург) в седьмой раз проводились открытые межвузовские соревнования по защите информации в формате игр CTF (Capture the flag, «захвати флаг») — RuCTF. Прибывшим на встречу финалистам отборочных туров RuCTF 2015 предложили посостязаться в двух конкурсах: командном квесте «Hack the tank!» и личном первенстве Всероссийской олимпиады по информационной безопасности. Сразу отметим, что победителем олимпиады стала команда хозяев встречи из УрФУ. А вот в состязании «Hack the tank!», сочетающем робототехнику и CTF-контест, первенство досталось гостям: молодым IT-специалистам из команды Балтийского федерального университета имени И. Канта (Калининград).
На импровизированном полигоне-лабиринте, находившемся вне поля прямой видимости участников, сновали модели дистанционно управляемых платформой virt2real по Wi-Fi моделей легендарных танков Т-34 и КВ-1С. На их борту находилось компьютерное оснащение, включая web-камеры и Wi-Fi-адаптеры. Основная задача боевых машин в масштабе состояла в фиксации приклеенных к полу RFID-меток, являвшимися своеобразными «флагами для захвата». Командам требовалось находить решения для перехвата доступа к управлению танками, чтобы с их помощью фиксировать для набора баллов в командный зачет RFID-метки.
Управлялись все танки по сетевому принципу. Причем, сеть делилась на две точки доступа, и каждая из них держала на связи по 4 танка. Чтобы не перебивать друг друга, точки доступа были разнесены на удаленные каналы, а значит, на каждый танк приходилась своя виртуальная сеть. Если обобщить, то главной особенностью построения системы управления машинами была специфическая межсетевая организация маршрутизации. И для команд было весьма проблемно осуществлять проникновение в эти ресурсы.
Для ведения киберборьбы участникам были предоставлены микрокомпьютеры Raspberry Pi 2 Model B, имеющие, несмотря на скромный размер, весьма внушительные характеристики. А также — плата под управлением процессора Мультиклет уральской разработки. Вся эта техника позволяла молодым IT-профессионалам в процессе состязания активно исследовать и эксплуатировать 6 сервисов: 2 — на скриптовых языках программирования (C++, Python, Perl и т.д.), 2 — на реверс инжиниринговой схеме, 1 — на бинарной методике с исходными кодами, плюс — был еще отдельный сервис по работе с Мультиклетом.
Один из самых простых путей перехвата сетевого управления танками, например, состоял в использовании «монетки», которая давалась в случае решения очередного конкурсного задания, точнее — CTF-таска. С помощью такого инструмента команда могла воспользоваться сервисом «Игровой автомат», благодаря которому удавалось перестроить всю схему маршрутизации при управлении техникой, а также наладить доставку пакетного ПО в виртуальную сеть одного из танков. А учитывая, что танков было меньше, чем команд, то при получении доступа к танку команда-участница автоматически «вышибала» одного из соперников, который до этого имел управление танком. Иначе говоря, сетевая связность между командой и танком появлялась и пропадала в динамичном режиме.
Хотя сервисов с уязвимостями в этом командном квесте совсем не использовалось, однако CTF-таски позволяли всем участникам танкового «хакинга» проявлять свою эрудированность: и по законодательству в области ИБ, и в сфере реверс-инжиниринга, и в форензике («компьютерной криминалистике»), а также стеганографии, математике, физике и даже истории (в рамках викторины по Великой Отечественной войне). Собственно, для того, чтобы молодой «белый хакер» мог захватить и угнать игрушечный танк, всех этих скромных знаний было вполне достаточно.