Инструкции

Ноя 29 17:31:55, 2022

Слежка в интернете с помощью JavaScript | Onlinesim

Когда вы заходите на YouTube, Netflix или Google Maps — сайты автоматически загружают контент. При этом страницы всегда адаптированы под ваше устройство и браузер.

Сайты определили ваше устройство и автоматически загрузили контент с помощью JavaScript. Кроме оживления сайтов, JavaScript собирает личную информацию пользователей, которую потом могут использовать рекламодатели или хакеры.

В четвертой статье из цикла «безопасность в интернете» рассказываем, что такое JavaScript и как с его помощью отслеживают людей.

Что такое JavaScript

JavaScript — язык программирования, который позволяет оживить сайты и создать динамически управляемый контент: меню, звуки и другие интерактивные элементы. Раньше этот язык использовали для простых функций. Например, JavaScript помогал проверить, все ли поля регистрации заполнены перед отправкой формы.

Сейчас JavaScript используют для создания всех видов веб-приложений. Например, интерактивных карт, анимированной 2D/3D графики или видеопроигрывателей в браузере.

Работает язык так: пользователь выполняет определенное действие → браузер определяет его → активирует JS-код → на странице происходит заданное изменение.
Кроме того, с помощью JavaScript можно узнать информацию о пользователе, который провзаимодействовал со скриптом.

Например, часто на сайтах уточняют ваш браузер. В мета-тегах стоят ссылки на скрипты, которые запускаются после открытия страницы. Когда пользователь заходит на сайт, срабатывает код и определяет браузер, с которого человек посещает ресурс.

Другие скрипты могут запускаться автоматически и считывать информацию о вашем экране или действиях на сайте.

Что о вас могут узнать с помощью JavaScript

Благодаря JavaScript в код сайта можно прописывать другие коды, которые опрашивают браузер пользователя на предмет всех специфических и уникальных настроек и данных браузера и системы компьютера. Поэтому JavaScript помогает узнавать:

Предпочтения в интернете. Это работает через код отслеживания. Он позволяет рекламодателям, веб-мастерам и маркетологам анализировать посетителей и их действия на сайте. Например, на какие объявления кликали клиенты, как долго читали материал и так далее.

Потом эта информация идет в Google Analytics, Яндекс.Метрику или другие системы аналитики.

Информацию об устройстве. В JavaScript есть код navigator. Он содержит полную информацию о браузере и названии OS посетителя. Если привязать привязать код к кнопке сайта — владелец ресурса узнает информацию о пользователе, когда он нажмет на кнопку.

Информацию об экране пользователя рассказывает код screen. Благодаря ему владельцы сайтов узнают размер экрана и используемые цвета пользователем.

А о плагинах и их версиях собирает информацию Navigator.plugins.

Слова, которые вы печатаете. Если в сайт уже встроен такой код или его встроили хакеры — они могут отслеживать текстовые поля, которые заполняют пользователи.

Например, так мошенники могут узнать данные банковской карты через поддельный сайт оплаты.

Информацию с камеры. С помощью специальных кодов сайты могут получить доступ к камере или микрофону, а также к видео и аудио, захваченным устройством.

Например, так создатели сайтов могут получить доступ к фронтальной и задней камере смартфона и наблюдать, что делает пользователь.

Как Javascript связана с системами аналитики

Через сервисы аналитики владельцы сайтов могут отслеживать и другую информацию: какие страницы просматривали пользователи, какие действия совершали, как взаимодействовали с номерами телефонов на сайте, сколько времени провели на ресурсе.

Одни из популярных сервисов — Google Analytics, Яндекс.Метрика, Hotjar, Statcounter и другие.

Сервисы показывают, сколько человек зарегистрировалось на ресурсе, оплатил что-то, авторизовался, добавил в корзину, посмотрел товар, воспользовался поиском и так далее.

Информация, которую узнает владелец сайта с помощью Google Analytics

Такие системы устанавливают почти на все сайты. Они регулируются крупными компаниями, полностью законны, следят только за поведением клиентов и не сохраняют их персональных данных. Поэтому у владельца сайта нет понимания кто есть кто. Он видит только агрегированные данные. А если попытается узнать личные данные пользователя и продать их — получит штраф или бан в системе.

Цель таких систем — сделать сайты удобными и полезными. Рассказать владельцам ресурсов, что происходит на сайте, когда на его посещают пользователи.

Зачем отключать JavaScript

Когда пользователь заходит на сайт, все JavaScript-программы запускаются автоматически. Если в скрипты внедрен вредоносный код — человек может потерять конфиденциальную информацию или получить вирусы на ПК.

Поэтому отключение JavaScript защищает от слежки в интернете: сайты не будут знать, какой браузер и ПК вы используете. Какие буквы пишете и какие действия совершаете.

Если отключить JavaScript — попадете в интернет, в котором нет рекламы, бесконечной прокрутки страниц, надоедливых модальных окон, всплывающих и блокирующих страницу с требованием подписаться на что-то.

Что будет, если отключить JavaScript

Если отключить JavaScript, многие сайты перестанут нормально работать. Большинство сайтов используют коды JS, чтобы взаимодействовать с пользователем и показывать персонализированный контент.

Например, без JavaScript перестанут работать видеохостинги — не загрузится главная страница. Перестанут работать социальные сети, онлайн-карты, сервисы доставки еды и прочее — сайты будут показывать просто пустые страницы без контента.

