Хакер #305. Многошаговые SQL-инъекции
На выборах в парламент Австралии подсчёт голосов происходит с использованием программного обеспечения. Дело в том, что итоги выборов в верхнюю палату рассчитываются по необычной формуле. Во-первых, рассчитывается квота, необходимая для прохода каждого кандидата. Во-вторых, «излишние» голоса, полученные в превышение квоты, «переносятся» на ближайшего однопартийца с применением понижающего коэффициента. В-третьих, на остальных кандидатов переносятся голоса наименее удачных кандидатов, набравших меньше всех голосов. Проходит несколько итераций, прежде чем получится окончательный результат.
Поскольку сейчас эти расчёты выполняет компьютерная программа, вполне разумно было бы посмотреть, как она считает. Проприетарная программа с закрытым исходным кодом разработана за стенами Австралийской избирательной комиссии (АИК).
Компьютерщик и юрист Майкл Кордовер (Michael Cordover) из города Хобарт (штат Тасмания) в октябре 2013 года подал запрос на открытие исходного кода программы, воспользовавшись общей формулировкой австралийского Закона о свободе информации.
В декабре 2013 года АИК официально отказалась предоставить документы в каком-либо формате.
Майкл не сдался и продолжил переписку с государственными органами. В июле 2014 года дело дошло до Сената — той самой верхней палаты парламента, члены которой избираются путём подсчёта голосов в «непонятной» программе. Сенат постановил предоставить исходный код программы до 15 июля. Вчера министр внутренних дел ответил, что от публикации исходного кода лучше воздержаться, потому что это «может оставить систему голосования беззащитной перед хакерами и манипуляциями». К тому же, код программы подсчёта голосов якобы защищён в рамках конфиденциального коммерческого соглашения (commercial-in-confidence). То есть это коммерческая тайна.
История на это не заканчивается. Майкл Кордовер твёрдо намерен добиться справедливости, тем более, что у него есть единомышленники в Сенате. На 24 августа 2014 года назначены переговоры между Кордовером и представителями АИК.
Кстати, когда в Ирландии десять лет назад разработчиков системы электронного голосования заставили опубликовать исходный код, там действительно нашли ошибки в алгоритме подсчёта голосов.