Линус Торвальдс: Чувствительные к регистру файловые системы — это ошибка

Линус Торвальдс: Чувствительные к регистру файловые системы — это ошибка

Линус Торвальдс: Чувствительные к регистру файловые системы — это ошибка

На днях вокруг обновлений в Linux 6.15-rc4 вспыхнуло горячее обсуждение. Всё началось с того, что разработчик Kent Overstreet поднял старую тему про ошибки в патчах для поддержки чувствительных к регистру файлов и папок в драйвере Bcachefs.

Мол, когда почти два года назад внедряли эту поддержку, тесты были, но… их никто толком не прогнал. Упустили. Кент честно признал:

«Одних автоматических тестов недостаточно. Нужно глазами следить за тем, что делает твой код».

И вроде бы обычная история про баги и уроки на будущее, но тут в беседу резко ворвался Линус Торвальдс. Сначала коротко ответил: «Нет». А потом выдал фирменную речь:

«Единственный урок — работники с файловой системой ничему не учатся. Чувствительные к регистру имена — это катастрофа, и вам вообще не стоило их делать. Проблема не в тестировании — проблема в том, что вы вообще это начали».

Торвальдс объяснил, что такие фичи делают систему только хуже:

«Нет правильного способа сделать это как надо. А попытки "сделать правильно" превращаются в хаос, где случайные байты вдруг обретают магическое значение».

По его мнению, тесты на проверку таких штук тоже «абсолютно поломаны» и не покрывают самых опасных сценариев — тех, которые могут привести к реальным уязвимостям. И тут началась настоящая перепалка.

Overstreet попытался парировать: мол, реальная потребность в таких каталогах всё-таки есть, и задача — не ныть, а сделать всё аккуратно и читаемо. Торвальдс не сдал позиции:

«Если бы кто-то хоть раз показал качественную реализацию, я бы, может, и передумал. Но пока вижу только плохой код, который не понимает, как работает UTF-8 и юникод».

Overstreet возразил, что опасения по поводу безопасности уже не так актуальны, ведь всё меньше используется совместный доступ к каталогам вроде /tmp. Но Торвальдс остался непреклонен.

Дальше спор скатился в детали реализации кеширования (dcache). Overstreet настаивал, что именно из-за оптимизации там и возникли проблемы. Торвальдс парировал:

«Ты явно не понимаешь, как работает dcache. Я, между прочим, большую часть этого кода писал».

Когда Kent не поверил, Линус напомнил, что писал эти части ещё в конце 90-х, и если появляются «dentry-алиасы», то «значит, ты что-то делаешь не так». В итоге Overstreet признал, что да, ошибался насчёт некоторых моментов — но сделал это, конечно, в своём стиле.

«Забавный способ сказать: "Да, Линус, ты был прав"», — подытожил Торвальдс.

Positive Technologies научила ИИ замечать подозрительные сценарии в коде

Positive Technologies сообщила о разработке нейросети MOLOT, предназначенной для поиска вредоносного кода в проектах на Python, JavaScript и TypeScript. Технология уже используется в составе анализатора исходного кода PT Application Inspector версии 6.0.

В отличие от традиционных инструментов статического анализа, которые ищут опасные конструкции по заранее заданным правилам, новая модель анализирует последовательность действий, выполняемых программой.

Нейросеть оценивает не отдельные фрагменты кода, а их совокупность и пытается определить, формируют ли они подозрительный сценарий.

Проблема, которую пытаются решить разработчики, связана с так называемым намеренно внедрённым вредоносным кодом. В отличие от обычных уязвимостей, такой код не содержит ошибок, которые можно эксплуатировать извне. Он работает как легитимная часть приложения и использует те же права доступа, что и остальная программа.

 

По словам специалистов, именно поэтому многие подобные закладки остаются незамеченными при стандартных проверках безопасности.

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

 

Для анализа MOLOT строит цепочку действий программы — обращений к файлам, сетевых запросов, запуска процессов, использования криптографических функций и других операций. Затем эта последовательность передаётся в нейросеть, которая обучена отличать типичные сценарии работы приложений от поведения, характерного для вредоносного кода.

В компании утверждают, что тестирование проводилось на вредоносных пакетах из репозиториев PyPI и npm. По словам разработчиков, в ряде тестов модель показала более высокую точность по сравнению с существующими аналогами с открытым исходным кодом.

Одной из особенностей системы стала возможность объяснять свои выводы. Помимо самого вердикта нейросеть показывает строки кода, которые повлияли на решение. Это позволяет специалисту быстро перейти к подозрительному фрагменту и самостоятельно проверить результаты анализа.

Интерес к подобным инструментам растёт на фоне увеличения числа атак через цепочки поставок ПО, вредоносные пакеты в публичных репозиториях и распространения ИИ-инструментов для генерации программного кода.

RSS: Новости на портале Anti-Malware.ru