Обновить
64K+

Браузеры

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

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

«Я не робот»: как ботнеты научились быть людьми

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

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

Летом двадцать пятого года по сети разошлась история про ИИ-агента, который посреди задачи наткнулся на проверку Cloudflare, нажал кнопку подтверждения и между делом пояснил своему пользователю, что этот шаг нужен, чтобы доказать, что он не бот. Шутили над этим много, но если отбросить смешную сторону, картинка получилась довольно точная, потому что вопрос «человек ли ты» давно перестал делить трафик на своих и чужих и делит его сейчас скорее по тому, сколько денег и терпения вложил в маскировку тот, кто сидит по ту сторону запроса.

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

Читать далее

Новости

AudioContext и шрифты: на кого точно не подумаешь если профиль забанят

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

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

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

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

Читать про пассивные отпечатки

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

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

Нужно было загрузить на сайт посольства пакет документов одним PDF – свидетельство о рождении, дипломы, справки. Лимит – 1 МБ. Загружать сканы всех своих документов в бесплатный онлайн-сервис не хотелось, а платный редактор на букву «А» после «оптимизации» сделал файл больше исходного.

На компьютере выход нашёлся быстро. А вот с телефона сжать PDF, никуда его не отправляя, почти нечем. Поэтому появился компрессор, который работает целиком в браузере – на iPhone, Android и десктопе: файл не покидает устройство, а после первого открытия всё работает даже без интернета. Рассказываю, как он устроен, где проигрывает Ghostscript и как самому проверить, что файл никуда не уходит.

Читать далее

Как я подавал шахматное расширение в Chrome Web Store: разрешения, данные и отказ

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

Вторая часть истории о том, как моё шахматное расширение попадало в Chrome Web Store. Первая была про оплату аккаунта разработчика и мои ошибки, эта про саму подачу: что спрашивает форма, какие объяснения прошли проверку, где я чуть не написал неправду в разделе о данных и как получил отказ по своей же вине.

Внутри настоящие тексты объяснений к разрешениям, письмо с отказом, тест, который ловит забытое разрешение, и чек-лист перед подачей.

Читать далее

Шрифты, CDN и хостинг: трансграничная передача, которую никто не замечает

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

Я делаю сервис, через который проходят чужие договоры, поэтому к 152-ФЗ отношусь внимательнее многих. Документы, формы, вход - всё уходит на сервер в России, это я проверял не раз. А на прошлой неделе решил проверить не сервис, а сам сайт - просто посмотреть, к каким доменам обращается браузер, когда человек открывает главную.

Нашёл три иностранных компании. Ни одну из них я туда сознательно не звал.

Читать далее

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

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

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

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

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

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

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

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

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