Перейти к основному содержанию

Технические уязвимости американских выборов

От 2003 винды до zip-дисков. Разбираем технические уязвимости американских машин для голосования

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

Первые попытки автоматизировать подсчёт голосов были предприняты в США больше ста лет назад, но современный вид этот процесс приобрёл после скандала на президентских выборах 2000 года. В то время выбор избирателя регистрировался машиной на перфокартах. При повторном пересчёте оказалось, что иногда отверстие в перфокарте пробивалось не полностью, и потом такую карту учитывали неправильно. Разница между кандидатами была минимальной, поэтому даже тысяча неверно засчитанных голосов имела значение.

Так или иначе, президентом стал Джордж Буш. В 2002 году он подписал закон Help America Vote Act (HAVA), согласно которому все устаревшие механические машины для голосования были заменены современными электронными. К сожалению, при этом не были чётко определены требования для нового типа устройств, поэтому на смену старым проблемам пришло множество новых.

Машина для голосования — это такой терминал с тачскрином, на котором пользователь регистрируется и делает выбор. Для доступа к устройству нужно получить у организаторов выборов специальную карту или бумажку со штрихкодом. После использования некоторые машины выдают что-то вроде чека, но это скорее формальность. Насколько я понимаю, чёткой процедуры переучёта чеков в сомнительной ситуации не существует.

Для страховки некоторые машины используют бумажные бюллетени. Процесс выглядит приблизительно так:

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

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

На многих машинах стоят разные версии Windows: XP, 2003 и на одном из самых древних образцов нашлась Windows CE. Ещё есть семейство машин ES&S M650, которые используют QNX. Софт проприетарный, но результаты выборов хранят в базах данных Microsoft Access или SQLite, чтобы после получения доступа к файловой системе у злоумышленника не было особых проблем с редактированием.

В сентябре 2018 года на хакерской конференции Defcon специальная секция Voting Village была посвящена взлому устройств для голосования. Как оказалось, это не такая уж редкая вещь — организаторам удалось скупить на вторичном рынке несколько десятков машин разных производителей. Практически во всех из них нашлись серьёзные проблемы, и при этом для каждого образца в США можно найти округ, где такие машины ещё используются.

Интересно, что в некоторых случаях исследователям Defcon удалось найти на жёстких дисках машин базу данных с информацией о том, кто и как проголосовал.

Одна из самых частых уязвимостей — возможность физического доступа к внутренностям машин. В интернете полно видео (раз, два, три), которые показывают, как открыть корпус без специальных инструментов за пару минут — это очень быстро. На голосование каждый пользователь тратит 8-10 минут, поэтому, чтобы не создавать очереди, на участках одновременно могут устанавливать десятки машин. Часто для соблюдения тайны голосования к ним приделывают большие «крылья», за которыми злоумышленник может легко скрыть свои действия.

Открыв корпус, можно вынуть стандартную карту памяти и заменить её на свою. Как правило, на таких картах находится ПО, управляющее машиной. Какой-нибудь любитель шпилей легко может установить в машине собственную программу, выполняющую «правильный» подсчёт голосов. Реализация такой атаки на машину Sequoia AVC Edge Mk1 демонстрируется в этом видео.

Особенно отличилась машина AVS 2000 WinVote: оказалось, что к ней можно просто подключить USB-клавиатуру, нажать ctrl-alt-del и получить обычный рабочий стол Windows со всеми возможностями.

В других машинах открытые USB-порты используются для обновления ПО. Нужно вставить флешку, на которой есть файл с определённым именем, и перезагрузить машину. В процессе загрузки она подхватит файл, распакует его и дальше уже будет работать так, как нужно злоумышленнику. Более старые машины обновляют ПО с Zip-дисков, но эта технология настолько старая, что хакеру будет сложновато их найти.

Ещё один вектор атаки связан со смарт-картами, с помощью которых идентифицируют избирателей. Предполагается такой алгоритм работы: пользователь получает из рук работника участка карту, использует её для работы с машиной и потом возвращает обратно. Естественно, после использования карта переходит в состояние, которое не позволяет проголосовать повторно. На Defcon выяснилось — карту можно перепрограммировать с помощью обычного смартфона с поддержкой NFC. Ну, или если заморочиться, можно сделать свой программатор на основе Raspberry Pi . Так или иначе, злоумышленник может получить карту, которой можно голосовать неограниченное количество раз.

