WebSecOps: веб-безопасность от А до RCE
, , , , ,

Разработка веб-приложений похожа на задачку про два стула, где реализовать функционал, не допустив при этом уязвимость, крайне непросто. Особенно сильно это проявляется при сжатых сроках. Независимо от того, какой язык используется, насколько хорошо написан код, какие задействованы фреймворки — недостатки будут появиться даже в проверенном и легаси коде, важно уметь их оперативно выявлять, устранять и не придерживаться правила: «лучше XSS в проде, чем RCE в деве».

Веб-разработка развивается очень быстро, постоянно появляются новые технологии, а с ними и новые угрозы безопасности. Поэтому мы разработали отдельную программу практической подготовки WebSecOps, рассчитанную на тех, кто хочет прокачать навыки в области веб-безопасности. Читать далее WebSecOps: веб-безопасность от А до RCE

Nemesida WAF: защита сайта от ботов и паразитного трафика
, , , ,

Атаки ботов могут представлять такую же угрозу, как самые «лютые» уязвимости OWASP — за неделю можно потерять несколько миллионов рублей на обычных формах регистрации/восстановления паролей по СМС. Современные бот-сети, как птица-говорун, отличаются умом и сообразительностью — и валидные куки могут получать, и CSRF-токены, и даже, говорят, способны капчу обходить. В конце-концов боты могут просто «положить» ресурс.

С ботнет-атаками сталкиваются, наверное, все владельцы публичных веб-ресурсов: от сайтов до API — пытаются перекрыть вредоносный трафик настройками веб-сервера, созданием правил блокировок или как-то еще. Помните фразу 10-ти летней давности «Хватит это терпеть!»? Вдохновившись ей, мы реализовали в Nemesida WAF продвинутые механизмы, позволяющие по совокупности признаков и поведенческому анализу выявлять и блокировать паразитный ботнет-трафик. Читать далее Nemesida WAF: защита сайта от ботов и паразитного трафика

Хранимые, отображаемые и DOM-based XSS
, , , , ,

XSS (Cross Site Scripting) — один из самых популярных видов веб-уязвимостей, позволяющий производить внедрение вредоносного кода в отдаваемую веб-приложением страницу. Атаки с использованием XSS-вектора позволяют внедрять на страницу произвольное содержимое, перехватывать cookie и сессии других пользователей, получать доступ в закрытые разделы сайта и даже привилегии администратора веб-ресурса.

Существует несколько видов XSS:

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

    Например, скрипт <img src="http://exmple.com/">, оставленный на странице сайта с очень высокой посещаемостью, может спровоцировать DDoS-атаку на указанный веб-ресурс.

  • Отображаемые. Вредоносная строка является частью запроса жертвы к веб-сайту. Сайт принимает и вставляет эту вредоносную строку в отправляемый ответ обратно пользователю.

    Например, при переходе пользователем по ссылке: http://example.com/q=<href='a' style='font-size:500px'> на странице отобразится гиперссылка, при наведении на которую выполнится скрипт alert(‘XSS’). Но для этого необходимо каким-то образом (например, с использованием социальной инженерии) заставить пользователя ввести эту ссылку в адресной строке.

  • XSS в DOM-модели. Представляет собой вариант как хранимой, так и отображаемой XSS-атаки. В данном случае вредоносная строка не обрабатывается браузером жертвы, пока настоящий JavaScript веб-сайта не выполнится.

Читать далее Хранимые, отображаемые и DOM-based XSS

Не теребите мой API: обзор OWASP API Security Top 10
, , ,

API — это набор способов и правил, по которым различные программы общаются между собой и обмениваются данными. Технически API означает программный интерфейс приложения. Интерфейс — это граница между двумя функциональными системами, на которой происходит их взаимодействие и обмен информацией. Но при этом процессы внутри каждой из систем скрыты друг от друга.

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

OWASP API Security Top 10

API используется повсеместно, а вместе с этим растет количество инцидентов, связанных с атаками на его функционал. Авторитетный проект OWASP, сосредоточенный на безопасности веб-приложений, выпустил OWASP API Security Top 10 2019 (PDF-версия) — перечень наиболее опасных и распространенных ошибок при разработке и использовании API:

  • API1:2019 — Недостатки контроля доступа к объектам;
  • API2:2019 — Недостатки аутентификации;
  • API3:2019 — Разглашение конфиденциальных данных;
  • API4:2019 — Отсутствие ограничений на ресурсы и запросы;
  • API5:2019 — Недостатки контроля доступа на функциональном уровне;
  • API6:2019 — Переназначение параметров;
  • API7:2019 — Ошибки настроек безопасности;
  • API8:2019 — Инъекции;
  • API9:2019 — Некорректное управление ресурсами;
  • API10:2019 — Недостаточное журналирование и мониторинг.

Читать далее Не теребите мой API: обзор OWASP API Security Top 10

(не)Безопасный веб: узнаем об уязвимостях раньше злоумышленника
, , , , , , ,

Обеспечение безопасности веб-приложений (сайтов, интернет-магазинов, личных кабинетов) и API — не такая простая задача, как может показаться на первый взгляд. Этому есть несколько причин:

  • веб-приложения доступны 24/7, и злоумышленник в любой момент может предпринять свою атаку;
  • веб-приложения представляют собой стек различных технологий, взаимодействие которых порой сложно осуществить;
  • веб-приложения часто бывают самописными и, к несчастью, это не делает их более защищенными;
  • веб-приложения изначально разрабатываются для улучшения имиджа компании и получения экономической выгоды, а об их безопасности задумываются далеко не в первую очередь;
  • благодаря веб-приложению можно получить различную ценную информацию, начиная от данных пользователей и заканчивая наработками компании-владельца.

