commit -m "better"
3.24K subscribers
1.02K photos
149 videos
3 files
2.38K links
just random thoughts
Download Telegram
Я тут с одним товарищем зарубался про #perf, объяснял ему, что в python простая запись в переменную - 5 походов в dict, а потом такой "в (условном) x86_64 запись в переменную - тоже 5 походов в dict" (https://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86), просто все однажды за это заплатили, и уже привыкли, oh shit.
😁267👍4🥱3🤡2🆒1
Forwarded from Мир Linux
Это просто смешно: GNOME Foundation выкатили большой пост, где в качестве аргумента, почему им стоит финансово помогать, привели libxml2. Позже им пришлось этот пост отредактировать, потому что на самом деле ничего подобного не было – мейнтейнер ушёл, так как не получал вообще никакой поддержки

😂

@linuxos_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁49🤡12🤣52🦄1
https://daniel.haxx.se/blog/2025/12/29/no-strcpy-either/

TL;DR - безопасности больше не стало.
😁28🔥12👍7🤡3
С наступающим, коллеги!
🎉101🎄3115🍾6👍3🫡2🆒1
Forwarded from Блог*
#meme про оливье

(thanks @triteisalrite)
😁17❤‍🔥12🐳51🔥1
😁31💯85🆒1
commit -m "better"
TL;DR - безопасности больше не стало.
https://www.opennet.ru/opennews/art.shtml?num=64532

strcpy заменили вот на это:

void curlx_strcopy(char *dest,
size_t dsize,
const char *src,
size_t slen)
{
DEBUGASSERT(slen < dsize);
if(slen < dsize) {
memcpy(dest, src, slen);
dest[slen] = 0;
}
else if(dsize)
dest[0] = 0;
}


Было бы норм, если бы в конце был вызов abort()

else {abort();}


А так - поменяли шило на мыло, одну функцию со странной семантикой на другую функцию, с еще более странной семантикой.

     else if(dsize)
dest[0] = 0;


Это же надо додуматься, что, если нам не хватает места на копию строки, то мы просто попытаемся записать в dest пустую строку, если это возможно.

Полагаю, авторы считают, что они добавили безопастности, с моей же колокольни - это просто еще десяток мест, которые, вместо проезда, будут порождать пустые строки, которые потом мне же и придется дебажить. Заменили шило на мыло, круто, поздравляю.
💊18👍11🔥7💯5🥴43🤔2🤡2
Forwarded from /g/‘s Tech Memes
Whatever you say, Chief Slop Officer
😁59💯11🌭4🔥2🆒1
https://www.facebook.com/ethical.hack.group/posts/pfbid032cJSREZHEDefgq9aKkotMAYpRuKs7mNujarsnNjaSok2wPnXmo124ajfo5Un1FLzl

Your headphones just became a backdoor to your phone. No pairing. No popup. Just Bluetooth range. 70 million chips. Sony. Bose. Marshall. JBL. A debug protocol active on production devices. Attackers can dump your Bluetooth keys, impersonate your headphones, and hijack your phone. 🤔
Three CVEs. Zero authentication required. Full technical disclosure: December 27, 2025 at 39C3.

The vulnerabilities

→ CVE-2025-20700: No authentication on Bluetooth Low Energy
→ CVE-2025-20701: No authentication on Bluetooth Classic
→ CVE-2025-20702: Debug protocol exposed that should never be accessible

RACE is Airoha's factory protocol. Meant for testing and firmware updates during production. It exposes read/write access to RAM and flash memory over three channels: USB HID, Bluetooth Classic RFCOMM (channel 21), and BLE GATT services.

The protocol was never disabled before shipping.

An attacker within 10 meters connects via BLE or Bluetooth Classic. No user interaction. The connection is silent.
Once connected, RACE commands dump the flash. Inside: the Bluetooth Link Key. This 128-bit key is what your phone uses to verify your headphones are trusted.

With the Link Key, the attacker clones your headphones' Bluetooth identity. Your phone sees "Sony WH-1000XM5" connecting. It trusts it automatically. No pairing popup.
🔥29🤯19😱10🤡3🎄32🆒1
😁285🔥4💯2🆒1
Мне, на самом деле, нравится говорить с #AI-шкой (на самом деле, с LLM-шкой, но звучит не так) на разные темы.

