Как незаметная indirect-зависимость в Go дописала ручку в ваш HTTP-сервер
Все примеры из статьи лежат в репозитории github.com/korableg/init-injection-example. Код «вредоноса» написан в учебных целях — чтобы показать класс проблемы, а не дать готовый инструмент. Запускайте только в песочнице.
История простая: у нас есть аккуратный сервис на net/http с единственной ручкой /time. Мы обновляем одну библиотеку через go get, ничего не меняя в своём коде. После рестарта в сервисе появляется ручка /__injected, которая отдаёт строки из памяти процесса. Мы её не регистрировалиЧитать полностью »
