Во многих сферах безопасности есть негласный закон: хотите безопаснее — станет менее удобно.
Привет, Хабр! Меня зовут Руслан Сабиргалиев, руковожу группой аналитиков‑разработчиков отдела доверия и надёжности Яндекса. Вместе с командами Yandex Cloud и Yandex Infrastructure мы развиваем Yandex Smart Web Security (SWS) и Yandex SmartCaptcha. Эти сервисы защищают сайты и API клиентов от нежелательной автоматизации, DDoS‑атак и попыток эксплуатации уязвимостей. Этой же технологией мы бережём и сервисы самого Яндекса.
В прошлой статье я рассказывал, как устроен bot score — параметр для оценки «роботности» трафика, который помогает нам защищать приложения от вредоносных ботов. Но он не исключает «серой зоны», при которой мы покажем капчу легитиному пользователю (а этого никто не любит). Сегодня — о том, что мы сделали, чтобы не ограничиваться одним параметром. Расскажу на нашем примере, как технологии и внимательный анализ боли людей, а также защищаемых сервисов помогают поспорить с этим негласным законом. Мы добавили две проверки, которые человек почти не замечает, выстроили из них систему интерактивных «челленджей» и дали клиентам три режима защиты. В итоге сдвинулся сам компромисс между удобством и безопасностью.
Читать далееFreeBSD развивается спокойно: очередной выпуск редко переворачивает систему с ног на голову, зато может избавить от нескольких неприятных обходных путей. Версия 14.5 вышла спустя полгода после 14.4. В ней есть изменения, которые пригодятся разработчикам, администраторам, да и обычным гикам тоже. Чем-то из ряда вон этот релиз не является, но хороших нововведений немало.
Самая заметная новинка — собственная реализация Linux-интерфейса inotify для слежения за файлами. Но обновление этим не ограничивается: поправили загрузку, работу с FAT32, сетевые настройки и ряд утилит. Давайте разберем, что там и как. И да, если уже успели оценить 14.5 (а за пару недель много кто успел), делитесь в комментариях, как вам новая версия.
Читать далее →ИИ-фотосессия по своим фото обычно работает по двум сценариям. В первом вы загружаете несколько снимков, выбираете стиль, и сервис сам генерирует целую серию кадров. Во втором исходное фото используется как референс, а каждый новый снимок создаётся отдельно по текстовому промпту.
Главная сложность в обоих случаях — сохранить внешность человека. Нейросеть может сделать красивый кадр, но изменить черты лица, возраст, форму глаз или причёску настолько, что на изображении окажется уже совершенно другой человек.
Ниже проверим оба подхода на реальных примерах: сервисы с автоматической генерацией фотосессии и нейросети, где сцену приходится собирать промптом вручную. Сравним, насколько хорошо они сохраняют внешность, сколько действий требуют от пользователя и для каких задач каждый вариант подходит лучше.
Читать далееЧто происходит после того, как Битрикс24 отправляет исходящий вебхук? Разбираем POST-запрос, логирование, Flask, Django и базовую защиту endpoint.
Читать далееПривет, Хабр! Меня зовут Настя, я фронтенд-разработчик в OpenYard и занимаюсь веб-интерфейсом BMC (Baseboard Management Controller) — системы, через которую можно управлять сервером и следить за его состоянием.
Узнать большеThreads у моего проекта EverStory (семейные фото-книги) долго жил по остаточному принципу. 2–3 поста в неделю, если вспомню, а в неделю релиза тишина. Комментарии я лайкала и забывала. Хотя люди писали там вполне живые вещи: про бабушкины альбомы, коробки с плёнками, про то, кто в семье «хранитель архива». Разбирать это было некому.
Тогда я собрала агента Amy. Она пишет посты и публикует их 5 раз в день, отвечает на комментарии и раз в неделю приносит выжимку того, что говорит аудитория. Управляется кнопками в Telegram, без моего одобрения ничего не публикует. Код открыт, ссылка в конце.
Читать далееМеня зовут Андрей, я – специалист по оптическим системам, оптик и инженер-конструктор в одном лице.
Недавно нам понадобилось исправить дисторсию изображения, опираясь не на привычный метод калибровки по паттерну «шахматной доски», а на график дисторсии объектива из спецификации. В процессе работы я заметил, что нюансы такого обманчиво простого исправления могут изрядно запутать неподготовленного человека. Естественным образом возникла мысль описать такой метод коррекции дисторсии «под ключ», начиная с оптики и заканчивая кодом, а также подсветить некоторые неочевидные моменты.
Читать далееЧасть вторая по использованию ИИ в сложной работе devops. Первая доступна по ссылке
Жду ваших коментариев и дополнений
Читать далееПользователь просит Telegram-бота сравнить две модели наушников для рабочих звонков. Агент ищет обзоры, читает страницы, проверяет, что пишут о микрофонах. Всё это занимает время, а по надписи «печатает…» трудно понять, на каком этапе он сейчас находится.
В Telegram есть встроенный интерфейс для такой работы: временное сообщение с блоком состояния, анимированными иконками и кнопкой Stop. На примере своего агента swift-claw покажу, как связать его с вызовами инструментов и отменой задачи.
Читать далееНи для кого ни секрет, что в последние несколько лет в военном деле произошла т.н. революция дронов, заключающаяся (внезапно) в использовании дронов для поражения военной техники и живой силы противника. И в отличии от предыдущих революций, опиравшихся в основном на высокие технологии и не менее высокую цену изготавливаемой продукции, FPV-дроны делают ход козлом и берут не столько технологичностью, сколько копеечной стоимостью, благодаря которой такой агрегат не только может выносить технику, превосходящую его по стоимости в тысячи раз, даже снаряд ПВО порой стоит значительно дороже.
И если военная техника кое-как пытается противостоять новой угрозе, обрастая антидроновыми "зонтиками" и "усами", обвешиваясь активной защитой и антидроновыми турелями, то вот с переносными средствами защиты, способными спасти пехотинца, все не так радужно.
Читать далееИз новостей: крошечный кот на вашем рабочем столе
Почему при стандартных настройках KNN-поиска пересчёт расстояний при колоночном хранении векторов работал медленнее, чем при построчном, и как Manticore почти убрал эту разницу, сохранив скорость поиска по данным, которые не помещаются в память.
Читать далееВ маленькой типографии единственный наладчик знал, как заставить работать станок, выпущенный двадцать лет назад. Инструкция к станку давно утеряна, сервисный центр закрылся, а все настройки хранились в голове одного человека. Когда он ушёл, производство остановилось на несколько дней – пока не нашли бывшего сотрудника того самого сервисного центра и не уговорили его помочь.
Читать далееАгент проверял разворот на палиндроме, а порядок четырех потоков - на четырех одинаковых входах. Тесты проходили и с ошибкой. В эксперименте Дэна Лу указания использовать TDD, фаззинг и формальные методы не дали убедительного общего выигрыша над контролем. Разбираю три механизма бесполезных проверок и показываю исполнимый пример: как намеренно внести конкретный баг и убедиться, что тест его обнаруживает.
Читать далееЕсли вы хоть раз работали в офисе, то наверняка видели это окно. В панели задач висит Блокнот без названия, а внутри лежат номер телефона без имени, гостевой пароль от вайфая, чей-то адрес доставки и абзац из письма, который вставили туда только затем, чтобы он потерял жирный шрифт и синий цвет. Сохранять это окно никто не собирается, закрывать тоже, и живет оно до ближайшей перезагрузки (вернее, жило, но к этому мы еще вернемся).
Блокнот, наверное, самая массовая программа, про которую никто ни разу не сказал доброго слова. Им пользуются бухгалтерия и админы, школьники и разработчики, у которых давно стоят VS Code и Notepad++, но рука все равно жмет Win+R и набирает notepad, когда надо за десять секунд поправить строчку в hosts. Мне стало интересно, как эта невзрачная программа дотянула до 2026 года. Выяснилось, что Блокнот старше самой Windows, что однажды он стал героем теории заговора про Джорджа Буша, что сорок лет он помнил ровно одно последнее действие и что в феврале этого года в нем нашли уязвимость, через которую на компьютер можно было подсунуть чужой код.
Читать далееНа рынке есть готовые продукты: пара датчиков на ботинки, приложение считает технику катания, подсказывает, что тренировать. Работает неплохо. Но по подписке — и недёшево: например, у Carv безлимитный сезонный доступ стоит $249 / £199 в год. И вот тут возникает вопрос: насколько эта подписка вообще оправдана? Датчик — это акселерометр с гироскопом за пару долларов и Bluetooth‑модуль, приложение — по сути обработка сигнала и немного статистики. Разовая покупка железа плюс разработка — понятные, конечные затраты. А подписка — плата за то, что уже посчитано один раз и с тех пор просто работает. Есть ощущение, что здесь платишь не за вычисления, а за то, что вход на рынок для конкурентов высокий: откалибровать алгоритмы, написать мобильное приложение, а потом ещё поддерживать серверы, пользователей и производство железа — дорого и долго. Подписка отбивает эти инвестиции. Но большая часть этого барьера — стоимость разработки, а она за последние пару лет резко упала: с ИИ‑инструментами то, что раньше требовало команды, становится посильным для одного человека. Продукт для рынка так не сделать — там нужна калибровка на тысячах лыжников, поддержка и сертификация. А вот любительский инструмент — вполне.
Второй мотив — практический: проверить на реальном, не игрушечном проекте, что сейчас умеют ИИ‑инструменты в разработке. Не автодополнение строк, а весь путь: от идеи и архитектуры до калибровки алгоритмов на реальных данных с настоящего железа. Ниже, в разделе 9, — про то, как это было на практике, а не в презентациях.
Читать далееНа фоне десятков языков с привычным английским синтаксисом появление «Сферы» выглядит почти вызовом: это полностью кириллический язык программирования с настоящим компилятором — не интерпретатор и не транспайлер, а генерация машинного кода через LLVM.
За внешней необычностью стоит вполне зрелая инженерия: автоматическое управление памятью, обобщённые типы, контракты, многопоточность, сеть, графика, пакетный менеджер поверх git и отладчик с полноценной поддержкой DWARF. «Сфера» не претендует на то, чтобы заменить индустриальные языки — но доказывает, что кириллический синтаксис способен быть не курьёзом, а рабочим инструментом. И в этой статье честно говорим не только о том, что уже получилось, но и о том, что ещё предстоит сделать.
Читать далееKotlin Coroutines - разбираемся с диспатчерами и обработкой ошибок, а так же обсудим некоторые важные нюансы возникающие при работе c корутинами
Что там?У меня есть умный телевизор Yandex. По моему субъективному мнению колонки и ТВ у Яндекса получились отличные. Но иногда появляется желание сделать умный телевизор чуть умнее.
На очереди функция «датчик движения». Конечно же, хотелось использовать CSI, поскольку он в отличие от грубых интегральных метрик вроде RSSI (уровень мощности сигнала) предоставляет детализированную оценку радиоканала на уровне отдельных поднесущих частот. Что, в принципе, позволяет пойти сильно дальше просто обнаружения присутствия.
Идея была такая: телевизор и роутер стоят на месте, а человек между ними меняет условия распространения сигнала. Причём сигнал приходит не только по прямой — он отражается от стен, мебели и других предметов. Когда кто‑то проходит, меняется сочетание этих путей. Остаётся понять, какие изменения телевизор позволит прочитать.
Самый доступный вариант — RSSI, уровень принимаемого сигнала. Android отдаёт его через WifiInfo.getRssi() в dBm. По сути, мы видим одно число: сейчас −30, через некоторое время −34. Можно увидеть изменение мощности, но нельзя понять по этому числу, что произошло с отдельными составляющими радиоканала.
CSI — Channel State Information — даёт сильно больше подробностей. Вместо одного показателя мощности можно получить оценки амплитуды и фазы на отдельных поднесущих OFDM, а при соответствующей поддержке — ещё и для разных пар передающих и принимающих антенн. Общая мощность может почти не измениться, хотя внутри этой картины уже что‑то произошло. Для поиска движения это интереснее, но такие данные ещё нужно очистить от помех и особенностей измерения.
Читать далееВ новостях мы периодически можем увидеть сообщения о том, что та или иная компания была взломана хакерами, однако обычно, сколько-нибудь значительных технических подробностей не приводится. В этой статье мы попробуем исправить эту оплошность и приведем технический разбор атаки на цепочку поставок компании Salesoft Drift.
Читать разбор