Интернет-выборы (США) взломали за 36 часов

Система интернет-голосования, испытания которой начались в округе Колумбия, США, в конце прошлого месяца, была взломана через 36 часов после начала работы. Исследователи из Мичиганского университета сумели получить «почти полный контроль» над системой.

Система Digital Vote by Mail [1], на разработку которой было потрачено $300 тысяч из государственного бюджета, предназначена в первую очередь для использования гражданами США, находящимися за пределами страны. Избирателям предлагается скачать PDF-файл бюллетеня и либо распечатать его, заполнить от руки и отослать обычной почтой, либо внести в него изменения в электронном виде и выгрузить обратно на сервер.

Именно вторая возможность и заинтересовала профессора Джей Алекса Хэлдермана (J. Alex Halderman), который с помощью двух своих студентов принялся искать «дыры» в этой системе.

На первый взгляд она представляется вполне секьюрной: каждый избиратель заранее получает 16-значный PIN-код для входа в систему, заполненный PDF-бюллетень шифруется на стороне сервера и хранится в таком виде на жёстком диске, а после выборов эти файлы переносятся на компьютер, не подключённый к сети, где расшифровываются и распечатываются для традиционной процедуры подсчёта голосов.

Однако Digital Vote by Mail, что вполне естественно, написана на стандартном языке программирования (а именно, в среде Ruby on Rails), использует стандартные средства для работы с базой данных (MySQL) и работает на стандартном веб-сервере (Apache). Более того, коды этой системы открыты. Соответственно, поиск «дыр» в этой системе — задача вполне осуществимая, чем и занялась группа Хэлдермана.

«Дыра» нашлась в той части софта, который занимается обработкой заполненных PDF-бюллетеней. Оказалось, что при сохранении шифрованных файлов на сервер система генерирует для них собственные имена, однако сохраняет расширения, полученные от пользователей. В обычной ситуации таким расширением является «.pdf», но на практике хакеры могли скормить системе в качестве расширения файла едва ли не любую строку.

А поскольку при обработке PDF-бюллетеня использовалась утилита командной строки, которой имя файла передавалось в качестве параметра, это позволило исследователям осуществить шелл-инъекцию: передать в «расширении» собственную команду для сервера.

Хакеры воспользовались уязвимостью в полной мере. Для начала они собрали массу хранившейся на сервере критической информации, включая логин и пароль к базе данных, а также публичный ключ, при помощи которого шифруются бюллетени. Затем они подменили все принятые «голоса» избирателей своими и настроили систему так, чтобы аналогичным способом подменять все новые бюллетени — благо ключ для шифрования у них уже был. Кроме того, они установили бэкдор, с помощью которого просматривали все новые «голоса», перехватывая и записывая их в незашифрованном виде вместе с именами избирателей.

Наконец, поскольку перед ними не стояла задача действовать скрытно, исследователи модифицировали веб-страничку, которая демонстрируется пользователям после успешной выгрузки заполненного бюллетеня на сервер. Визуально эта страничка [2] ничем не отличалась от оригинальной, разве что через 15 секунд после её открытия проигрывался гимн футбольной команды Мичиганского университета.

Только благодаря этой весьма бодренькой песне и было обнаружено вторжение в систему, да и то лишь через двое суток. Систему интернет-голосования тут же прикрыли, и она возобновила работу лишь через несколько дней, да и то без возможности голосовать в электронном виде. Теперь Digital Vote by Mail будут целый год укреплять общими усилиями (благо она опенсорсная), хотя изначально планировалось использовать её в «полевых условиях» уже через месяц после испытаний.

Хэлдерман, который на днях подробно описал [3] работу своей хакерской группы, уверен, что, хотя найденную ими «дыру» и очень легко прикрыть, в системе наверняка имеется масса других критических уязвимостей. Исследователи уже обнаружили несколько проблемных мест и увиденное ими свидетельствует в пользу того, что система сама по себе очень хрупкая: одна крохотная ошибка может разрушить всю защиту.

«Ничто из этого не станет неожиданностью для экспертов по интернет-безопасности, знакомых со многими типами атак, от которых регулярно страдают крупные веб-сайты, — пишет Хэлдерман. — Возможно, когда-нибудь удастся разработать безопасный метод для передачи бюллетеней через Интернет, но до тех пор такие системы следует считать уязвимыми, учитывая ограничения современных технологий безопасности».

Автор Игорь Крейн
Создано 08/10/2010 — 13:03
https://webplanet.ru

Ссылки
[1] https://www.dcboee.us/DVM/
[2] https://www.cse.umich.edu/~jhalderm/pub/dc/thanks/
[3] https://www.freedom-to-tinker.com/blog/jhalderm/hacking-dc-internet-votin…