Advent of Code 2025: Number of puzzles reduce from 25 to 12 for the first time 🔥 Горячее 💬 Длинная дискуссия
Advent of Code 2025 — это календарь программистических головоломок на каждый день декабря, доступных для решения на любом языке программирования. Созданный Эриком Вастлом, этот проект подходит для любого уровня подготовки — от новичков до опытных разработчиков. Участники используют его для подготовки к собеседованиям, обучения в компаниях, университетских курсов или просто для практики. Не требуется глубоких знаний компьютерных наук — достаточно базовых навыков программирования и решения задач. Все задачи можно решить на десятилетнем оборудовании за не более 15 секунд.
Проект поддерживается через AoC++ и социальные сети. Если вы застряли, автор советует проверять решения на примерах, создавать тестовые случаи и обращаться за помощью в subreddit. В разделе FAQ освещены вопросы аутентификации через OAuth, сложности задач (которые обычно возрастают со временем), разблокировки задач в полночь по EST, а также возможность участия в соревнованиях через приватные рейтинги.
Комментарии (191)
- Сокращение до 12 дней вместо 25 вызвало бурную дискуссию: часть сообщества считает, что это разрушает саму суть "Advent of Code", в то время как другие отмечают, что это снизит нагрузку на автора и позволит ему продолжать проект.
- Пользователи отмечают, что сокращение до 12 дней делает невозможным привычное соревнование за лидербордом, и что это может оттолкнуть некоторых участников.
- Некоторые участники выразили обеспокоенность тем, что сокращение может повлиять на качество головоломок, так как автор будет иметь меньше времени на их разработку.
- Некоторые участники предложили альтернативы, такие как выпуск головоломки каждые два дня вместо ежедневного выпуска, что позволило бы сохранить привычный формат мероприятия.
- Участники также обсудили, что сокращение до 12 дней может повлиять на их собственные планы на декабрь, и что они могут не успеть решить головоломки до Рождества, что для них является важным элементом мотивации.
How to Lead in a Room Full of Experts 🔥 Горячее
Руководить командой экспертов — это не о том, чтобы быть самым технически подкованным, а о том, чтобы эффективно связывать разные области знаний. Лидер служит переводчиком между специалистами: например, когда бэкенд-разработчики говорят о трёх неделях на внедрение аутентификации, а продукт-менеджеры ждут результат «к концу недели». Задача — не вдаваться в детали OAuth, а найти общий язык и объяснить ограничения.
Ключевые навыки здесь — социальные: умение слушать, смягчать конфликты и фокусировать обсуждение на цели, а не на технических спорах. Важно чётко формулировать проблему (не «приложение тормозит», а «пользователи не видят обновление корзины») и признавать незнание — это поощряет экспертов делиться идеями. Лидер создаёт пространство, где каждый может проявить себя, а решение рождается из коллективного опыта.
Комментарии (117)
- Лидерство в технических командах требует баланса между фасилитацией обсуждений и принятием решений, когда это необходимо для преодоления тупиковых ситуаций.
- Эффективный лидер действует как переводчик между командами и специалистами, обеспечивая ясность и доверие, а не просто отдавая приказы.
- Важно объяснять причины решений и брать на себя ответственность за их последствия, чтобы команда чувствовала себя в безопасности и могла двигаться вперед.
- Попытки достичь консенсуса по всем вопросам могут привести к параличу команды; иногда требуется авторитарное решение для сохранения прогресса.
- Убеждение людей редко работает только на фактах; необходимо учитывать эмоциональный и социальный контекст аудитории.
From MCP to shell: MCP auth flaws enable RCE in Claude Code, Gemini CLI and more
Уязвимости в реализации аутентификации OAuth в клиентах MCP позволяют удалённое выполнение кода через популярные инструменты вроде Claude Code и Gemini CLI. Злоумышленник может создать вредоносный MCP-сервер, который передаёт клиенту поддельный URL авторизации — при его открытии происходит выполнение произвольного кода на машине пользователя.
Эксплуатация возможна из-за отсутствия проверки URL со стороны клиентов. Уязвимы Cloudflare use-mcp, MCP Inspector и другие реализации. В демонстрации показан запуск калькулятора через Claude Code, но атака может быть расширена до установки бекдоров или вредоносного ПО. Индустрия уже реагирует на обнаруженные уязвимости, внедряя исправления.
Комментарии (36)
- Аналогия MCP-серверов с пакетами (pip/npm), а не с безопасными веб-сайтами; ключевой вопрос — доверие источнику кода, а не самому протоколу.
- Критика безопасности реализации MCP в клиентах (Claude Code/Gemini), приведшей к уязвимостям, но признание оперативного исправления Google.
- Споры о фундаментальной уязвимости MCP к инъекциям через инструменты и невозможности полной защиты от prompt-инъекций.
- Дебаты о необходимости и качестве протокола: одни видят в нём прорывную технологию, другие — небезопасный и избыточный уровень абстракции.
- Акцент на важности доверенных источников (supply chain) и качества кода MCP-серверов, а не на отказе от технологии в целом.
x402 — An open protocol for internet-native payments
Открытый протокол x402 использует HTTP-статус 402 для мгновенных платежей через API без регистрации, OAuth или сложных подписей. Он бесплатен для обеих сторон, обеспечивает расчет за 2 секунды через блокчейн и не привязан к конкретной сети или токену. Для интеграции достаточно одной строки кода в middleware, что позволяет принимать платежи в USDC или других криптовалютах без прямого взаимодействия с блокчейном.
Протокол открывает новые модели монетизации для ИИ-агентов, облачных хранилищ и создателей контента, поддерживая микроплатежи без подписок или рекламы. Ответ сервера 402 автоматически запрашивает оплату, делая процесс seamless для пользователей. Это веб-нативный стандарт, работающий через заголовки HTTP, что упрощает внедрение в существующую инфраструктуру.
Комментарии (109)
- Пользователи делятся опытом тестирования протокола x402, отмечая как простоту получения USDC и подключения кошелька, так и проблемы с потерянными транзакциями и потенциальной двойной оплатой.
- Критики указывают на скрытые комиссии блокчейна, волатильность сборов, корпоративный интерес Coinbase и отсутствие децентрализации по сравнению с Bitcoin и Lightning Network.
- Обсуждаются технические аспекты: использование HTTP 402, абстрагирование gas-фees, скорость подтверждений в блокчейне и сравнение с альтернативами (SEPA, L402, A2P).
- Высказываются опасения по поводу усложнения веб-платежей, пригодности для микроплатежей и опасности корпоративного захвата открытых платежных систем.
- Отмечается потенциал протокола для оплаты AI-агентами и API-запросов, но подчеркивается необходимость предоплаты и стандартизации для автоматизации.
An illustrated guide to OAuth 🔥 Горячее
Как работает OAuth
Вместо передачи логина-пароля стороннему приложению OAuth выдаёт токен доступа — персональный «ключ» для конкретного пользователя. Приложение использует его, чтобы действовать от имени пользователя без доступа к его паролю.
Классический поток
- Пользователь нажимает «Подключить банк» в YNAB.
- YNAB открывает браузер с URL провайдера (например, банка), куда добавляет
client_id,redirect_uri,scopeи случайныйstate. - Пользователь логинится у провайдера и разрешает доступ.
- Провайдер перенаправляет обратно в YNAB с кодом авторизации.
- YNAB обменивает код на токен доступа через безопасный back-end-запрос.
- С токеном YNAB запрашивает данные счёта.
PKCE
Для мобильных и SPA добавляют code_challenge и code_verifier, чтобы перехват кода не дал злоумышленнику токен.
Refresh-токены
Короткоживущий access token можно обновлять долгоживущим refresh token без повторного логина.
Итог
OAuth разделяет аутентификацию и авторизацию: пользователь доверяет провайдеру, провайдер — приложению, приложение получает минимально необходимые права.
Комментарии (54)
- Участники жалуются, что OAuth/OIDC кажутся простыми, но реальная реализация требует чтения спецификаций и RFC, а поверхностных гайдов мало.
- Несколько человек подтвердили: приходится самим собирать знания из RFC, OIDC-документов и собственных заметок.
- Упомянуты полезные ресурсы — гайд Alex Bilbie, книга Aaron Parecki, страницы Mozilla и RFC-примеры.
- PKCE считается не «менее безопасным», а способом защитить целостность потока; просят отдельный материал о нём.
- Критика стандарта: OAuth 2.0 «скелет протокола», с множеством опциональных частей и историческими уязвимостями.
Ghrc.io appears to be malicious 🔥 Горячее
ghrc.io — опечатка к ghcr.io — маскируется под реестр контейнеров, но крадёт GitHub-токены.
Как работает атака
- Обычные пути (
/,/404) возвращают стандартную страницу nginx. - API-путь
/v2/отдаёт401 Unauthorizedи заголовок
www-authenticate: Bearer realm="https://ghrc.io/token".
Docker, containerd, podman и Kubernetes-рантаймы, получив этот заголовок, отправляют свои учётные данные на ghrc.io/token.
Когда утекут токены
docker login ghrc.io- GitHub Action
docker/login-actionсregistry: ghrc.io - Секрет Kubernetes для ghrc.io
Простой docker pull ghrc.io/… без логина не передаёт токенов.
Что делать
Если вы когда-либо логинились на ghrc.io:
- Смените пароль GitHub.
- Отзовите все PAT и OAuth-токены.
Комментарии (58)
- Пользователи обсуждают, что домен-ошибка
ghrc.io(вместо правильногоghcr.io) уже зарегистрирован и может использоваться для атак. - Основная уязвимость: GitHub Container Registry всё ещё требует «классические» токены, которые нельзя ограничить по областям, усиливая риск утечки.
- Многие открытые проекты уже ошибочно используют
ghrc.ioв конфигах CI/CD, что делает атаку массовой. - Рекомендации: отказаться от сокращений вроде «ghcr», использовать DNSSEC/SSO-короткие токены, контактировать abuse@dynadot.com для блокировки злоумышленного домена.
We put a coding agent in a while loop 🔥 Горячее 💬 Длинная дискуссия
RepoMirror — сервис для зеркалирования репозиториев GitHub.
- Как работает: клонирует репозитории и обновляет их по расписанию.
- Форматы: поддерживает Git, LFS, релизы, issues, PR, wiki.
- Доступ: публичные и приватные репы (OAuth-токен).
- Скорость: CDN, параллельные загрузки, дедупликация.
- API: REST/Webhook для управления зеркалами.
- Статистика: размер, частота обновлений, ошибки.
- Архив: хранение старых снапшотов.
- CLI:
repomirror sync <owner>/<repo>. - Самостоятельный хостинг: Docker-образ + конфиг
repomirror.yml.
Комментарии (271)
- Появится новая «грязная» работа: разгребать legacy-код, порождённый «vibe-coding’ом» продажниками.
- Агенты в цикле успешно портировали код, но иногда убивали себя pkill’ом, чтобы выйти из бесконечного цикла.
- Короткие промпты (≈100 слов) работают лучше 1500-словных «улучшений» — агенты быстрее и умнее.
- Без чётких тестов и стиля код «почти работает», но превращается в неподдерживаемый slop.
- Стоимость: Sonnet-агент ≈ $10,5/час; без лимитов легко проснуться с огромным счётом.
The unbearable slowness of AI coding
Два месяца писал код только с Claude Code. Поначалу — восторг: задачи летят, коммиты сыплются.
Сейчас, когда приложение разрослось, всё затормозилось. Парадокс: само приложение умеет запускать множество копий Claude Code, и я держу одновременно 5 инстансов, пока придумываю новые фичи.
Задержка появляется при проверке PR. Каждый приходится локально применять, читать логи, просить Claude чинить собственные ошибки.
Объём кода огромен, но скорость воспринимается как мучительно медленная: после первого «ускорения» хочется, чтобы всё так же летело. Это затягивает.
Пока Claude остаётся QA-инженером, который требует контроля. Не верю, что CLAUDE.md решит проблему: правил-то он едва придерживается, а уж комплексные интеграционные тесты — тем более.
Пока что продолжаю мёржить PR вручную, вешать git-хуки за качество и «мчаться» по задачам, пока не выяснится, что модель придумала несуществующие методы библиотеки, и придётся вырезать Clerk и писать GitHub OAuth с нуля.
Комментарии (50)
- Участники обсуждают «проблему золушки»: задача должна быть достаточно большой, чтобы оправдать описание и ревью, но не настолько, чтобы LLM «утонула».
- Ключевой узкое место — человек: быстро генерируемый AI-код всё равно требует внимательного прочтения и понимания.
- Нужно сразу задавать архитектуру и контролировать её, иначе проект быстро разрастается хаотично; README и тесты помогают, но сами тесты иногда «ломаются» или игнорируются агентом.
- Эффективные подходы: дробление задач на 4-5 мелких, запуск нескольких специализированных агентов (док-мен, безопасность, оптимизация), строгая типизация и CI-хуки для поимки галлюцинаций библиотек.
- Некоторые считают, что LLM-программирование — это отдельная дисциплина, где привычные паттерны не работают, а «медленно и гладко» оказывается быстрее в итоге.
Abusing Entra OAuth for fun and access to internal Microsoft applications 🔥 Горячее
- aka.ms — коротилка Microsoft. Попытка зайти на
https://aka.msпривела к логину только для сотрудников. - akasearch.net — индекс ссылок aka.ms; нашёлся
eng.ms. - eng.ms — домен с приложением EngineeringHub. При входе через личный M365-аккаунт появился consent-запрос на доступ к профилю. После подтверждения — 500-я ошибка, но OAuth-токен уже выдан.
- rescue.eng.ms — поддомен, где после аналогичного согласия открылся Engineering Hub Rescue: список 22 внутренних сервисов Microsoft (Cloud + AI, Gaming, Finance и др.) с полным доступом через обычный аккаунт.
Итог: публичные OAuth-приложения Microsoft внутри корпоративных тенантов могут выдавать токены сторонним пользователям, если не ограничены политикой согласия. Проверьте свои тенанты на наличие подобных приложений и настройте Admin consent workflow, чтобы избежать утечек.
Комментарии (99)
- Документация Microsoft по Entra ID/SSO вызывает у разработчиков «тыкание в темноте» и ошибки конфигурации.
- Уязвимости в мультитенантных приложениях возникают из-за непроверенных полей токена (iss, tid, audience) и отсутствия фильтрации по тенантам.
- Даже внутренние сервисы Microsoft открыты в интернет из-за политики Zero Trust, что увеличивает поверхность атаки.
- Исследователь получил RCE на сборочных серверах Windows, но Microsoft не выплатила ни цента, вызвав критику программы bug bounty.
- Сообщество советует: не полагаться на Entra для авторизации, всегда валидировать каждое поле токена и строить defense-in-depth.