В некоторых случаях атакующему даже не обязательно находиться на избирательном участке. Уже упоминавшаяся машина AVS WinVote управляется операционной системой Windows 2003 (естественно, её никто никогда не обновляет) и в ней есть работающий Wi-Fi модуль. На Voting Village исследователям удалось использовать древний, давно всем известный эксплойт и получить удалённый доступ к машине.

Отдельный класс устройств — промышленные сканеры бюллетеней. По данным Pew Research Center, практически половина избирателей проживает в округах, где используются бумажные бюллетени, которые потом подсчитываются сканером. О проблемах с безопасностью в таких машинах сообщали ещё в 2007 году, а повторная проверка на Voting Village показала, что ими все ещё можно воспользоваться. С другой стороны, доступ к таким машинам имеют только сотрудники избирательных участков. Теоретически их можно было бы ещё и подключить к интернету, но во всех статьях официальные лица говорят, что никто этого делать не будет.

Все эти хакерские отчёты кажутся страшными, но нужно признать, что в реальной жизни эксплуатация уязвимостей пока ещё не встречалась. В результатах расследования событий, происходивших во время выборов-2016, упоминаются два инцидента, при этом особо подчёркивается, что они не повлияли на результат подсчёта голосов. Один из этих случаев произошёл в штате Иллинойс, где хакерам удалось получить доступ к личным данным девяноста тысяч избирателей.

Попытки взлома онлайн-ресурсов фиксировались и позже. Например, в мае 2018 года во время местных выборов в одном из городов штата Тенесси произошла DDOS-атака и попытка взлома сайта избирательной комиссии. Такие случаи выходят за рамки этой статьи, потому что в целом атаки на веб-сайты хорошо изучены, и такая опасность понятна даже простым людям.

Единственный случай, который мне удалось найти и который имеет хоть какое-то отношение к машинам для голосования, произошёл в 2017 году на выборах в York County: из-за ошибки при программировании определённым кандидатам могли засчитать больше голосов, чем было на самом деле. Ну и ничего, в итоге проигравшая сторона просто признала поражение, и все согласились, что серьёзного влияния на результат выборов не было. Политическая культура победила технические неисправности.

На самом деле основная проблема американских машин для голосования — это их возраст. Тачскрины от старости начинает глючить и они регистрируют случайные срабатывания. Носители данных портятся, а замену для них можно найти только на барахолке. Операционные системы давно изучены, найденные в них дыры описаны во всех блогах. В исследовании ProPublica говорится, что две трети машин, которые использовались в голосовании 2016 года, были старше десяти лет.

Несмотря ни на что, все эти древние уязвимые машины продолжают использоваться. Почему? Основная причина — недостаток финансирования. В начале 2000-х обновление устройств после закона HAVA проходило за деньги, выделенные федеральным правительством. Сейчас всё оборудование для голосования содержится местными властями. Например, в каком-нибудь мелком городке на полторы тысячи жителей бюджет очень ограничен. Городской совет предпочитает тратить деньги не на борьбу с теоретическими угрозами, а на более приземлённые проблемы. В итоге в разных серьёзных статьях эксперты бросаются фразами типа «Мы оставили жителей небольших городков один на один против ФСБ» или «Модернизация избирательного процесса стоит не больше, чем один истребитель F-22», но больше ничего не происходит. Или почти ничего, потому что 19 октября чиновники Департамента национальной безопасности провели брифинг, на котором прозвучал невероятно нужный совет «Go to a trusted source, Think before you link»

С другой стороны, за последние пару лет действия одной злонамеренной страны добавили дополнительные аргументы за модернизацию. Matt Blaze, один из организаторов Defcon, в своём отчёте прямо пишет: «Целью традиционных злоумышленников были махинации на выборах, приносящие победу определённому кандидату... Но целью злоумышленников, работающих на враждебное государство (например, из ГРУ) может быть нарушение избирательного процесса в целом, чтобы заставить людей сомневаться в легитимности результатов. Учитывая, что избирательная система сильно зависит от использования уязвимого ПО и оборудования, эта цель может быть вполне достижима даже на национальном уровне».

Вполне может получиться, что на выборах 6 ноября во многих округах возникнет ситуация с равным распределением голосов. Тогда неизбежно всплывёт тема пересчёта, а следом заговорят и про русское вмешательство. Потом, возможно, Трамп сможет повторить действия Буша и добьётся принятия закона, переводящего избирательный процесс на новый технический уровень.

''отсканируй
и помоги редакции