Продолжение серии заметок о неочевидных и опасных поведениях Go, дополнение к первой части 2024 года.
Автор освещает ряд проблем:
- тихие целочисленные переполнения, где тип int зависит от архитектуры, что ведёт к реальным уязвимостям вроде SQL-инъекций через библиотеки сериализации;
- удаление заголовков hop-by-hop в httputil.ReverseProxy, из‑за чего можно сбросить auth-заголовки через Connection;
- мутация net/url при копировании по значению, приводящая к race condition;
- обход аутентификации через null-байты на границе с CGO;
- невызов кастомного MarshalJSON при кодировании по значению — это вызывает утечку sensitive data из‑за reflection;
- а также CSRF-уязвимости из‑за пропущенной валидации Content-Type в паре с игнорированием лишних байт encoding/json.
К статье прилагаются semgrep-правила для поиска этих паттернов.
13.06.2026
Похожее
08.06.2026
Эээксперименты
В Go есть "экспериментальные" возможности, чтобы вы могли опробовать новые функц...
05.06.2026
TigerFS
Файловая система — это просто API. А TigerFS — это файловая система, работающая ...
04.06.2026
Иггдрасиль
В статье про использование Yggdrasil в качестве встраиваемой Go-библиотеки. ...
03.06.2026
Мультиплеер
В статье автор рассказывает про архитектуру управления состоянием своей многопол...