fa
Feedback
Блог*

Блог*

رفتن به کانال در Telegram

Блог со звёздочкой. Много репостов, немножко программирования. Небольшое прикольное комьюнити: @decltype_chat_ptr_t Автор: @insert_reference_here

نمایش بیشتر
1 923
مشترکین
-124 ساعت
اطلاعاتی وجود ندارد7 روز
-730 روز
آرشیو پست ها
Repost from Neural Machine
Это может быть нелегко, но нужно принимать душ.

📊 Политический анализ канала Блог* (@dereference_pointer_there) 📍 Диагноз: КЛАССИЧЕСКИЙ ЛИБЕРАЛИЗМ 💭 Обоснование: Автор пи
📊 Политический анализ канала Блог* (@dereference_pointer_there) 📍 Диагноз: КЛАССИЧЕСКИЙ ЛИБЕРАЛИЗМ 💭 Обоснование: Автор пишет о технических деталях, открытом доступе к научным данным и критически относится к государственному вмешательству (пример: «МВД предложило ввести уголовную ответственность за административную ответственность»). Такие позиции типичны для либертарианского правого направления, поддерживающего свободный рынок и минимальное государственное регулирование. При этом экономические взгляды нейтральны‑светло‑правые (упоминаний о перераспределении или соц‑политике нет). Поэтому выбранная идеология – КЛАССИЧЕСКИЙ ЛИБЕРАЛИЗМ, а координаты отражают лёгкое смещение вправо и умеренную либертарианскую позицию. 📅 28.08.2025 14:44 AdminTools. Подписаться

@tech_b0lt_Genona подкинул бота. Смешно, конечно, что проанализировал текст из поста Пездузы

#video Bad apple на яблоках
The apples spin 90 degrees when their source pixel transitions between black and white.

Repost from Jem

#meme про Телеграм-канал?..
#meme про Телеграм-канал?..

#prog #rust #itsec #article hyper HTTP/2 (Didn't) MadeYouReset Протокол HTTP/2 позволяет открыть несколько стримов поверх одного соединения, каждый из которых может быть отменён (reset) любой стороной в любой момент. В некоторых случаях это нужно сделать обязательно — например, когда одна из сторон присылает невалидные сообщения. Это сделало возможным уязвимость, названную MadeYouReset. Суть её в том, что злоумышленник инициирует соединение с максимально возможным числом стримов, а затем постоянно их сбрасывает путём отправки невалидных фреймов. Обработка всех этих запросов и следование протоколу отнимает ресурсы сервера, что делает возможным Denial of service. Эта уязвимость очень схожа с уязвимостью Rapid Reset, но, как описано в статье от Cloudflare, она несколько более хитрая. Rapid Reset полагается на явную отмену стримов клиентом через посылку фрейма RST_STREAM. MadeYouReset же работает через посылку невалидных фреймов, заставляя сервер парсить запросы и отменять стримы уже с его стороны. Многие реализации HTTP/2 на практике делали работу по обработке запроса даже после закрытия стрима. Простые меры предосторожности против Rapid Reset, отслеживающие только фреймы RST_STREAM от клиента, бесполезны против MadeYouReset. h2 (Rust-библиотека для работы с протоколом HTTP/2) оказалась не подвержена этой уязвимости. Почему? На это есть несколько причин. Во-первых, в h2 несколько лет назад добавили меру предосторожности против абьюза клиентами отмен стримов. Именно, h2 отслеживает, сколько раз фрейм от клиента привёл к отмене стрима со стороны клиента, и когда это число достигает настраиваемого порога, закрывает соединение целиком. Это уже хорошая защита, которая на практике успешно защищала от Rapid Reset, но она была не безупречна — для одного типа фреймов (WINDOW_UPDATE) на одном из путей исполнения это число не обновлялось (разумеется, это поправили). Во-вторых, h2 — библиотека, а не фреймворк, и всегда передаёт вызывающему коду информацию об отмене стрима. Разумеется, от этого мало толку, если вызывающий код на это никак не реагирует. И это подводит нас к третьей причине: контекст использования. На практике h2 использовалась совместно с hyper, Rust-библиотеке для HTTP, абстрагированной от конкретной версии протокола. В коде hyper для стримов ожидается исполнение двух футур: поставляющей новые фреймы из стрима и обрабатывающей запросы из этого стрима. При получении отмены стрима hyper отменяет футуру, обрабатывающую запрос. Итого: даже без закрытия бага с WINDOW_UPDATE h2 не был подвержен MadeYouReset. Разумеется, это во многом заслуга продуманной архитектуры h2 и hyper. Но также это и заслуга того, как реализована асинхронность в Rust: с ключевым методом Future::poll, позволяющим достаточно просто дожидаться исполнения нескольких футур одновременно, и встроенная поддержка отмены футур просто через вызов drop. Добиться подобной защиты от MadeYouReset в языке с активными тасками и явной в коде отменой (как, например, в C# или в Go с context.Done) значительно сложнее.

Repost from commit -m "better"
photo content

photo content

Repost from N/a
Есть известный мем про отсутствие менеджмента памяти в ракетах, потому что она утекает дольше, чем ракета летит Тут, видимо,
Есть известный мем про отсутствие менеджмента памяти в ракетах, потому что она утекает дольше, чем ракета летит Тут, видимо, новый кейс нашёлся

Обнаружил, что в коде по работе одно и то же поле примитивного целочисленного типа имеет разный смысл в зависимости от того, в каком типе хранится объемлющая структура. #бомбёжкипост

Вроде никакой конфиденциальной инфы тут нет, так что не могу не поделиться этой шедевральной идеей ) Контекст - активисты из
Вроде никакой конфиденциальной инфы тут нет, так что не могу не поделиться этой шедевральной идеей ) Контекст - активисты из разных уголков земного шара придумывают разные способы оставаться на видеосвязи с активистами из РФ

#rust #meme?..
#rust #meme?..

photo content

М-да
М-да

photo content

#prog #rust хайлайты: Реализовали derive через macro_rules!-макросы. Учитывая, насколько часто код, генерируемый derive, весьма простой, это позволит сильно упростить их написание, а также избежать выделения отдельного крейта только под процедурный макрос и, разумеется, не компилировать макрос в отдельную программу, которая общается с компилятором по RPC.

photo content

photo content