Представим, что ваша команда разработки пишет код на JavaScript. Сам по себе этот язык программирования считается безопасным. Однако это не мешает ошибкам безопасности регулярно появляться будто бы из ниоткуда и существовать в коде незамеченными.
За время существования JavaScript неоднократно наблюдались случаи нарушения безопасности. Пострадали даже крупные и известные всему миру организации. Поэтому рано или поздно команда разработки задается вопросом: «Как написать код, в котором можно быть уверенным?»
JavaScript, несомненно, является самым популярным языком программирования для веб-разработки. Обычно он используется в связке с HTML и CSS на динамических страницах для обеспечения расширенных функций, таких как отправка формы, интерактивность, анимация и др.
Несмотря на то, что JavaScript наиболее известен для интерфейсной веб-разработки, он имеет множество применений за ее пределами, в том числе в разработке игр и мобильных приложений.
Чтобы расширить его возможности, JS используют в сочетании со сторонними фреймворками — React, Ember, Node.JS, Vue, Angular и другими инструментами, которые предоставляют ряд встроенных функций.
JavaScript гибок, именно поэтому удержать его под контролем не всегда представляется возможным.
Небрежно написанный код стоит дорого, а на его обслуживание уходит много времени и усилий. Популярность JavaScript и фреймворков влечет за собой опасность, таящуюся в ошибках использования этого языка программирования.
Если не приняты надлежащие меры, успешная эксплуатация уязвимостей может привести к сбою приложения и позволит злоумышленникам манипулировать, изменять и красть данные, а также перенаправлять сеансы. Поскольку JavaScript широко распространен, уязвимы все.
Как и во многих других областях, обеспечение безопасности в JavaScript представляет собой регулярный процесс обнаружения ошибок и их исправлений, который начинается с обучения.
Чтобы обезопасить пользователей продукта и сделать свой код менее уязвимым, специалисты Digital Security рекомендуют постоянно совершенствовать свои навыки.
Навыки безопасного программирования важны как Frontend-, так и Backend-разработчикам, чтобы не допускать распространенные ошибки в коде.
JavaScript не стоит на месте, а значит, и его безопасность необходимо выводить на другой уровень, практикуясь и внедряя безопасные привычки программирования на JS.
По данным OWASP, наиболее распространенные уязвимости JavaScript включают в себя уязвимости исходного кода, XSS, CSRF и др. С ними вы можете ознакомиться на бесплатном курсе “Безопасность JavaScript”.
Курс по безопасному программированию на JavaScript рассчитан на применение полученных знаний на практике и отработку навыков на реальных кейсах. В числе прочего он позволяет изучить часто встречающиеся уязвимости на фреймворке ReactJS (JavaScript-библиотеки для создания пользовательских интерфейсов):
- Open Redirect – уязвимость, которая дает возможность провести эффективные фишинговые атаки
- SourceMap – распространенная ошибка разработчиков, забывающих выключать вывод исходного кода в Production-версии проекта
- dangerouslySetInnerHTML – небезопасная функция фреймворка ReactJS, позволяющая внедрять JS-код без обработки входных данных
- Admin routes – открытые маршруты административной панели в клиентской части приложения, позволяющие получить информацию о всей функциональности и дополнительные векторы атак
- Client Auth bypass – обход авторизации на клиентском приложении, может привести к раскрытию конфиденциальной информации
- Token in URL – сохранение токенов авторизации в URL и передача в GET-запросах, что при перехвате или обнаружении может привести к повышению привилегий
Итак, отследить происходящее при выполнении скриптов на JS бывает непросто, но, вооружившись знаниями и подходящими инструментами, найти и исправить уязвимые места можно даже в самом замысловатом коде.
О КОМПАНИИ
Digital Security – ведущая российская консалтинговая компания в области информационной безопасности, которая помогла уже нескольким сотням крупных компаний (Сбербанк, QIWI, Mail.Ru Group, Leroy Merlin, Tele2, SAP, Газпромбанк и т.д.) улучшить защищенность информационных систем и стабильность бизнес-процессов.
С самого основания в 2003-м году компания Digital Security проводит профильные семинары и вебинары, регулярно выпускает масштабные исследования в области веб-безопасности и реверс-инжиниринга, а также публикует аналитические обзоры на различные темы. Материалы, созданные ведущими специалистами, пополнили полки открытой онлайн-библиотеки компании.
С открытием Академии в Digital Security готовят новые курсы и полноценные программы корпоративного обучения, ориентированные на получение практических навыков ИБ как для специалистов, лишь начинающих карьеру в сфере информационной безопасности, так и для давно работающих в данной области профессионалов.
Зарегистрироваться