Более десяти лет злоумышленники могли манипулировать официальными ссылками Python Software Foundation в разделе загрузок на Python.org. Об этом сообщается в уведомлении (откроется в новом окне), опубликованном самой пострадавшей организацией. Причиной, по имеющимся данным, стала уязвимость в системе безопасности, позволявшая обходить аутентификацию API управления релизами платформы.
Указывается, что при указании имени администратора в сочетании с любым ключом API запросы к API обрабатывались с правами администратора. Это, как сообщается, позволяло злоумышленникам манипулировать метаданными официальных релизов Python, которые размещаются на Python.org/downloads (откроется в новом окне).
Изменять сами оригинальные файлы релизов было невозможно, однако можно было подменять ссылки для загрузки соответствующих файлов. Таким образом, злоумышленники могли размещать вредоносное ПО на собственном сервере и ссылаться на него через официальные ссылки для загрузки Python.
Нет свидетельств использования уязвимости
В последнее время аналогичные проблемы безопасности возникали и в других программных проектах, таких как JDownloader, CPU-Z и HWMonitor. В тех случаях уязвимости действительно использовались злоумышленниками, в результате чего пользователи частично загружали вредоносное ПО с официальных страниц загрузки поставщиков.
В Python Software Foundation, насколько известно на данный момент, подобных атак не было. Однако организация также признаёт, что из-за давности уязвимости это невозможно установить с уверенностью. Уязвимость была внедрена ещё в феврале 2014 года (откроется в новом окне).
Столь старых протоколов и резервных копий для проверки возможного вмешательства в метаданные у Фонда больше нет. Тем не менее, организация считает маловероятным, что злоумышленники использовали уязвимость, поскольку, учитывая множество вспомогательных инструментов и каналов распространения с автоматическими проверками подписей, это было бы "заметно" и быстро обнаружено.
Исправление и аудит
Уязвимость была обнаружена ещё 23 февраля. Уже на следующий день было реализовано исправление. После этого Python Software Foundation проверила систему с помощью инструментов ИИ и аудита экспертов по безопасности из Trail of Bits (откроется в новом окне) на предмет других возможных проблем, связанных с аутентификацией. В ходе проверки, как сообщается, других уязвимостей выявлено не было.