Назад к вопросам
Middle
3
What is XSS (Cross-Site Scripting)?
Компании, где спрашивали
SecurityTestXSS
Ответ от нейросети
sobes.tech AI
XSS (Cross-Site Scripting) — это уязвимость веб-приложений, при которой злоумышленник внедряет вредоносный скрипт (обычно JavaScript) в контент, который затем исполняется в браузере других пользователей. Это позволяет красть сессионные куки, подделывать действия пользователя, перенаправлять на фишинговые сайты и т.п.
В Go-приложениях XSS предотвращают, корректно экранируя пользовательский ввод при выводе в HTML, используя шаблоны с автоматическим экранированием (например, пакет html/template), а также применяя Content Security Policy (CSP).
Пример безопасного вывода в Go:
import (
"html/template"
"net/http"
)
func handler(w http.ResponseWriter, r *http.Request) {
t := template.Must(template.New("page").Parse(`<div>{{.}}</div>`))
userInput := r.URL.Query().Get("input")
t.Execute(w, userInput) // автоматически экранирует
}
Таким образом, вредоносный код не будет исполнен в браузере.