Обновить
64K+

Браузеры

Веб-обозреватели

63,41
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Passkey Editor: расширение для Burp Suite для пентеста WebAuthn

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели4.4K

Пентест WebAuthn быстро упирается в трафик, который Burp показывает почти как непрозрачный набор байтов: нужные поля скрыты за CBOR и несколькими слоями кодирования. Passkey Editor снимает эти обёртки, позволяет менять данные прямо в запросе и собирать их обратно так, чтобы сервер продолжал обрабатывать процедуру.

В статье речь пойдет о том, как устроен этот инструмент, какие проверки он автоматизирует и где на практике остаётся поверхность для атак на passkey-аутентификацию.

Разобрать инструмент

Новости

Good Bear 1.0: изолированное доверие к российской PKI, интерфейс, лицензия и сборка

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели8.4K

Представляем обзор свободного браузера Good Bear 1.0 для безопасной работы с веб-сайтами, использующими сертификатные цепочки Минцифры.

Читать далее

Экспорт коллекции API‑запросов в файлы для git — и как мы чуть не отправили токены в открытом виде

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели8K

Как работать с коллекциями в Http API‑клиенте...

В клиенте уже год как работал экспорт коллекции как патча — одного JSON‑файла с операциями вида upsertRequest / removeRequest / setCollectionMeta. Достаточно, чтобы переслать коллеге точечное изменение: поправил заголовок в одном запросе — экспортировал — коллега применил патч у себя. Рабочая штука для передачи «из рук в руки».

Ниже — история одной конкретной фичи: зачем понадобился «git‑friendly» экспорт коллекции, как устроена стабильная сериализация и разрешение коллизий имён файлов, и какую дыру в защите секретов мы нашли и закрыли по пути. Без сравнений с другими клиентами — только то, что случилось и что мы с этим сделали.

Читать далее

«Интернета нет — а сайт работает»: как мы учили PWA замечать авиарежим на iPhone

Время на прочтение8 мин
Охват и читатели6.6K

Мы делаем пет-проект «Чатограмма»: он считает статистику переписки прямо в браузере, файл с перепиской на сервер не уходит. Такое обещание проще всего проверить без чтения политик: включить авиарежим и посмотреть, посчитается ли. Для этого странице нужно ответить на, казалось бы, тривиальный вопрос: есть ли сейчас сеть? На iPhone ответ оказался неожиданным.

Читать далее

10 браузерных API, заменяющих библиотеки, которые я раньше все время устанавливал

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели10K

10 браузерных API, заменяющих пакеты NPM и плагины jQuery: dialog, popover, переходы отображения (view transitions), structuredClone, groupBy и Temporal с заметками о поддержке.

Читать далее

Книга из переписки без сервера: canvas, jsPDF и брошюра для печати прямо в браузере

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели6.5K

Мы делаем пет‑проект «Чатограмма», который считает статистику переписки: кто пишет первым, кто быстрее отвечает, в какие часы вы на связи. С первого дня у него одно жёсткое правило: файл с перепиской не уходит на сервер. Всё считается в браузере пользователя, а сервер не видит ни одного сообщения — не потому, что обещает не смотреть, а потому, что сообщения до него физически не доходят.

Потом понадобилась подарочная книга: PDF формата A5, где самые яркие моменты переписки собраны по главам — с чего всё началось, первое «мы с тобой», лучшие моменты каждого года, общий словарь, квиз «Кто это написал?». Плюс вариант для печати дома брошюрой: A4, сложить пополам, скрепить степлером.

И здесь правило «ничего на сервер» перестаёт быть бесплатным. Книгу обычно верстают на сервере: headless Chrome, LaTeX, что угодно с нормальными шрифтами и без ограничений по памяти. У нас всё это должно работать на телефоне, в том числе на iPhone, в том числе во встроенном браузере мессенджера. Ниже — как это устроено и на какие грабли мы наступили.

Читать далее

Jev: модель, которая не пишет текст, а принимает решения

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели8.4K

