It took a year to ship WebAssembly in Anubis
Anubis — это система защиты веб-сайтов от агрессивного скрапинга со стороны ИИ-компаний, использующая механизм Proof-of-Work, вдохновлённый Hashcash. При небольшом трафике нагрузка пренебрежимо мала, но при массовом скрапинге она резко увеличивает стоимость таких операций, делая их экономически невыгодными. Разработка заняла год, поскольку требовалось тщательно оптимизировать реализацию под WebAssembly, чтобы обеспечить достаточную производительность вычислений прямо в браузере пользователя без значительного влияния на легитимный трафик.
Цель Anubis — временное решение, позволяющее выиграть время для разработки более точных методов обнаружения headless-браузеров, например, через анализ особенностей рендеринга шрифтов. В будущем планируется полностью отказаться от показа капчи-подобных страниц обычным пользователям, направляя проверку только на подозрительный трафик. Система требует поддержки современных JavaScript-функций, поэтому пользователям с плагинами вроде JShelter, блокирующими такие возможности, необходимо отключить их для корректной работы защиты. Anubis не блокирует доступ полностью, но делает массовый сбор данных слишком дорогим для злоупотребляющих сторонами.
Комментарии (103)
Обсуждение дополняет статью практическими замечаниями: необходимость fallback‐механизмов при отключённом WebAssembly, экономическая природа защиты, инструменты тестирования совместимости, готовые расширения для ускорения PoW, а также вопросы о применимости подхода к старым браузерам и реальной эффективности предположения о вычислительных ограничениях скреперов. **Fallback и старые браузеры:** Пользователям с отключённым WebAssembly нужно явное уведомление, аналогичное сообщению при отключённом JavaScript. Альтернативой служит JavaScript‐fallback — транспиляция WASM обратно в JS для совместимости. Однако старые браузеры на Smart TV могут не поддерживать WASM и будут вынуждены использовать JS‐fallback, что потенциально открывает путь скреперам к обходу более тяжёлого алгоритма. **Экономика защиты:** Защита от ботов — экономическая задача: достаточно повысить стоимость скрейпинга, чтобы он перестал быть прибыльным, а не делать его полностью невозможным. Скрейпинг вреден даже для статического HTML: боты собирают контент независимо от динамичности сайта. **Инструменты и оптимизации:** Для базового WASM рекомендуется целевой триплет Rust `wasm32v1-none` (ограничение до `#[no_std]`, упрощённая совместимость). Проверить поддержку WebAssembly можно через онлайн‐детектор wasm-feature-detect.surma.technology. Предлагается предоплачивать PoW через систему кредитов/токенов по модели Privacy Pass, чтобы избежать ожидания в реальном времени. Уже существуют браузерные расширения на WebAssembly и WebGPU, ускоряющие решение Anubis‐PoW. **Критика подхода:** Предположение об ограниченности скреперов вычислительными ресурсами ставится под сомнение: современные скрейперы могут использовать GPU и специализированные ускорители, что снижает эффективность чисто CPU‐ориентированных PoW. Также требует уточнения формула, по которой увеличение сложности на 1 бит даёт 1024‐кратный рост.
A year of fighting scrapers on my 1.5 million-page website 🔥 Горячее 💬 Длинная дискуссия
Главная мысль: 99 % трафика вашего сайта составляют боты, а обычные аналитика показывают лишь человеческую активность. За год вы столкнулись с миллионами запросов от китайских сканеров, а также с постоянным «чтением» страниц поисковыми ботами вроде Anthropic и Amazon‑crawler, которые не генерируют реальных посетителей.
Ключевые цифры, которые стоит запомнить: 3,6 млн запросов от китайских ботов за один день; Cloudflare сообщает соотношение 3 000 сканов на один реферальный переход, у вас — 35 000 : 1; CAPTCHA‑разрешение лишь 0,24 %; в неделю сервер обслуживает 2,5 млн запросов, но аналитика фиксирует лишь 5 977 реальных просмотров, то есть 214 бота на каждый человеческий запрос. Эти факты раскрывают, насколько обычные инструменты (Plausible, Google Analytics) недооценивают реальный объём автоматизированного трафика.
Комментарии (279)
Тред обсуждает масштабную проблему ботов на сайтах: большинство участников подтверждают, что боты составляют значительную часть трафика и требуют решения. Некоторые критикуют Cloudflare за высокую стоимость и слабую эффективность против ботов, предлагая альтернативы — Anubis, геоблокирование. Отмечается, что боты всё чаще маскируются под реальных пользователей, усложняя их выявление. Несколько участников считают, что некоторые боты полезны — например, для индексации и привлечения аудитории.
Decoy Font 🔥 Горячее
Decoy Font — это TTF‑шрифт, который скрывает ваш текст от ИИ, заменяя каждую букву набором декой, видимых при приближении, а на расстоянии раскрывающих скрытое сообщение. Шрифт использует две пространственные частоты: тонкие контурные линии в foreground и низкочастотный размытый фон, совместно образующие два разных символа в одном пространстве. Таким образом, то, что выглядит как «SORRY», «ROBOT», «HAPPY», «HUMAN» вблизи, превращается в другое слово, когда его рассматривают издалека или сquinting.
Шрифт свободно распространяется для личного, коммерческого и клиентского использования, основан на DejaVu Sans Mono и имеет открытую лицензию. Его можно скачать, протестировать в онлайн‑игровой площадке, где демонстрируется техника скрытых частот, и использовать в проектах от captcha до личных сообщений. Поскольку ИИ читает пиксели вблизи, Decoy Font создаёт начальный барьер, усложняя автоматическое скрейпинг, но при росте возможностей моделей он будет всё легче расшифровываться. Автор планирует расширить поддержку языков, включая китайский, и рассматривает шрифт как способ измерять прогресс LLM в распознавании текста. Эксперименты показывают, что даже базовые агенты могут найти скрытую надпись, но для большинства систем это остаётся сложным, делая шрифт полезным как начальный барьер.
Комментарии (131)
Шрифт Decoy Font эффективно обманывает текущие модели ИИ, что вызывает споры о его практической полезности: одни считают его бесполезным и легко обходимым, другие — потенциальным инструментом защиты. Обсуждаются технические детали — использование двух пространственных частот и контурных линий — и предложения по улучшению: повышение скрытности, сохранение читаемости для людей. Есть сомнения в доступности и удобстве использования. Предлагается применять шрифт для защиты интеллектуальной собственности, создания искусства или как временное решение до развития ИИ-распознавания. Тред отражает растущий интерес к шрифтам, специально созданным для обмана ИИ; его эффективность зависит от контекста и эволюции технологий.
Feed the bots 🔥 Горячее 💬 Длинная дискуссия
Автор столкнулся с проблемой агрессивных ботов, собирающих данные для обучения LLM, которые составили 99% трафика на его сервере. В отличие от поисковых роботов, эти боты игнорируют robots.txt, постоянно меняют IP-адреса и отправляют множество запросов в секунду. Попытки блокировать их через IP-списки, ограничения по скорости или защитные стены (CAPTCHA, paywall) оказались неэффективными, так как боты просто находили обходные пути, а защитные меры мешали обычным пользователям.
Самым эффективным решением оказалось создание динамического генератора бессмысленного контента — "Markov babbler", который потребляет всего около 60 микросекунд процессорного времени на запрос и использует 1.2 МБ памяти. Этот подход не требует поддержки черных списков и позволяет эффективно "кормить" ботов, не тратя ресурсы на передачу реальных данных. Автор подчеркивает, что его контент лицензирован CC BY-NC-SA 4.0, но явно не разрешен для использования в обучении ML/LLM.
Комментарии (180)
- Основной метод борьбы с AI-скраперами — генерация бессмысленного контента через Markov-цепи или gzip-бомбы, чтобы увеличить затраты скраперов на обработку данных.
- Этические риски: загрязнение обучающих данных LLM может привести к непредсказуемым последствиям и нарушению доверия к системам ИИ.
- Технические альтернативы: использование Basic Auth с публичными учётными данными или редирект на специализированные сервисы вроде "Markov Babbler".
- Проблема масштабирования: массовое применение методов защиты может привести к блокировке легитимного трафика и снижению репутации сайта.
- Эффективность сомнительна: современные LLM могут детектировать мусорный контент, а скраперы легко обходят простые защиты (например, через браузерные прокси).
Find SF parking cops 🔥 Горячее 💬 Длинная дискуссия
Приложение использует систему геймификации для повышения эффективности работы парковочных инспекторов. Оно создает лидерборды, где сотрудники соревнуются по количеству выписанных штрафов, времени реакции на нарушения и другим метрикам. Это мотивирует команду на более активные действия через дух соперничества и видимость достижений.
Система также предоставляет данные в реальном времени: карту с отмеченными нарушениями, статистику по районам и напоминания о патрулировании. Такой подход не только увеличивает продуктивность, но и помогает равномерно распределять усилия инспекторов, сокращая количество пропущенных нарушений.
Комментарии (444)
- Власти Сан-Франциско оперативно заблокировали источник данных сайта после его запуска, но затем данные снова стали доступны.
- Обсуждается алгоритм генерации номеров штрафов, предположительно использующий контрольную цифру по модулю 7.
- Проект вызвал дискуссию о балансе между общественным интересом к данным и потенциальными рисками для сотрудников.
- Упомянуты альтернативные источники данных: официальный открытый датасет SFMTA (с задержкой) и возможный слабый CAPTCHA на сайте платежной системы.
- Участники высоко оценили техническую реализацию и предложили идеи для улучшения: heatmap, уведомления, "доска позора" для наименее активных офицеров.
Beginning 1 September, we will need to geoblock Mississippi IPs 💬 Длинная дискуссия
Пройдите CAPTCHA, чтобы подтвердить запрос.
Нажмите «Войти» или создайте аккаунт.
- Вход: имя аккаунта, пароль, «запомнить меня»
- Забыли пароль? | Войти через OpenID
Меню
- Создать аккаунт / настроить отображение
- Искать: интересы, каталог, случайные журналы и сообщества
- Магазин: услуги, подарки, мерч
Ссылки
Политика конфиденциальности • Условия • FAQ • Поддержка • Исходный код
© 2009-2025 Dreamwidth Studios, LLC.
Комментарии (254)
- Пользователи обсуждают, как неуклюжие и противоречивые законы (Миссисипи, UK Online Safety Bill) заставляют сайты блокировать целые штаты и страны, хотя геоблокировка легко обходится VPN.
- Все жалуются на невозможность отслеживать сотни подобных законов: запустил маленький сайт — и уже нарушил законы в семи штатах и тринадцати странах.
- Поднимается вопрос: почему сайт, расположенный в другом штате или стране, должен подчиняться миссисипскому закону, если это межгосударственная или международная коммуникация?
- Многие отмечают, что штрафы огромны ($10 000 за каждого «непроверенного» пользователя), а сроки вступления закона — буквально недели, что делает соблюдение невозможным для мелких площадок.
- Итог: законодатели не понимают технологий, геолокация неточна, VPN всё равно всё обходит, а интернет всё больше дробится на «свободные» и «пуританские» зоны.
Ban me at the IP level if you don't like me 🔥 Горячее 💬 Длинная дискуссия
Thinkbot — бот, представляющийся строкой
Mozilla/5.0 (compatible; Thinkbot/0.5.8 … please_block_its_IP_address),
игнорирует robots.txt и предлагает просто банить его по IP.
За август он зашёл с 74 адресов, разбросанных по 41 сетевому блоку,
все принадлежат Tencent. Автор блокирует 40 подсетей Tencent,
покрывающих ≈ 476 590 IP-адресов, и подозревает,
что КНР внешне перекладывает затраты «Великого файрвола» на остальной мир.
Комментарии (387)
- Большинство жалуется на агрессивных ботов, особенно из Китая (Tencent, Alibaba и др.); многие просто банят весь CN-диапазон ASN.
- Роботы маскируются под браузеры, пренебрегают robots.txt и генерируют основную нагрузку; честные UA всё равно блокируют «на всякий случай».
- Популярные защиты: Cloudflare + CrowdSec/ModSecurity, geoblock, rate-limit, tarpit, «zip-bomb» или ложные данные вместо 403.
- Участники спорят о легитимности скрапинга и этике блокировок; предлагают whitelist-ASN, централизованные чёрные списки, CAPTCHA или авторизацию.
- Итог: без идеального решения; все методы похожи на «кот и мышь», а модель «блокировать всё подозрительное» становится нормой.