Безопасность сайта Умного голосования

image-loader.svg

Мы ни на секунду не забываем про вопросы информационной безопасности и не относимся к ним пренебрежительно. ​ Леонид Волков

Первая часть вышла более двух месяцев назад. После второй с сайта убрали Яндекс.Метрику, правда не без говна длинного ответа про «доморощенных экспертов по информационной безопасности и шапочки из фольги». Может после третьей приведут инфраструктуру в порядок.

Сайт Умного Голосования использует API по адресу https://votesmart.appspot.com/api/v1/fiasco

image-loader.svg

у которого не выключен режим отладки, благодаря чему мы видим ироничный адрес бекэнда http://fiasco.navalny-team.org и список маршрутов.

image-loader.svg

Помимо возможности листинга директорий на сервере протух SSL-сертификат, но это уж точно не имеет значения: запросы туда и так идут по HTTP.

image-loader.svg

Берем адрес https://fiasco.navalny-team.org/address/suggest/ из списка маршрутов и получаем ошибку c traceback-ом и настройками сервера.

image-loader.svg

К слову последняя версия Django — 3.2.6, а под используемую на сайте 2.2.8 есть CVE. Видим настройки подключения к базам данных:

image-loader.svg

База данных доступна для внешних подключений на порту 5432 для пользователя test. Это PostgreSQL 10.11 (Debian 10.11–1.pgdg90+1).

image-loader.svg

Судя по таблице cmd_exec с полем cmd_output кто-то уже использовал её для выполнения системных команд. Благо в Metasploit для этого даже есть модуль. Дальше мы можем оказаться внутри контейнера. Информацию по всем контейнерам нам заботливо оставили тут: http://fiasco.navalny-team.org:8888/docker/.

image-loader.svg

И даже чуть больше тут: http://fiasco.navalny-team.org:9100/metrics

image-loader.svg

Правда релиз используемой версии был в 2019 году, потому могут сработать многие методики по повышению привилегий и получению контроля за всей системой.

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

Мы всегда читаем и слушаем все, что нам пишут, признаем ошибки и стараемся работать лучше. ​ Леонид Волков

Вместо заключения хочется оставить цитату Алексея Пивоварова:
«Выводы делайте сами».

© Habrahabr.ru