[Перевод] Невидимый Javascript-бэкдор
Несколько месяцев назад мы увидели пост в сабреддите r/programminghorror: один разработчик рассказал о своих мучениях с поиском синтаксической ошибки, вызванной невидимым символом Unicode, скрывавшемся в исходном коде на JavaScript. Этот пост вдохновил нас на мысль: что если бэкдор в буквальном...
[Перевод] Поиск автора вредоносного ПО с помощью реверс-инжиниринга
Контекст: я занимаюсь администрированием небольшого Discord-сервера по разработке. И недавно один из пользователей сообщил, что кто-то пытался заставить его загрузить Exe-файл. Первое, что стоило узнать, это открывал ли пользователь этот, как оказалось, вредоносный файл. И, к сожалению, он его...
Скрытие информации в Angular
Всем привет! Меня зовут Вадим, я занимаюсь тестированием безопасности приложений. С недавнего времени увлекся разработкой на фреймворке Angular. Я решил объединить свое новое увлечение со своей основной работой и показать результаты своего исследования в данной статье. В данной статье описано как...
От Prototype Pollution к RCE на ZeroNights X
В рамках данной статьи мы рассмотрим уязвимость Prototype Pollution на клиенте и AST-injection на сервере и то, к чему может привести их совместная эксплуатация, а также, как они были встроены для обучения в конкурс “Hack To Be Hired” на ZeroNights X от Академии Digital Security. Всем желающим...
Эффективный поиск XSS-уязвимостей
Про XSS-уязвимости известно давным-давно — казалось бы, нужен ли миру ещё один материал о них? Но когда Иван Румак, занимающийся тестированием безопасности, поделился методологией их поиска на нашей конференции Heisenbug, реакция зрителей оказалась очень положительной. И спустя два года у этого...
Памятка и туториал по HTTP-заголовкам, связанным с безопасностью веб-приложений
Доброго времени суток, друзья! В этой статье я хочу поделиться с вами результатами небольшого исследования, посвященного HTTP-заголовкам, которые связаны с безопасностью веб-приложений (далее — просто заголовки). Сначала мы с вами кратко разберем основные виды уязвимостей веб-приложений,...
[Перевод] Trusted Types API для защиты DOM от XSS-атак
Вы когда-нибудь слышали об XSS-атаках, связанных с внедрением (инъекцией) вредоносного кода в DOM (далее — DOM XSS)? Если не слышали, то DOM XSS — это тип атаки на веб-приложение, когда хакер использует полезную нагрузку (payload), которая выполняется как результат модификации DOM в браузере. Это...
Поиск коллизий в SHA-256 на платформе Node.js при помощи Bitcoin Hasher
Перед началом чтения, хочу предупредить что все описанные ниже определения и проделанные мною исследования несут в себе ознакомительный характер, и являются неполными или неточными ! При написании данной статьи много важных аспектов были пропущены или не дополнены из-за масштабности тем которые...
[Перевод] 3 способа визуального извлечения данных с помощью JavaScript
К старту курса о Frontend-разработке мы решили поделиться переводом небольшого обзора визуальных атак, позволяющих получать закрытую информацию о пользователе вне зависимости от того, применяется ли правило ограничения домена. Некоторые из обсуждаемых уязвимостей закрыты, но развитие технологий...
[Перевод] Как хакнуть Github и заработать $35000?
Когда я нашёл эту уязвимость и сообщил о ней, она стала моим первым оплаченным баг-репортом на HackerOne. $35,000 — это также самая высокая награда, которую я получил от HackerOne (и я считаю, что самая высокая оплата от GitHub на сегодня). Многие найденные ошибки, кажется, — это удача и интуиция,...
JavaScript prototype pollution: практика поиска и эксплуатации
Если вы следите за отчетами исследователей, которые участвуют в bug bounty программах, то наверняка знаете про категорию уязвимостей JavaScript prototype pollution. А если не следите и встречаете это словосочетание впервые, то предлагаю вам закрыть этот пробел, ведь эта уязвимость может привести к...
HackTheBox. Прохождение RopeTwo, часть 1. Chromium v8
Пора выложить первый райтап для машинки с площадки HackTheBox. В данной статье разберемся с написанием RCE для патченного JavaScript-двжика v8, используемого сейчас почти повсеместно. В текущий момент готовы две части - первая, которую вы читаете, и вторая, с получением прав юзера. К концу февраля,...
Безопасность npm-проектов, часть 2
Безопасность npm-проектов, часть 2 Всем привет! В прошлых постах мы поговорили о том, как команда npm обеспечивает безопасность, а также начали рассматривать инструменты, помогающие нам повысить безопасность проектов. Я хочу продолжить разговор и рассмотреть следующий набор полезных инструментов....
WebAuthn в реальной жизни
В сентябре 2019 года команда Почты Mail.ru поддержала технологию WebAuthn. Мы стали первым в мире сервисом электронной почты, который реализовал возможность входа в аккаунт с использованием электронных ключей вместо паролей. Сейчас эта возможность доступна всем нашим пользователям, вы можете...
[recovery mode] Простой многопользовательский текстовый редактор с end-to-end шифрованием
Введение На сегодняшний день защита информации является одной из приоритетных задач IT-индустрии, особенно учитывая то, что для прослушивания трафика в наше время практически не нужно иметь специализированных знаний – в Интернете достаточно и программного обеспечения, и подробных руководств....
Hack The Box — прохождение Bitlab. Слабая JS обфускация, GIT и реверс Windows приложения
Данной статьей я начну публикацию решений отправленных на дорешивание машин с площадки HackTheBox. Надеюсь, что это поможет хоть кому-то развиваться в области ИБ. В данной статье разберемся с легенькой JavaScript обфускацией, загрузим бэкдор через репозиторий Git, и отладим 32- приложение....
Эксплуатация xss уязвимости
Эксплуатация xss уязвимости Данная статья описывает применению xss уязвимости: Кража токена Кража окружения Изменения контента сайта Получения доступа к системе хостинга Читать дальше →...
Прорываемся сквозь защиту от ботов
В последнее время на многих зарубежных сайтах стала появляться incapsula — система которая повышает защищённость сайта, скорость работы и при этом очень усложняет жизнь разработчикам программного обеспечения. Суть данной системы — комплексная защита с использованием JavaScript, который, к слову,...