METABYTE
К списку статей

curl | bash — хакерский рай: почему разработчики сами себе злобные буратины

Установка софта через curl | bash — это как пригласить хакера на чай и дать ему ключи от квартиры.

13 мая 20262 мин чтения
curl | bash — хакерский рай: почему разработчики сами себе злобные буратины

Разработчики, признавайтесь: сколько раз вы копировали команду с сайта, запускали её через curl | bash и даже не смотрели, что там внутри? Если хоть раз — вы в компании 90% коллег, которые однажды проснутся с криптомайнером на продакшене.

Стив Пул (ex-IBM, ныне гуру безопасности) в своём докладе разложил по полочкам, почему эта практика — чистый бедлам. По его словам, curl | bash — это как дать незнакомцу доступ к вашему терминалу: он может сделать всё что угодно, от установки бэкдора до форматирования диска. И да, без прав администратора тоже есть чем поживиться — например, украсть SSH-ключи или переменные окружения с токенами.

Пул предлагает альтернативы: проверять контрольные суммы (sha256sum), скачивать скрипт и читать его перед запуском, а лучше — использовать пакетные менеджеры с подписями. Звучит как банальность, но мы же ленивые. Особенно когда надо быстро поставить очередной тул для CI/CD, а дедлайн горит.

Что делать, если лень?

  • Используйте curl -L <url> | less, чтобы глянуть код перед запуском.
  • Проверяйте подпись GPG, если автор её предоставил.
  • Запускайте в Docker-контейнере или изолированной среде.
  • Или просто перестаньте быть тем самым разработчиком, который говорит "да ладно, прокатит".

Комментарий METABYTE: Мы, конечно, любим скорость, но безопасность — это не та область, где стоит играть в русскую рулетку. Если вам нужен надёжный пайплайн без сюрпризов, наша команда поможет настроить CI/CD так, что даже curl | bash будет под контролем. А если нет — хотя бы не забудьте про set -e в скриптах.

СЛЕДУЮЩИЙ ШАГ

Понравилось как мыслим?

Применяем те же принципы в клиентских проектах: AI, автоматизации, продукты, которые не умирают после релиза.