Если отключить JavaScript, сможете защититься от слежки и снизить вероятность кражи конфиденциальной информации. На отключение JS не обеспечит полноценную защиту.

Большую угрозу для персональных данных несут Cookies. Это файлы, которые могут проверять историю просмотра страниц, данные, которые вы ввели в формы и ваше местоположение. Количество информации зависит от того, что владельцы ресурсов хотят знать о вас. При этом сайты могут обмениваться информацией между собой.

Поэтому, если один ресурс узнал вашу персональную информацию — может рассказать ее другому. С JavaScript такое невозможно, т.к. у каждого сайта свои коды.

Без JavaScript перестанут работать и метрики систем аналитики. Они сделаны на этом языке программирования и автоматически загружаются, когда пользователь заходит на сайт.

Системы аналитики ставят на сайты, чтобы оптимизировать рекламу и сделать ее эффективнее. По сути, чтобы показывать рекламу заинтересованной аудитории. Если отключить JS — пользователь увидит неинтересную и не персонализированную рекламу.

Google Analytics используют не только маленькие, но и большие компании. Например, Uber, Spotify, AirBnb.

Также метрики помогают выявлять проблемные места сайта или неинтересные материалы и исправлять их.

Например, сервис Hotjar помогает создавать карту сайта и смотреть, с какими блоками клиенты взаимодействуют больше всего. Если на сайте есть не кликабельный элемент, на который часто нажимают пользователи, разработчики это увидят и сделают его кликабельным.

Тепловая карта сайта от Hotjar

Системы аналитики показывают, как посетители взаимодействуют с интерфейсом сайта. Владельцы ресурса увидят все клики, движения курсора, сколько времени человек тратит в каждой части страницы, какие проблемы возникают в определенных браузерах или устройствах.

Например, если в одном браузере какая-то функция не будет работать, владелец сайта это увидит и исправит проблему.

Системы аналитики полезны владельцам сайтам, потому что они показывают проблемные места и помогают улучшать работу ресурса и улучшать клиентский опыт. А пользователям полезны такие сервисы, потому что они помогают получать персонализированный контент.

Как хакеры крадут информацию через JavaScript

Внедряют вредоносный код. Это называется межсайтовым скриптингом (XSS). Хакеры встраивают вредоносный код JavaScript в сайт. Он может обрабатывать и сохранять конфиденциальную пользовательскую информацию.

Например, такой код на сайте интернет-банкинга может запомнить данные для входа в банковский аккаунт или другую пользовательскую информацию.

В 2018 году мошенники атаковали British Airways и украли около 380 000 данных банковских карт.

Злоумышленники изменили скрипт для отправки данных клиентов на вредоносный сервер с доменными именем, похожим на British Airways. Поддельный сервер имел SSL-сертификат, поэтому клиенты думали, что покупают билеты на защищенном сервере. В итоге хакеры узнали данные 380 000 данных банковских карт.

Создают SQL-инъекцию. SQL-инъекция — метод взлома, когда хакеры получают доступ к базам данных сайта. В базах они могут менять или воровать информацию о пользователях.

В 2019 году хакер украл сотни тысяч данных банковских карт с помощью SQL-инъекций. Он воровал информацию о платежных картах из баз данных сайтов, а потом продавал их на незаконных онлайн-площадках.

Чуть позже другие хакеры украли 8,3 миллиона электронных писем и паролей пользователей сайта Flaticon. Атаку проводили также с помощью SQL-инъекции.

Атаки с подделкой межсайтовых запросов (CSRF). CSRF — атака на сайт с помощью мошеннического сайта или скрипта. Он заставляет браузер пользователя выполнить нежелательное действие на доверенном сайте, на котором пользователь авторизован. Чтобы атака сработала, пользователь должен перейти по хакерской ссылке.

Например, человек авторизовался на сайте банка и случайно открыл мошенническую ссылку с запросом на перевод денег на счет вора. Банк обработает транзакцию без ведома клиента, т.к. тот авторизован в личном кабинете.

Еще один вид мошенничества — скрытый майнинг. В 2021 году компания Coinhive встроила в сайт криптомайнер через JavaScript код. Когда пользователи заходили на сайт — активировался майнер и скрыто добывал криптовалюту. По подсчетам регионального директора Microsoft Троя Ханта мошенники зарабатывали от 250 000 долларов в месяц.

Как защититься от кражи информации через JavaScript

Посещать сайты, которые используют HTTPS/SSL шифрование. В такие сайт хакеры не могут встроить свои JS-коды, поэтому не смогут ничего украсть. Но если сайт с HTTPS изначально содержит вредоносный JS-код — защититься не получится.

Еще один плюс ресурсов с HTTPS-шифрованием — защищенные cookie. Это файлы, которые могут быть отправлены на веб-сервер только по HTTPS-протоколу и взломать которые труднее.

Как отключить слежку через JavaScript

После выключения JavaScript большая часть страниц перестанет открываться. Поэтому полностью отключать скрипты не стоит — большинство сайтов перестанут нормально работать.

Чтобы избавиться от части слежки, пользуйтесь расширениями блокировщиками рекламы. Например, AdBlock, uBlock Origin, Ghostery, AdGuard и другие.

Они блокируют ненужные скрипты и оставляют те, которые помогают улучшать работу сайта и рекламу.