DNSSEC validation на Go: написал свой validator и не до конца сошёл с ума
Я пилю VantageDNS, privacy-focused recursive DNS-резолвер с фильтрацией. Edge-фронт на Go, 10 нод по миру, миекговский miekg/dns под капотом. На каком-то этапе у меня закончились отговорки, и пришлось писать DNSSEC validator. Своими руками. Ночью. Под кофе восьмой кружки. Ниже расскажу, как устроен...
QNAME minimisation на практике: RFC 7816, реализация, грабли
Когда вы открываете mail.google.com, ваш рекурсивный резолвер делает три-четыре шага: спрашивает root, потом TLD, потом authoritative для google.com, иногда ещё один уровень. Десятилетиями каждому из этих серверов отправлялся один и тот же вопрос целиком: «дай мне mail.google.com». Root-серверу,...
Я написал свой DNS-резолвер на Go вместо того, чтобы взять Unbound. Вот почему и что из этого вышло
Три месяца назад я начал делать NextDNS-clone для Европы. Рекурсивный DNS с фильтрацией рекламы, трекеров и malware. Первый день: открываю Unbound, читаю man, всё понятно. К вечеру понимаю, что не подходит. Через неделю пишу свой резолвер на Go и вспоминаю поговорку про человека, который решил...
ASOC на коленке: как я навайбкодил замену DefectDojo для своих задач с обогащением из БДУ ФСТЭК
Когда я начал разбираться, чем в open source можно закрыть задачу ASOC / Vulnerability Management, выбор оказался довольно грустным. По сути единственный известный вариант это DefectDojo. Сам я его в production не тащил, но от коллег регулярно слышал одну и ту же боль: на больших объёмах findings...
«Алгоритмы на языке Go». Книга, которую ждали
Привет, Хабр. Сегодня познакомим вас с самой долгожданной новинкой апреля — книгой «Алгоритмы на языке Go», которую мы успели выпустить в продажу 30 числа. Читать далее...
Приватная Cвязь на Go и Flutter
Пока все обсуждают очередные сливы баз и особенности модерации в популярных «безопасных» мессенджерах, решил попробовать пойти другим путем. В этой статье рассказываю, как я скрестил Flutter и Go через CGO, прикрутил libp2p для создания P2P-сети и реализовал честное E2EE шифрование (Double Ratchet...
Разбираем net/http на практике. Часть 2.1: POST, файлы и in-memory хранилище
Предыдущая статья: https://habr.com/ru/articles/981356/ Продолжаем создавать сервис анонимных "мертвых ящиков" DeadDrop на чистом Go. Во второй части (первый подвыпуск) закладываем фундамент: учимся принимать POST-запросы, загружать файлы с проверкой MIME-типа и размера, создаём in-memory хранилище...
VPN на Go засыпает вместе со смартфоном: дебажим таймеры, Android и CLOCK_BOOTTIME
Вы подняли свой прокси-сервер, настроили навороченный sing-box на Android, всё летает, 4K видео грузится мгновенно. Но стоит положить телефон в карман на пять минут и магия исчезает. Соединение залипает, SSH-сессии рвутся, а WhatsApp-звонки превращаются в тишину Как только вы включаете экран сеть...
Действительно ли C++ — лучший язык, чтобы выстрелить себе в ногу?
В 2023 году одной из главных IT-новостей стала публикация гайда от Агентства национальной безопасности (NSA) США, в котором языки С/C+ признавались «опасными» и требующими перехода на «безопасные» C#, Go, Java, Ruby и Swift. В этой статье я с позиции Security Champion в KasperskyOS, собственной...
Хакните HL и заработайте 125.000 рублей
При разработке безопасных и/или анонимных приложений всегда наступает такой момент, когда становится необходимым выйти из своих сугубо теоретических размышлений, выйти из скованного дебагом одиночества, выйти из затворничества программных реализаций в открытое общество, безжалостно указывающее на...
Анонимная сеть в 200 строк кода на Go
Реализации анонимных сетей всегда стремятся быть как можно проще, доступнее для понимания, как на теоретическом, так и на программном уровнях. Такие условия становятся необходимыми вследствие одного из основных принципов построения безопасных программ — чем проще объяснить, тем легче доказать. Но к...
Куда сходить: главные ИТ-события второй половины апреля
Гид по конференциям и митапам, которые пройдут с 15 по 30 апреля в Москве, Ереване, Екатеринбурге, Алматы и других городах. Читать далее...
Алгоритм Diffie-Hellman: Ключ к безопасному общению
Всем привет! Давно хотел опубликовать статью тут, но никак не находил повода для хорошей статьи. Однако я уже давно веду телеграм канал по Backend разработке, в котором публикую разную информацию о Backend, рассказываю про технологии и в целом делюсь полезной информацией на другие статьи. Сегодня я...
Алгебра анонимных сетей
В настоящее время существует огромное количество всеразличного рода анонимных (скрытых) сетей, начиная с теоретически доказуемых (DC-сети, Queue-сети, Entropy-сети) и заканчивая практически используемыми (Tor, I2P, Mixminion). При таком количестве реализаций было бы очень удобно обобщить структуру...
Выбираем IAM в 2023 или, что есть кроме Keycloak
Гипотетическая ситуация — ваш работодатель поручил вам выбрать Identity and Access Management platform. Обязательно: open‑source (Apache 2.0), self‑hosted, OAuth 2.0, OIDC, SAML, LDAP. Для тех кому интересно узнать, что есть еще кроме Keycloak. Узнать...
Тайные каналы связи или как централизованные сервисы способны разлагаться изнутри
Современный мир нельзя представить без сервисов связи, таких как социальные сети, мессенджеры, электронная почта, файловые хранилища и т.п. Мы пользуемся данными сервисами постоянно, ровно как и они планомерно пользуются нами. Конфиденциальная информация становится для сервисов связи святым граалем...
Обезопасить, удержать, сохранить. Выгрузка трафика анонимной сети как свойство отложенной маршрутизации в HLT
Сохранение анонимного трафика HLS для последующего реиспользования. Читать далее...
[Перевод] TLS 1.3, только игрушечный
Привет! Недавно я думала о том, насколько интересно изучать компьютерные сети, создавая рабочие версии реальных сетевых протоколов. Мне пришло в голову, почему бы после создания своей версии протоколов traceroute, TCP и DNS не воплотить в жизнь TLS? Могу ли я сделать вариант TLS и больше узнать о...
Назад