Мне нравится обсудить с ней какой-то текст, посмотреть на него с разных сторон, повертеть так и сяк, и, возможно, увидеть что-то новое.

Сейчас праздники, Новый Год, поэтому, думаю, никого не удивит, что я с ней обсуждаю те или иные НГ тексты! Да, вот так, сижу и обсуждаю, потому что там есть какая-то глубина, которой я раньше не видел.

Например, результат нашего диалога про одну из главных песен из "Иронии Судьбы" - https://genius.com/Alla-pugacheva-i-like-lyrics

Это песня о парадоксе любви и свободы.

С одной стороны, это гимн облегчению: героиня благодарна за то, что между ними нет испепеляющей, разрушительной страсти («болезни»), которая лишает покоя и заставляет притворяться. Она ценит безопасность, возможность быть собой («смешной», «распущенной») и твердую почву под ногами.

С другой стороны, финальное слово «увы» полностью меняет интонацию. В этом «увы» скрывается тонкая, светлая грусть о том, что эта великая любовь так и не случилась.

Коротко: Это благодарность за спокойные, нежные отношения, в которых нет боли, но есть скрытое сожаление о том, что искра безумства между ними так и не вспыхнула.


Вот так вот читаешь ответ, и понимаешь, что эта песня - про их отношение с Иполлитом, а ты, несмотря на то, что смотрел это фильм 20 раз, так этого и не понял!

А, да, погромировать эта шайтан-машина так и не научилась. Видимо, погромировать сложнее, чем писать сочинение на тему "а что имел в виду автор"!
👍18😁6🤡63🤔3🥴3🍌2💊2🐳1🙈1
В проекте RustFS, развивающем совместимое с S3 распределённое объектное хранилище, написанное на языке Rust, выявлена уязвимость (CVE-2025-68926), напоминающая бэкдор. Проблема вызвана наличием жёстко прошитого в коде токена доступа, позволяющего подключиться к сетевому сервису по протоколу gRPC, указав в заголовке "authorization" значение "rustfs rpc". Токен присутствовал в коде сервера и клиента. Проблеме присвоен критический уровень опасности (9.8 из 10).

Атакующий, имеющий доступ к сетевому порту gRPC, мог использовать указанный токен для выполнения привилегированных операций с хранилищем, среди которых удаление данных, манипуляции с учётными данными пользователей и изменение настроек кластера. По умолчанию RustFS принимает gRPC-запросы на TCP-порту 9000 на всех сетевых интерфейсах. Уязвимость устранена в выпуске RustFS 1.0.0-alpha.77.

   grpcurl -plaintext -H 'authorization: rustfs rpc' \
-d '{"access_key": "admin"}' \
localhost:9000 node_service.NodeService/LoadUser

   grpcurl -plaintext -H 'authorization: rustfs rpc' \
-d '{"volume": "config", "path": "backdoor.sh", "buf": "..."}' \
localhost:9000 node_service.NodeService/WriteAll


В RustFS выявлен предопределённый в коде токен доступа
https://www.opennet.ru/opennews/art.shtml?num=64551

Оригинал
gRPC Hardcoded Token Authentication Bypass - Reproduction Report
https://github.com/rustfs/rustfs/security/advisories/GHSA-h956-rh7x-ppgj
🤯17🎉105🤡4🔥2
Хотел запилить "итоги года" по своему каналу, но, э, за год у меня получилось на 900 килобайт текста в json формате, благо, телега позволяет.

Я решил, что хрен это в меня влезет за разумное время, поэтому скормил это в #AI, и поигрался с ней, пока результат не стал походить на то, как я бы сам мог это написать.

Ниже - #AI slop, но сделанный с душой, не на отъебись. Он мне самому нравится.



Итоги года в канале, одним постом.

За год я окончательно убедился, что индустрия делится на две категории людей:

* Те, кто пытается сделать систему предсказуемой

* И те, кто пытается сделать “как-нибудь”, но современно, и обязательно чтоб оно само скачало из интернетов