Последний год я слежу за LLM-шным хайпом, и каждый день появляется что-то новое. На этот раз хочу рассказать про Jev — модель TypeSafe System One.

Заинтересовало: это не очередная LLM, а система с принципиально другой механикой. 

Читать далее

Лёгкие HTTPS-сертификаты на деревьях Меркла

Время на прочтение4 мин
Охват и читатели9K

Насколько тяжела и медленна постквантовая криптография? Как станут тормозить мобильные устройства? Эти вопросы пока изучаются, но замедление возможно.

Разработчики Chrome с коллегами из других компаний и экспертами группы PLANTS внедряют первое изменение HTTPS, которое поможет решить постквантовые проблемы производительности. Это компактные [TLS-сертификаты на деревьях

Читать далее

Cookies, которых не видно: partitioned cookies, cookies.txt и одно расширение под три браузера

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели9.8K

Бывает так: открываете менеджер cookies, удаляете всё для сайта, перезагружаете страницу — а сайт вас по-прежнему узнаёт. Одна из причин в том, что современные браузеры хранят часть cookies в отдельных «разделах», и старые расширения их просто не видят.

Я разбирался с этим, когда переписывал Cookie Quick Manager — популярный менеджер cookies для Firefox (около 45 тысяч пользователей на AMO), который не обновлялся с 2019 года. Результат — CookieTin, открытое расширение для Firefox, Chrome и Edge (GitHub). В статье — что такое partitioned cookies, как их достать через WebExtensions API и на какие грабли я наступил по дороге.

Где прячутся cookies

Переводчик в браузере, который учит слова: встроенный Translator API Chrome, свой ИИ‑ключ и интервальные повторения

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели8.9K

Было популярное китайское расширение Dadda Translate (达达划词翻译): выделяешь слово, получаешь перевод, сохраняешь в словарик, и слово потом всплывает уведомлением, пока не запомнится. Оно перестало работать: API Sogou и Shanbay, на которых держался перевод, изменились или исчезли. К тому же оно было только для Chrome и только для пары английский → китайский.

Я переписал его с нуля. Получился WordToast для Firefox, Chrome и Edge (GitHub). Он переводит на язык браузера, умеет работать полностью на устройстве и объяснять слово в контексте через ваш собственный ИИ-ключ. В статье расскажу о трёх технических частях:

Как это устроено

Удалить что угодно со страницы одним кликом: как устроен «пипеточный» блокировщик на Manifest V3

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели6.3K

Бывает, что блокировщик рекламы не справляется: всплывающее окно подписки, баннер «мы используем cookies», чат-виджет в углу, липкая шапка на пол-экрана. Для этого было маленькое расширение ekill: жмёшь кнопку, наводишь на элемент, кликаешь — элемент исчез. Оно не обновлялось с 2019 года и перестало работать в Chrome, когда Google отключил Manifest V2.

Я переписал его под Manifest V3 для Firefox, Chrome и Edge. Получился SkullClick (GitHub). Задача кажется тривиальной, но у неё неожиданно много граней:

Разберём по порядку

Good Bear: анонс веб‑браузера для безопасной работы с сертификатами Минцифры

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели14K

Привет, Хабр. Меня зовут Валерий Ледовской, и последние десять лет я занимаюсь русской локализацией Mozilla. Вы наверняка видели мои статьи про Browser Policy Manager или Russian Spelling Dictionary. Сегодня я хочу рассказать о проекте, который мы с командой готовим к выпуску — и который, надеюсь, вы захотите поддержать.

Читать далее

Как я факторизовал RSA‑ключи центра сертификации… из 90-х

Уровень сложностиСложный
Время на прочтение6 мин
Охват и читатели6.5K

В последнее время меня всерьез стала беспокоить безопасность RSA. Криптография RSA держится на сложности факторизации большого полупростого числа, но какое именно число можно считать достаточно «большим» — вопрос интересный. Web PKI отказалась от 1024-битного RSA больше десяти лет назад, и хотя я не знаю никого, кто факторизовал бы ключ такого размера, это вполне по силам какому‑нибудь правительству или другой организации с большим количеством машин. Буквально пару дней назад кто‑то факторизовал 862-битный ключ RSA-260 в рамках конкурса RSA Factoring Challenge. Это самая крупная факторизация, о которой я слышал.

Читать далее

Ближайшие события

UDP-прокси и протокол QUIC — как утекает реальный IP

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели9.6K

Среди тех, кто работает с мультиаккаунтингом, да и вообще использует прокси, существует такая страшилка: если приложение, через которое вы проксируете трафик (читай — антидетект-браузер), не поддерживает UDP (или базово не контролирует сетевые маршруты), ваш реальный IP-адрес может утечь — и тогда сама идея использования прокси теряет смысл. Вы хотите скрыть реальный IP-адрес, но из-за отсутствия поддержки UDP, наоборот, раскрываете его. 

Читать почему ваш IP-адрес может утекать

Где HTTP/2 и HTTP/3 реально быстрее, а где не дают ничего

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели92K

Про HTTP/2 и HTTP/3 обычно пишут, что они ускоряют всё подряд. Я собрал стенд и померил сам: Caddy отдаёт одни и те же данные по всем трём протоколам, tc netem изображает шесть сетей — от дата-центра до края соты.

Результаты вышли неудобными. На десяти файлах HTTP/2 проигрывает старому HTTP/1.1. На одном крупном файле все три протокола показывают одинаковое время. В дата-центре новые протоколы отстают вчетверо. Выигрыш есть, но узкий и адресный.

Читать далее

Как всегда, (почти) во всём виноват Internet Explorer: древности и артефакты в HTML

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели15K

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

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

Читать далее

Мы измерили платный антидетект‑браузер: canvas совпадал с чистой машиной байт в байт. Потом сделали свой, открытый

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели9.2K

Антидетект‑браузеры — инструмент, которым агентства ведут десятки рекламных кабинетов и аккаунтов маркетплейсов с одной машины: у каждого профиля свой отпечаток, свой прокси, свои cookies. Стоят они $30–150 в месяц на команду, и все до одного закрытые. В интерфейсе — зелёные галочки «canvas: защищён», «WebGL: защищён». Что на самом деле уходит сайту — не знает никто, включая, как выяснилось, пользователей.

Мы взяли один из популярных продуктов, поставили рядом с настоящим Chrome на одном Mac и сравнили ~250 значений отпечатка. Результат стал причиной написать свой. Ниже — методика, которую можно повторить на любом антидетекте за десять минут, что она показала, и как в итоге устроен Fury — открытый форк Chromium, где подмена делается в C++ у источника значения, а не инжектом JS.

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

Читать далее

Я просил ход, который сделал бы человек. Stockfish ответил правильным

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели9.9K

С лета у меня в браузере рядом с доской работает локальный Stockfish и подсказывает стрелкой на лучшем ходу. Люди, которые начали пользоваться, выразили одну претензию: ход верный, но ход непонятный. Я бы так никогда не сыграл — покажи, что сыграл бы я.

Читать далее

Жизненный цикл токена API: от выпуска до отзыва

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели13K

Токены (tokens) API часто расцениваются как незначительные детали реализации.

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

Последствия для безопасности отнюдь не просты.

В этой статье рассматривается полный жизненный цикл токена API, от выпуска (issuance) до истечения срока действия (expiration) или принудительного отзыва (revocation).

Читать далее

Vivaldi 8.2 для мобильных устройств: Ваш браузер. Ваши правила. Ваши расширения

Время на прочтение3 мин
Охват и читатели7.4K

Vivaldi предоставляет вам все необходимые инструменты для работы в сети. С нашим последним обновлением Vivaldi 8.2 мы даём вам больше — с полной поддержкой расширений на Android, так что вы можете настроить свой мобильный браузер именно так, как вам нужно.

Читать далее
1
23 ...