Конечно, веб-разработчики стараются не допускать появлению уязвимостей, но в силу причин, описанных ранее, не всегда этого удается избежать, а иногда и исправить с первого раза. Чтобы разобраться с актуальными видами уязвимостей веб-приложений достаточно обратиться к одному из самых авторитетных проектов, посвященных веб-безопасности — OWASP. Помимо прочего, на ресурсе можно найти список наиболее опасных и актуальных уязвимостей веб-приложений под названием OWASP Top Ten:

  • А1 — Инъекции;
  • А2 — Недостатки аутентификации;
  • А3 — Разглашение конфиденциальных данных;
  • А4 — Внешние сущности XML (XXE);
  • А5 — Недостатки контроля доступа;
  • А6 — Некорректная настройка параметров безопасности;
  • А7 — Межсайтовое выполнение сценариев (XSS);
  • А8 — Небезопасная десериализация;
  • А9 — Использование компонентов с известными
    уязвимостями;
  • А10 — Недостатки журналирования и мониторинга.

Читать далее (не)Безопасный веб: узнаем об уязвимостях раньше злоумышленника

Эксплуатация XSS уязвимостей с использованием XSStrike
, , ,

XSS (Cross Site Scripting) — тип атаки, заключающийся во внедрении в выдаваемую веб-приложением страницу вредоносного кода, который будет выполнен на стороне пользователя при открытии им этой страницы. Являясь одним из наиболее популярных нарушением безопасности веб-приложений, атаки с использованием XSS вектора позволяют внедрять на страницу произвольное содержимое, перехватывать cookie и сессии других пользователей, получать доступ в закрытые раздела сайта и даже привелегии администратора веб-ресурса

Существует несколько видов XSS:

  • Хранимые — вредоносный код сохраняется на сервере и загружается с него каждый раз, когда пользователи запрашивают отображение той или иной страницы;
  • Отображаемые — вредоносная строка является частью запроса жертвы к веб-сайту. Сайт принимает и вставляет эту вредоносную строку в отправляемый ответ обратно пользователю;
  • XSS в DOM-модели — представляет собой вариант как хранимой, так и отображаемой XSS-атаки. В этой XSS-атаке вредоносная строка не обрабатывается браузером жертвы, пока настоящий JavaScript веб-сайта не выполнится.

XSStrike — это пакет обнаружения XSS-уязвимостей, оснащенный четырьмя рукописными синтаксическими анализаторами, интеллектуальным генератором полезной нагрузки, мощным механизмом фаззинга и быстрым сканером. Он распознаёт ответ с помощью нескольких анализаторов, и затем обрабатывает полезные данные, которые гарантированно будут работать с помощью контекстного анализа, интегрированного в механизм фаззинга.

Читать далее Эксплуатация XSS уязвимостей с использованием XSStrike

Атака на сайт с WordPress через JavaScript и XSS
, , , , , ,

Недавно Nemesida WAF заблокировал довольно занимательную попытку атаки с использованием XSS и JavaScript. Несмотря на то, что я не являюсь JS-разработчиком, ради интереса решил разобраться в сути атаки. Особенность вектора заключается в специфике работы самого WordPress — возможность редактировать файлы тем через админ-панель, позволяя незаметно для администратора внедрить вредоносный код.

Пейлоад, представленный в виде JS, размещается на сайте через XSS-уязвимость, после чего ждет своего исполнения. Отработанный на стороне администратора веб-ресурса, код модифицирует содержимое файла темы WordPress (header.php), позволяя злоумышленнику закрепиться в системе и полностью скомпрометировать веб-приложение. Читать далее Атака на сайт с WordPress через JavaScript и XSS

Сайт взломают, а вы и ухом не моргнете
, ,

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

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

ModSecurity vs Nemesida WAF Free
, , , , ,

В предыдущем обзоре бесплатных WAF для Nginx мы сравнивали NAXSI и Nemesida WAF Free. Теперь настал черед провести еще один, с использованием наиболее популярного решения в своем сегменте — ModSecurity, или Modsec. В обзоре будут учитываться простота установки, качество предустановленных сигнатур (False Positive, False Negative), удобство использования и прочие критерии. Читать далее ModSecurity vs Nemesida WAF Free

Бесплатный аудит веб-приложения на уязвимости

Одна из основных проблем, связанных с компрометацией веб-приложений, является недооцененность как самой атаки, так и ее последствий. Многие думают, что хакеров интересуют только крупные ресурсы вроде Google или Facebook, а условный интернет-магазин стройматериалов или автозапчастей хакеров совершенно не интересует. На самом деле все, что становится доступным в Интернете, может быть атаковано, вне зависимости от типа объекта: почтовый сервер, веб-сайт или IoT.

Вторая проблема — отсутствие информации о защищенности веб-ресурса (вернее, отсутствие информации о наличие уязвимостей). Не каждая компания может себе позволить заказать полноценный анализ защищенности веб-приложения, а многие разработчики игнорируют или просто не знают о лучших практиках безопасной разработки. Это приводит к появлению на сайте уязвимостей, и в конечном итоге — к его компрометации. Инъекции (SQLi, NoSQL, RCE и другие) занимают 1 место в списке OWASP Top 10 и часто являются основной причиной компрометации веб-приложения (персональных данных или другой пользовательской или конфиденциальной информации, заражение других посетителей сайта и т.д.). Читать далее Бесплатный аудит веб-приложения на уязвимости