CSRF - запрос с другого сайта с cookie пользователя. Защита: CSRF-токен в форме и проверка на сервере; SameSite cookie (Strict/Lax) ограничивает отправку cookie при cross-site запросах. В Go генерируют токен при отдаче формы, сохраняют в сессии, при POST проверяют. Для API - не полагаться на cookie; использовать Bearer token или проверять Origin/Referer.
cookie := &http.Cookie{
Name: "session",
Value: token,
SameSite: http.SameSiteLaxMode,
Secure: true,
}
http.SetCookie(w, cookie)