Временная скидка 60% на годовую подписку!
Главная Javascript

Javascript

Xakep #304

Разгадайка. Пишем собственный деобфускатор для JavaScript

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

Xakep #303

JSFuck. Разбираем уникальный метод обфускации JS-кода

Давай отложим в сторону сухую техническую прагматику и поговорим о прекрасном. Ты спросишь: что может прекрасного в обфускации кода? Я отвечу: некоторые решения в этой области обладают прямо‑таки эстетически чарующей красотой, доступной только истинным ценителям. Правда, называются порой не особенно благозвучно. Сегодня мы поговорим о JSFuck, инструменте для обфускации и деобфускации JavaScript.

Xakep #298

Курс на мисконфиги. Как поймать проблемный CORS на проде

В этой статье мы расскажем, как работает технология SOP, которая защищает твой браузер от вредоносных скриптов. Разберем основные виды мисконфигов и составим шпаргалки с разными случаями поведения CORS. В конце разберем пример и проверим работоспособность PoC.

Xakep #297

Приключения «Электрона». Отлаживаем JSC-код любой версии Electron без декомпилятора

Когда‑то компания Positive Technology разработала собственный плагин для декомпилятора Ghidra, позволяющий исследовать веб‑приложения на Electron, в которых используется скомпилированный бинарный код V8 JSC. C тех пор сменилось много версий Node.js, формат кардинально поменялся, в результате существующие перестали работать. В этой статье я покажу, как самостоятельно без декомпилятора отлаживать бинарный JS-байт‑код произвольной версии.

Xakep #292
ПриватностьДля начинающих

Де-onion. Как ловят администраторов сайтов в Tor

В этой статье я расскажу о том, как вычисляют администраторов ресурсов в Tor Network, то есть в дарквебе. Мы рассмотрим структуру сайтов в Tor, обсудим известные случаи деанона и многие другие особенности этого темного уголка интернета, который считается анонимным. По ходу дела я буду рекомендовать программы, которые помогут в работе.

Xakep #292

JavaScript аль денте. Фаззим JS-движки при помощи Fuzzilli

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

Xakep #291

Дырявый лист. Как работают уязвимости в библиотеке SheetJS

Пакет XLSX, выпущенный компанией SheetJS, широко используется разработчиками для взаимодействия с электронными таблицами в форматах XLSX и XLSM, в том числе применяется в корпоративных продуктах. Анализируя пакет, мы нашли несколько уязвимостей. В этой статье я покажу, как они возникли и как их может эксплуатировать злоумышленник.

Xakep #291

Жидкий хром. Как работает баг use after free в движке Blink

В январе 2021 года вышел очередной релиз браузера Chrome. В нем исправили 16 уязвимостей. Одну из них мы с тобой сегодня разберем, чтобы понять механизм возникновения таких багов и способы эксплуатации, с помощью которых злоумышленник может атаковать машину, оставшуюся без обновлений.

Xakep #288

DOM XSS через Web Messaging. Как работает легкий способ получить XSS с помощью postMessage

Недавно я обнаружил новую для себя разновидность XSS-уязвимостей — DOM XSS с помощью Web Messaging. Перечитав множество страниц документации, я решил создать единый материал по эксплуатации XSS через эту технологию. Я опишу здесь наиболее распространенные недостатки безопасности и методы их эксплуатации.

Xakep #262

Без башки. Эксплуатируем динамический рендеринг для захвата веб-приложений

Динамический рендеринг — это техника, которая используется, чтобы отдавать поисковикам и ботам заранее отрендеренные веб-страницы. В этой статье я расскажу, как две популярные утилиты для динамического рендеринга добавляют уязвимости в веб-приложение и как я использовал это, чтобы захватить сервер компании в рамках bug bounty.

Xakep #262
ВзломХардкор

Разбираем V8. Заглядываем под капот Chrome на виртуалке с Hack The Box

В этой статье мы поговорим о Google V8 Engine — движке JS, который стоит в Chromium и Android. Ломать его мы будем на самой сложной в рейтинге сообщества Hack The Box тачке RopeTwo. Ты узнаешь, как манипулировать типами данных в движке, загрузить в память свой эксплоит, использовать механизмы отладки V8, узнаешь, что такое WebAssembly и как благодаря этому проникнуть в шелл RopeTwo.

Xakep #238

Вредонос на JS. Как Chrome помог мне реверсить вирус-шифровальщик

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

Xakep #235

Стоп-спам для «Телеграма». Как написать и задеплоить бота на TypeScript за полчаса

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

Xakep #233

[Без]опасный JavaScript. Изучаем проблемы кода на JS и выбираем средства борьбы с ними

Разработка безопасных приложений на JavaScript — весьма непростое занятие. Но выполнимое. В этой статье рассмотрим особенности JavaScript, из-за которых возникает наибольшее количество проблем, и обратим внимание на инструменты разработчика, которые помогут их избежать.

Xakep #230

JavaScript для умного дома. Arduino устарел, да здравствует ESP32!

Интерес к интернету вещей растет с каждым днем, свои курсы по технологии IoT запустили и Cisco, и Samsung. Но большинство этих курсов базируются на собственном железе компаний, довольно дорогом, в то время как практически все то же самое можно сделать на гораздо более дешевом железе самостоятельно, получив при этом массу удовольствия и полезных навыков.

Xakep #225

Espruino Pico. Учимся программировать USB-микроконтроллер на JavaScript и делаем из него токен авторизации

Несмотря на огромное количество устройств на базе микроконтроллеров, созданных на волне успеха Arduino, считаные единицы из них имеют форм-фактор обычной флешки, подходящий для непосредственного включения в разъем USB компьютера (USB Type-A). Один из наиболее любопытных их представителей — Espruino Pico.

Xakep #215

Превращаем SoundCloud в мобильное приложение с помощью крутейшего JS-фреймворка Electron

Фреймворк Electron разработан в GitHub и носил раньше название «Atom shell». Пожалуй, самое известное приложение, написанное с его помощью, — текстовый редактор Atom. А еще — клиент Slack для настольных компьютеров, клиент мгновенных сообщений Franz, Git-клиент GitKraken, GUI-клиент к утилите Yeoman и даже Microsoft Visual Studio Code. Давай и мы с тобой попробуем написать на нем что-нибудь крутое!

Страница 1 из 212

25 лет «Хакеру»!

Еженедельный дайджест

Спасибо за подписку! Мы будем присылать важные новости ИБ в еженедельном дайджесте
Ошибка при подписке Случилась ошибка при создании подписки на наш дайджест. Пожалуйста, попробуйте позднее
Важные события и скидка на подписку:
«ХАКЕР» ДОСТУПЕН ТОЛЬКО В ЭЛЕКТРОННОЙ ВЕРСИИ
Оформи подписку — получи:
  • доступ к платным материалам сайта
  • доступ ко всем номерам PDF
4000 р.
на год
920 р.
на месяц

«Хакер» в соцсетях

Материалы для подписчиков