Угадайте, кто побеждает в среднем по больнице? Да, конечно, вторые. Поэтому мы весь год и смотрели, как:

* #bootstrap снова оказался мифом. Cargo без /dev/random жить не может, cmake тащит FetchContent, npm пихает .so “чтобы пользователям было удобно”, и в любой момент какая-нибудь “герметичная сборка” превращается в “а давайте просто curl | sh, чё вы как маленькие”.

* #infra / #selfhost продолжает быть спортом для самоубийц. GitLab падает, RAID падает, миграции по неделе, боты доедают всё живое, и каждый раз одно и то же: “мы маленькая команда SRE” (а дальше — удивление, что оно не работает).

Fun fact: github почему-то не жалуется.

* Rust уверенно шагает по планете как #almost_memory_safe. Уязвимости в unsafe, гонки, use-after-free в обвязках, “мы отключаем SIGPIPE” и “мы захардкодили все target triples”, потому что “так проще”.
Самое смешное — фанаты всё ещё уверены, что раз писать на Rust больнее, то программы автоматически получаются лучше. Нет, это просто упражнение на самоистязание.

* C/C++ остаётся тем же болотом, где ABI не трогать, “модули вот-вот”, и где даже когда идея хорошая, её надо сначала обмазать пятью страницами объяснений, почему она всё равно никому не доступна. #cplpl_doomed

* Wayland vs X11: поезд уехал, но в пути он умудрился потерять половину колёс. X11 уже никто не хочет чинить, Wayland ещё не везде можно использовать без матов, и да — “три протокола сделать одно и то же” это реальность, а не анекдот.

На этом фоне я продолжал заниматься своим любимым — строить мир заново так, чтобы он хотя бы сходился:

* автоматизировал апверы, довёл интеграцию с репологией, сделал снапшоты/rootfs/кэши исходников, ужесточил изоляцию сборок

* допилил свою магию статлинковки (в том числе через плагинчики к линкеру), собрал кучу странного и красивого

* по дороге успел повоевать с #mesa, собрать #ANGLE с Vulkan-стеком и закрыть пару давних гештальтов

Главная мораль года проста: мы все в одной лодке. И если вы думаете, что вас спасёт “новый язык/новый тул/новый AI/новый фонд”, то нет — вас спасут только тесты, воспроизводимость, ограничения на “самокач”, и здоровая ненависть к магии.

С наступающим, коллеги. В следующем году будем продолжать делать из четырёх вёдер говна бочку говна — но хотя бы воспроизводимо!
😁45🔥2710🥰7🤡5❤‍🔥3🆒2
Несколько месяцев назад увидел, что один из разработчиков Rust решил запилить новый язык - https://xn--r1a.website/lobstersfeed/32481

Мне тогда это показалось малозначащим, но вот, автор написал более подробный текст про это, https://steveklabnik.com/writing/thirteen-years-of-rust-and-the-birth-of-rue, где он написал, что решил пойти по стопам великих https://xn--r1a.website/itpgchannel/3657 пишет это в одно рыло, но с использованием #AI.

Это, конечно, делает всю затею сильно более интересной, поэтому будем наблюдать.
🤣18🤔104👍2🍌2🔥1
https://www.opennet.ru/opennews/art.shtml?num=64562

TL;DR - ох, ну и знатная некрофилия!

Коллеги решили оживить KDE1, который, на секундочку, старше всего моего linux background, я его захватил буквально на полгода, а потом вышел KDE2.

Планов - громадье, в том числе, порт на Wayland.

Звучит дико, но может быть весьма интересно, как lightweight DE.
🔥13😁84🤡2🆒2💊2🤔1🐳1🍌1
Документальный ролик о самой сложной и важной инженерной машине в мире: EUV-литографической системе от ASML, которая позволяет выпускать самые передовые микрочипы.

Видео подробно объясняет, как работают EUV-литографические установки, из каких подсистем они состоят, почему их стоимость достигает сотен миллионов долларов и какие оптические и физические ограничения стоят за их конструкцией.

Меня удивило, что меньше чем за неделю видео уже набрало 10 миллионов просмотров!
Всем смотреть😎
👍187🔥5❤‍🔥3🍌1🆒1