Возможно, вы слышали, что JavaScript опасен. Ну, это отчасти правильно. JavaScript может быть опасным, если не будут приняты надлежащие меры предосторожности. Его можно использовать для просмотра или кражи личных данных, даже не подозревая, что это происходит. А поскольку JavaScript так широко распространен в Интернете, мы все уязвимы.
Все сводится к тому, как на самом деле работает JavaScript
, JavaScript по большей части хорош, но он настолько гибок и силен, что держать его под контролем может быть сложно. Вот что вам нужно знать.
Преимущества JavaScript
Перво-наперво, JavaScript это хорошая вещь. Согласно W3Techs, примерно 88,1% всех сайтов так или иначе используют JavaScript. Большинство известных сайтов, таких как Amazon и YouTube, не были бы столь полезными, если бы Интернет был зоной без JavaScript.
Например, JQuery
является популярной библиотекой JavaScript, которая позволяет легко создавать интерактивные веб-сайты с элементами, которые могут изменяться без перезагрузки всей страницы. Такие сайты, как Facebook и Twitter, используют такие технологии, как AJAX.
обновлять веб-страницы (например, временные метки, количество лайков и т. д.), не обновляя страницу каждую секунду.
Но, как мы скоро увидим, JavaScript не идеален. Этим злоупотребляют, и это приводит к сценариям, которые позволяют отслеживать вашу активность в Интернете и нарушать вашу конфиденциальность.
Один из распространенных, но ошибочных советов — полностью отключить JavaScript, но мы не рекомендуем его. Вы потеряли бы множество потрясающих веб-функций, таких как функция «бесконечной прокрутки», которая существует во многих блогах, социальных сетях и новостных сайтах.
Более того, некоторые браузерные эксплойты все еще возможны, даже если вы отключите JavaScript. Таким образом, отключение JavaScript из-за проблем безопасности похоже на ношение костюма пузыря каждый раз, когда вы выходите на улицу, потому что вы боитесь получить травму. Это на самом деле не защитит вас от многого, но сделает вашу жизнь несчастной.
Snooping слова, которые вы вводите
В июле 2012 года пара исследователей взяла данные от 5 миллионов пользователей Facebook в Америке и Великобритании. Что они искали? Самоцензура. В частности, они хотели узнать, как часто пользователи начнут писать сообщения, но в конечном итоге удалят их до того, как они будут опубликованы.
Они сделали это, внедрив немного JavaScript, который отслеживал текстовые поля, где пользователи могли делать обновления статуса, писать комментарии на стене и т. Д. Исследователи ясно дали понять, что они записывают только «наличие или отсутствие введенного текста», а не «нажатия клавиш или контент». », Но суть очевидна.
Можно было отслеживать нажатия клавиш и контент. Они просто решили не делать этого.
Понятие страшно. Простой фрагмент встроенного JavaScript-кода — это все, что нужно для записи любого вида активности на веб-странице — даже если вы на самом деле ничего не отправляете! Веб-прокрутка, движения мыши, нажатия клавиш: все это можно отслеживать и записывать против вашей воли или знаний.
Отслеживание ваших привычек просмотра
Возможности отслеживания JavaScript не ограничиваются текстовыми полями. С помощью магии браузера куки
компании могут хранить все виды пользовательской информации: тип браузера, предпочтения, местоположение и т. д. Утверждение заключается в том, что этот вид отслеживания делается для обеспечения лучшего взаимодействия с пользователем (например, релевантная реклама), но все равно ощущается как нарушение ,
Файлы cookie являются постоянными, то есть они продолжают существовать даже после того, как вы покинете веб-страницу или закроете браузер (если срок их действия не истек или вы не удалили их вручную). Вы видите растущую проблему? Если файл cookie сохраняется с веб-страницы на веб-страницу, компания может видеть, какие веб-сайты вы посещаете.
Это лучше всего объяснить на примере: кнопки социальных сетей. Рассмотрим кнопку «Нравится» Facebook, которая использует JavaScript для выполнения своих действий. Когда ваш браузер загружает страницу, он должен загрузить кнопку. Загрузка кнопки означает запрос в Facebook необходимого файла JavaScript. Этот запрос включает в себя такие данные, как ваш IP-адрес, веб-страницу, на которой вы находитесь, файлы cookie Facebook в вашей системе и т. Д.
Просто чтобы прояснить ситуацию, вам не нужно нажимать кнопку, чтобы отслеживать вас. Акт загрузки достаточно, чтобы эти общие виджеты собирали данные о вас.
При этом кнопки социальных сетей — это лишь один из многих способов, с помощью которых компании могут отслеживать ваши привычки просмотра.
, Другие примеры включают профили онлайн-знакомств, комментарии Disqus и веб-сайты, которые используют бесплатные веб-шрифты Google
,
Инъекция вредоносного кода
Одно из самых коварных применений JavaScript происходит в форме межсайтовых сценариев (XSS). Проще говоря, XSS — это уязвимость, которая позволяет хакерам встраивать вредоносный код JavaScript в легитимный веб-сайт, который в конечном итоге исполняется в браузере пользователя, который посещает сайт.
Если это происходит на веб-сайте, который обрабатывает конфиденциальную информацию пользователя, такую как финансовые данные, злонамеренный код может потенциально отследить и украсть эту информацию. Иными словами, XSS можно использовать для распространения вирусов и вредоносных программ, что и произошло, когда Twitter был заражен червем StalkDaily.
,
XSS может также использоваться для того, что называют отравлением поисковой машины
, Короче говоря, производители вредоносного ПО могут использовать JavaScript для заражения веб-сайтов с высоким рейтингом результатов поиска таким образом, что вместо этого пользователи, которые пытаются посетить эти сайты, перенаправляются на зараженные вредоносным ПО веб-сайты.
И затем есть нечто, называемое подделкой межсайтовых запросов (CSRF), которая является противоположностью XSS. Этот вид вредоносного кода JavaScript может использовать браузер пользователя, файлы cookie и разрешения безопасности для выполнения действий на отдельном веб-сайте.
Что вы можете сделать для защиты от атак на основе JavaScript?
В конечном счете, ответственность за обеспечение чистоты и безопасности веб-сайтов лежит на веб-разработчиках. Однако, как конечный пользователь, вы всегда должны обновлять свои браузеры и регулярно проверять наличие вредоносных программ.
,
Вот что нужно сделать, если вы обнаружите в своей системе вредоносное ПО
,
При этом я могу рассчитывать с одной стороны, сколько раз я сталкивался с вышеуказанными проблемами. JavaScript является важной частью современного Интернета. Он принес нам больше пользы, чем вреда, и он здесь, чтобы остаться. Заинтересован стать разработчиком JavaScript
? Начните с этих бесплатных учебных ресурсов
,
Вы когда-нибудь сталкивались с проблемами JavaScript? Вы практикуете безопасные привычки для безопасности и конфиденциальности? Расскажите нам о своем опыте в комментариях ниже!
Кредиты изображений: уведомления Facebook через Shutterstock, ввод текста с рук через Shutterstock, кнопки социальных сетей через Shutterstock