Хабр, привет!
На связи Алина Байрамова, аналитик-исследователь угроз кибербезопасности R-Vision.
Появление новой уязвимости с рабочим публичным PoC обычно запускает привычный процесс: специалисты определяют затронутые системы, проверяют наличие обновлений и планируют установку патчей. Но до тех пор, пока инфраструктура не обновлена, необходимо понять, можно ли заметить попытку эксплуатации по доступной телеметрии.
С этим не всегда все очевидно. Описание CVE и публичный PoC позволяют понять, как работает уязвимость, но сами по себе не дают готового сценария обнаружения. Эксплойт может использовать штатные механизмы операционной системы, а отдельные действия, которые он выполняет, встречаются и в легитимной активности.
В этой статье разберем три публичных PoC для Dirty Frag: два варианта эксплуатации CVE-2026-43284 через ESP/XFRM и один для CVE-2026-43500 через RxRPC.
Посмотрим, какие системные вызовы выполняют эксплойты, какие следы остаются в событиях Linux и какие признаки можно использовать для обнаружения эксплуатации. В результате соберем детекты для разных вариантов Dirty Frag и сравним, какие признаки остаются стабильными между реализациями PoC.
Читать далееЗапрос получил 202, автотест прошёл, а через несколько дней выясняется, что часть операций так и не завершилась успешно. Такая ситуация возникает, когда проверяется только ответ HTTP‑обработчика, а сама асинхронная цепочка остаётся без контроля. Разберём, как построить тест для API с polling: от запуска операции и проверки статуса до валидации итогового результата и безопасного повторного запроса.
Проверить APIВ первом квартале 2026 года 17,7% проданных серверных процессоров были на ARM. AWS уже выпускает пятое поколение Graviton, Google предлагает Axion не только в виртуалках, но и на bare metal, Microsoft разворачивает Cobalt 200, а Oracle использует AmpereOne. При этом индустрия уже дважды хоронила эту архитектуру — в 2013 и в 2018 году. Под катом расскажу, кто лежит на кладбище ARM, почему третий заход оказался успешнее и готов ли ваш стек к переезду.
ЧитатьИИ всё лучше справляется с текстом, кодом и другими типовыми задачами, а компании переходят от экспериментов к промышленному внедрению. Нынешняя волна автоматизации кажется уникальной, но похожие технологические сдвиги уже происходили раньше. В первой части серии статей посмотрим, как менялись задачи и роли специалистов и почему развитие самого ИИ тоже идёт циклами.
Что, если два небольших автоматизированных процесса возвращают компании больше 160 рабочих часов в месяц?
В одном из проектов я связал внутреннюю Excel-систему компании с маркетплейсами и добавил AI-черновики ответов на обращения покупателей — при этом финальное решение всегда остаётся за сотрудником.
Разобрал, где именно терялось время, что автоматизировал и почему эффект получился примерно на 100 тысяч рублей рабочего времени в месяц на 5 сотрудников.
В статье — цифры, архитектура и экономика внедрения.
Разобрать кейсКак автоматизировать полное обесточивание материнской платы после прошивок — без Wi-Fi, без магии, зато с полным разбором что и почему.
Читать далееНедавно Никита Михалков, помимо обычного «гона Бесов» — пусть будут с большой буквы, как у Достоевского, — высказался ещё и об искусственном интеллекте. С мыслью, которую он, как всегда, талантливо и красочно преподнёс, спорить трудно. Михалков заявил, что, если искусственный интеллект заменит естественный, искусство потеряет всякий смысл, ведь у «машины», как он по инерции окрестил ИИ, нет «ни совести, ни души, ни сострадания, ни страха, ни любви». С первой частью этого утверждения я готов согласиться почти безоговорочно, но переход ко второй кажется мне далеко не столь очевидным.
Читать далееКогда много работаешь с ИТ‑проектами, быстро понимаешь, какие инструменты действительно экономят время команды. Я работаю аналитиком и архитектором систем в компании интеграторе, где а мы помогаем компаниям автоматизировать передачу данных из 1С в BI‑системы (системы аналитики). Проще говоря — настраиваем обмен между 1С и BI так, чтобы нужные данные автоматически поступали в контур аналитики и обновлялись по расписанию, без регулярной ручной загрузки.
Со временем мы заметили, что нашим заказчикам не хватает быстрого и удобного способа собирать витрины данных для BI — без сложного кода, с понятной логикой и простым обслуживанием. Да, есть конечно Apache AirFlow, есть DBT — но все это для технарей, для искущенных в Python и SQL.
И в какой‑то момент возникла мысль о своем ETL‑решении, но дружелюбном к нормальным бизнес‑пользователям. Так появился DVT — low‑code ETL‑сервис, который мы сначала развивали в собственных проектах, а теперь решили сделать общедоступным, выпустив его в Open Source.
В этой статье покажу, что конкретно умеет DVT, зачем мы открываем его исходный код и в чем польза этого решения — для компаний и для нас как разработчиков.
Читать далееПредставьте, что в вашу команду взяли уверенного миддла. Но ему не дали доступ к трекеру, не показали базу знаний, а про архитектурные решения рассказали один раз на онбординге. Его изредка просят что‑нибудь погуглить, иногда поручают небольшую фичу в отрыве от контекста большой картины, а потом ругают за плохое понимание задачи и принятых в компании процессов.
Вот так примерно я вижу внедрение нейронок в процессы разработки. Под катом — про то, какие грабли возникают при внедрении агентской разработки в процессы вне зависимости от размера команды и компании и что я наработал и подглядел у других за годы парного программирования с компьютерами.
Под кат →Агентный код вроде Claude Code или Cursor постоянно работает с ключами: читает .env, генерирует конфиги, логирует свои действия. Любой токен, попавший в контекст модели, разумно считать скомпрометированным: контекст логируется, трассируется, из него можно вытащить секрет промпт-инъекцией.
Разбираем практический подход: агент получает MCP-инструмент вместо секрета — 13 методов для выпуска, ротации и отзыва виртуальных пропусков, среди которых намеренно нет операции «прочитать ключ». Конфиги подключения, сценарий pending secret (агент разворачивает бота раньше, чем появляется токен) и честное ограничение: hosted-прокси не может быть zero-knowledge по архитектуре.
Читать далееРынок разработки ПО в России продолжает расти, а вот маржа у самих разработчиков тает на глазах. По оценке «Руссофта» на основе опроса более 300 участников индустрии, проведённого в марте — апреле 2026 года, совокупная выручка российских софтверных компаний по итогам 2026 года может вырасти на 17%, до 3,3 трлн рублей, но более 20% компаний рискуют закончить год со снижением выручки. При этом годом ранее снижение выручки прогнозировали 3,8% опрошенных, а фактически оно произошло почти у четверти компаний. Когда рынок находится в таком состоянии, ошибка в выборе модели ценообразования на одном проекте стоит дороже, чем несколько лет назад.
Поэтому фикс-прайс или T&M это не вопрос вкуса или привычки, а вопрос того, кто из сторон принимает на себя риск неточной оценки. Идеальной модели нет, у каждой есть условия, при которых она работает на проект, и условия, при которых работает против него.
Как устроены обе модели
Фикс-прайс. Заказчик и подрядчик до старта фиксируют объём работ, цену и срок. Оценка делается один раз: если объём недооценили, это проблема исполнителя, а если что-то заложили с запасом и оно не понадобилось, переплачивает заказчик.
T&M (Time & Materials). Заказчик платит за фактически отработанные часы по согласованной ставке. Оценка изначально примерная и уточняется по ходу проекта, риск неопределённости в большей степени переходит на заказчика, зато исполнитель не расплачивается за собственную ошибку в оценке.
Жёсткой границы между моделями нет ни в законе, ни на практике. Большинство реальных договоров это комбинация фиксированной цены, оплаты по фактическим трудозатратам и различных механизмов ограничения риска. Сами термины «фикс-прайс» и «T&M» относятся скорее к деловой практике, чем к самостоятельным юридическим конструкциям.
Читать далееИнфраструктура Selectel насчитывает тысячи серверов, которые круглосуточно обеспечивают работу клиентских проектов: процессоры обрабатывают инструкции, память хранит данные, диски читают и записывают информацию. Такая постоянная нагрузка заложена в архитектуру оборудования, но риски сбоев — будь то аппаратные ошибки, перегрев, сбои питания или проблемы с сетью — есть всегда.
В случае нештатной ситуации инженеры быстро восстановят работу. Однако лучше обнаружить проблему еще до того, как она затронет клиентскую инфраструктуру. Именно для этого существует IPMI-мониторинг — своего рода приборная панель сервера, которая показывает состояние оборудования и помогает замечать первые признаки возможных неисправностей.
В этой статье расскажем, что такое IPMI-мониторинг серверов и рассмотрим принцип его работы. Также посмотрим, как настроить IPMI-мониторинг для выделенных серверов в Selectel.
Читать далееКак я попробовала решить задачу детекции огня и дыма без обучения, zero-shot детекцией на VLM. О том, как изначально всё работало на видео с настоящим дымом, а на заведомо чистых улицах модель нашла «дым» на 70 % моих данных: рисовала боксы на машинах, знаках и светофорах, иногда с confidence 0% и текстовым пояснением, что дыма нет. В статье описала, почему одношаговый bbox-формат провоцирует ложные детекции, какие стандартные приёмы промпт-инжиниринга не помогли и какое изменение промпта снизило долю ложных тревог с 70 % кадров до нуля при recall выше 80%.
Читать далееИстория left-pad, самого нелепого апокалипсиса в истории open-source. Заодно про то, почему миф о надёжности открытого кода не выдерживает проверки фактами, и про деталь, которую из этой истории обычно выбрасывают.
Читать далееПриветствую всех!
Как-то раз я уже рассказывал про релейный кодовый замок из восьмидесятых. Тогда я говорил, что помимо него существовали ещё и более новые экземпляры. И вот, волею случая один из них попал ко мне в руки. Чем он отличается от предшественника и как он устроен? Сейчас и узнаем.
Итак, сегодня посмотрим на, наверное, самый распространённый кодовый замок тех лет. Проведём ностальгическую распаковку, посмотрим на все его блоки и, конечно, разберёмся, как он работает. Как водится, будет много интересного.
Press F1 to continueСбор кодового покрытия для небольшого проекта обычно не вызывает особых сложностей: собрали код с поддержкой coverage, запустили тесты и получили отчёт. Но когда речь идёт о целой операционной системе с тысячами компонентов и тестов, процесс становится значительно сложнее.
В статье разберём, как организован сбор покрытия в ОС “Нейтрино”: от сборки компонентов и получения файлов .gcno и .gcda до формирования трассировочных файлов и объединения результатов из различных CI/CD-конвейеров. Также рассмотрим особенности формирования итоговых отчётов и расскажем, почему в дальнейшем планируется переход с lcov на gcovr.
ОзнакомитьсяГоворя об уникальности, в голову приходит один яркий, хоть и весьма заезженный и слегка гиперболизированный пример, — снежинки. Все они уникальны. Но мало кто, говоря об уникальности, вспоминает людей, а точнее личности. Все мы, независимо от вероисповедания, культурной, социальной, этнической или какой-либо другой принадлежности, является представителями одного вида, что, к сожалению, многим до сих пор не дано понять. При этом каждый из нас обладает своим уникальным набором черт личности, привычками, хобби, желаниями и целями. Является ли эта уникальности спонтанным творением эволюции высшей нервной системы, либо в ней все же заложена некая генетическая закономерность. Ученые из Университета штата Мичиган (Ист-Лансинг, Мичиган, США) провели исследование, в ходе которого выявили порядка 1200 генетических вариантов, который в разной степени связаны с личностными качествами, здоровьем, привычками и даже потенциальным уровнем дохода. Какие гены отвечают за какие черты личности, какова общая картина данной зависимости, и каково практическое значение полученных данных? Ответы на эти вопросы мы найдем в докладе ученых.
Читать далееКогда decode(encode(x)) == x недостаточно
С сериализацией всё вроде бы просто: есть значение x, мы превращаем его в байты, передаём куда-то ещё, а потом восстанавливаем.
decode(encode(x)) == x
Если получилось — значит, сериализация работает. По крайней мере, так кажется. Но что именно означает ==?
Если два указателя после декодирования указывают на независимые объекты с одинаковым содержимым — значение сохранилось или нет? Если два slice содержат те же байты, но больше не используют одну backing array? Если объект ссылался сам на себя, а после восстановления цикла уже нет? В какой-то момент оказывается, что сохранить данные — ещё не значит сохранить значение.
А затем возникают следующие вопросы: что именно должно быть частью wire-представления, может ли одно значение иметь несколько корректных представлений и сколько ресурсов decoder вообще обязан потратить на восстановление недоверенного входа?
Все эти проблемы известны давно. Интереснее другое: что произойдёт, если перестать рассматривать их как независимые компромиссы? И можно ли провести привычную границу немного дальше?
Читать далееПока компании тратят миллиарды долларов на создание все более умных языковых моделей, один стартапер двинулся в противоложном направлении. Он запустил чат-бот, в котором вообще нет искусственного интеллекта. Никаких LLM, алгоритмов машинного обучения и автоматической генерации ответов. Пользователь пишет вопрос в обычное окно чата, ждет ответа, а на другом конце ему отвечает человек.
Читать далееЗа последний год я стал гораздо меньше писать код руками и гораздо больше отдавать AI‑агентам: реализацию, тесты, исследование кодовой базы, поиск вариантов и часть анализа.
Это заставило меня пересмотреть довольно простую гипотезу о будущем разработки. Сначала мне казалось, что по мере роста возможностей AI ценность инженера просто сместится от написания кода к архитектуре и принятию технических решений.
Я решил проверить эту идею. Посмотрел исследования производительности разработчиков с AI, карьерные лестницы инженерных компаний и поговорил с Middle/Senior‑разработчиками, Team Lead'ами и Engineering Manager'ами.
Картина оказалась сложнее. AI действительно может сильно ускорять работу, но эффект зависит от задачи, опыта и контекста. Зелёные тесты не гарантируют готовность изменения к продакшену. А способность работать с неопределённостью сама по себе плохо объясняет разницу между Middle и Senior.
В статье разбираюсь, что в такой среде начинает лучше показывать уровень инженера и почему сама реализация постепенно становится менее убедительным доказательством хорошей инженерной работы.
Читать далее