Интернет-выборы (США) взломали за 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
http://webplanet.ru

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

Главная тема: 
Программное обеспечение: 
Пользовательские теги: 
field_vote: 
Пока без оценки

Комментарии

comrade аватар

А если бы коды были закрытыми, и дырка осталась бы до выборов, всё было бы просто отлично?

((((-;

_________________
Анекдоты в жизнь!

Ещё несколько лет назад прочитал:

"Благодаря новой дистанционной системе голосования тысячи русских и китайских хакеров смогли принять участие в выборах президента США."

В любом случае, пока избиратель не сможет проверить свой "голос" после выборов, система голосования будет неэффективна.

comrade аватар

Именно!
Не похоже, что система тайного голосования себя оправдывает!

Она только способствует злоупотреблениям в любом обществе.

Аргумент, что при системе открытого, поимённого, голосования "люди будут бояться", не проходит.
Если дойдёт до такого, то любая система "выборов" будет чистой формальностью!

"Если дойдёт до такого, то любая система "выборов" будет чистой формальностью!"
Почему "будет"??? Она по-большому счёту и так формальность.(Кому надо-тому и припишут лишние голоса.)

comrade аватар

В том то и дело!
"Тайных" голосов можно "сосчитать" сколько угодно - за кого угодно.

Я про это и написал (-:

Абсолютно согласен.Беда в том,что очень многие всё равно будут бояться голосовать открыто.Так может и кворума не получиться.

comrade аватар

В исходном, греческом, значении "идиот" - человек, не интересующийся общественными делами :-)))

Комментировать

Filtered HTML

  • Use [fn]...[/fn] (or <fn>...</fn>) to insert automatically numbered footnotes.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <strike> <code> <h2> <h3> <h4> <h5> <del> <img>
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.