JavaScript (JS) — язык программирования веба: он работает в каждом браузере, делая страницы интерактивными, а также на серверах через Node.js.
Как работает JavaScript
JavaScript создал Брендан Айк в Netscape в 1995 году; язык стандартизирован как ECMAScript, новая редакция выходит каждый год. В браузере JavaScript меняет страницу (DOM), реагирует на действия пользователя и загружает данные из API без перезагрузки. Движки V8 (Chrome, Edge), SpiderMonkey (Firefox) и JavaScriptCore (Safari) компилируют его в быстрый машинный код. Вне браузера JavaScript работает на серверах (Node.js, Deno, Bun), в настольных приложениях (Electron) и скриптах автоматизации. Код распространяется через реестр npm — крупнейший репозиторий пакетов в мире.
Чем JavaScript важен для безопасности
- Межсайтовый скриптинг (XSS) — внедрённый скрипт выполняется в браузере жертвы и крадёт сессии или данные; это по-прежнему одна из самых частых веб-уязвимостей.
- Атаки на цепочку поставок — захваченные или «опечаточные» пакеты npm распространяют вредоносный код на тысячи проектов; в 2025 году злоумышленники скомпрометировали широко используемые пакеты и даже запустили самораспространяющегося червя через npm.
- Веб-скимминг — вредоносные скрипты на страницах оплаты крадут данные карт (атаки Magecart).
- Ошибки в движках браузеров — уязвимости V8 и других движков регулярно эксплуатируются как 0-day.
- Вредоносные скрипты во вложениях и поддельных обновлениях браузера служат первой ступенью заражения.
Рекомендации
- Экранируйте вывод и используйте строгую Content Security Policy против XSS.
- Фиксируйте версии зависимостей, проверяйте новые пакеты и используйте npm audit и аналоги.
- Подключайте сторонние скрипты с Subresource Integrity (SRI) или размещайте их у себя.
- Обновляйте браузеры — ошибки движков JavaScript исправляют каждые несколько недель.