Найти тему
Как показать сферического коня в вакууме
История успешного внедрения Behavior-Driven Development в рамках замены одной из подсистем банка на решение с микросервисной архитектурой. Предыстория Когда меня просят описать тенденцию последних 3 лет одним словом, то нейронные связи сразу генерируют: микросервисы. Да, в большинстве случаев под этим определением многие скрывают распределенные монолиты и запрещают произносить данное словосочетание вслух, но сегодня не об этом. И если в 2021 году в основном говорили об уходе от legacy систем, то в последнее время появился серьезный вектор политики импортозамещения...
10 месяцев назад
JetBrains TeamCity CVE-2024-27198 По одному из популярных инструментов CI/CD опубликовано несколько критичных уязвимостей за последнюю пару месяцев. В выходные наткнулся на статью про очень критичную уязвимость CVE-2024-27198. При этом был сильно удивлен доступностью вектора атаки. Лет 7 назад немного интересовался тематикой пентестинга, но во что-то большее это не переросло. В те времена сформировалось впечатление, что намного проще пользоваться социальной инженерией и фишингом. Ведь много векторов атаки требуют специфичного сочетания различных условий. Но тут источником проблемы является ошибка в логике кода, основным барьером к которой выступает только отсутствие сетевого доступа. И вот пока многие “эксперты информационной безопасности” рассказывают нам про отражённые атаки, рассылая “фишинговые письма” с внутренних серверов корпоративной сети, где-то и сегодня продолжает работать TeamCity трёхгодичной давности. Какие уж там обновления до исправленной версии 2023.11.4 Да. Зачастую они спрятаны за VPN, но вот точно ли можно спать спокойно, когда в сети работают тысячи человек. P.S. Это не первая уязвимость критичного уровня в продукте JetBrains, которую опубликовали за последние месяцы. В сети ещё есть упоминания про CVE-2024-27199 и CVE-2024-23917. Изображение взято с upsplash.com Автор: TopSphere Media
11 месяцев назад
Смотрите на ошибку в приложении и думаете: "Ну почему нельзя сделать, чтобы оно работало?"
Во-первых, мы тоже часто задаёмся таким вопросом. Во-вторых, может просто разработчики не в курсе, что их код немного мёртв... Проверяя микросервис после миграции на Java 17 и Spring Boot 3, я вдруг обнаружил полностью пустую БД. Выполнение такой задачи человеком, не имеющим никакого отношения к созданию и поддержке функционала, является хорошим началом для увлекательной истории. Приложение, которое не хочет стартовать без подключения, но при этом и не создает ни одного объекта, выглядело очень подозрительным...
11 месяцев назад
Git. Гибридное устройство деревьев
Что не так с деревьями В предыдущей статье были рассмотрены все 4 типа объектов внутреннего хранилища Git. Их содержимое преимущественно представляет собой текстовый файл, к которому применяется сжатие по алгоритму zlib, как это было показано на примере blob. Такой подход позволяет без особых сложностей создавать различные утилиты для взаимодействия с внутренним хранилищем репозитория, даже в обход уже существующих сантехнических команд. Но давайте попробуем повторить эти манипуляции с объектом tree, который был сформирован при создании второго коммита...
1 год назад
Все ответы уже давно написаны
Примерно с такой фразы началась техническая часть одного из моих собеседований. После очередной затяжки электронной сигареты собеседующий прислал ссылку. В целом, крупный российский биржевой холдинг может себе позволить “лайвкодинг в блокноте”, о котором ведется множество дебатов в последнее время. А вот человек, покуривающий на фоне интернет-мема “Них** не понял, но очень интересно.”, и до этого момента вызывал сугубо желание завершить встречу досрочно. Но работая в компании, которая всем сердцем полюбила аутстаффинг, приходится в итоге действовать немного иначе...
1 год назад
Git — контентно-адресуемая файловая система
Механизмы работы внутренней базы данных, типы объектов и их жизненный цикл. Хотите проверить свои представления по теме? Небольшой тест из 7 вопросов. Основные принципы работы. В большинстве сфер нашей жизни, и IT не стало здесь исключением, поведение чего-то становится для нас достаточно понятным и логичным, если есть представление о внутреннем устройстве данных механизмов. Одним из базовых определений, которое используют все, является репозиторий. Репозиторий Git - это хранилище данных, представленное специальным набором файлов и "папок"...
1 год назад
Размышления об аналитике или как вычислить адрес по фотографии из окна
Вступление Анали́тика — часть искусства рассуждения — логики, рассматривающая учение об анализе — операции мысленного или реального расчленения целого (вещи, свойства, процесса или отношения между предметами) на составные части, выполняемая в процессе познания или предметно-практической деятельности человека. Именно такое определение можно встретить первым результатом по запросу «аналитика» в поисковике. По роду же своей профессиональной деятельности (разработка прикладного программного обеспечения) часто приходится сталкиваться с дебатами про бизнес-аналитиков, системных аналитиков и т...
199 читали · 2 года назад