LINUX.ORG.RU

Выявлена дыра, позволяющая «уронить» компьютер с Linux под любым пользователем

 ,


0

2

В списке рассылки разработчиков ядра Linux (LKML) был обнародован код, позволяющий через вызов функции ядра socketpair() создать процесс, съедающий 100% процессорного времени и все файловые дескрипторы. Процесс, будучи запущенным от имени любого пользователя, может привести систему к состоянию полной неработоспособности.

Пробный патч, который, тем не менее, не устраняет проблему, опубликован здесь.

>>> Подробности



Проверено: post-factum ()
Последнее исправление: post-factum (всего исправлений: 2)
Ответ на: комментарий от Manhunt

> А по-моему, ты просто истеришь.

Ты пойми простую вещь: все эти дырки и проблемы с масштабируемостью носят системный характер. Да, их латают по мере обнаружения, но от того не легче. Их огромное множество обнаружено экспериментально и методом «пристального всматривания», но еще на порядок больше вылезет, если подвергнуть код формальной верификации. Код дефективен по построению; ничего кроме говна с применяемыми сейчас в индустриии технологиями изготовить невозможно.

вы оба правы.

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

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

AVL2
()
Ответ на: комментарий от Manhunt

> Сходи по линку на lkml и прочти это из уст автора патча

...который дыру не исправляет, ага.

pevzi
()

В макоси не работает. Запускается и сразу дохнет.

iSage
()
Ответ на: комментарий от zenith

> Пруфлинк?

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

И в чём видение? Увидел какой-то рисёрч и начал кричать posix rip?


В том, что код дефективен по построению. Речь идет не просто о каких-то теоретически возможных дефектах, а о голой практике. Этот код невозможно исправить патчами, и невозможно выявить все дефекты путем тестирования. Он весь держится на невнятных эвристиках, которые лажаются в самых неожиданных местах.

Manhunt ☕☕
()
Ответ на: комментарий от samy_volosaty

> хм. у меня тоже есть экзепляр неубиваемой программы. и ребут не помогает.

и ребут не помогает.

Ты прогневал Патрега.

tailgunner
()
Ответ на: комментарий от tailgunner

> Не нахожу. Поверх микроядра всегда приходилось пускать реальную систему, потому что в голом микроядре смысла тоже нет.

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

Manhunt ☕☕
()
Ответ на: комментарий от Manhunt

> Этот код невозможно исправить патчами.

Это как так? Пароль на git push забыли? :)

По поводу остального прогона про верификацию: ты америку тут не открываешь, все и так знают что верификация рулит, но воз и ныне там, какой-то отдельный рисёрч ничего не изменит (повторюсь, по верификации кода написано столько работ, что жизни не хватит их прочитать).

zenith
()

никакой патч не сможет служить защитой от дурака

alltiptop
()
Ответ на: комментарий от tensai_cirno

>Я уже записал фряху восьмёрочку на болванку, а вы?

Читай тред, в ней тоже работает.

anonymous
()

А вы уже заготовили краску, чтобы рисовать на системнике звездочки, по количеству уроненных веб/шелл хостингов?

silw
()
Ответ на: комментарий от Manhunt

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

Хм. Я что-то пропустил, теорему Гёделя о неполноте формальной арифметики уже отменили?

encoded_reality
()
Ответ на: комментарий от valich

> В Линухе дыр говорят больше чем в семерке.

Врут. в одном охотнике за центрифугами было четыре 0-day дыры.

sv75
()

Во Имя Сварога, Линус, запили патч!

paran0id
()
Ответ на: комментарий от Manhunt

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

Я знаю, для чего оно нужно. Я намекаю, что в ближайшем будущем (лет 10) этого не будет.

tailgunner
()
Ответ на: комментарий от valich

> В Линухе дыр говорят больше чем в семерке.

не знаю. ставил знакомый семёрку, у него она через 5 минут теряла по-очереди видюху, клаву и мышь.

пришел он потом ко мне за gentoo.

samy_volosaty
()
Ответ на: комментарий от tazhate

Да. В Win nt 3.5-40.

Откуда по вашему там /etc ?

В w2k переписали на свой, говорят.

sv75
()
Ответ на: комментарий от encoded_reality

А этот тут не причём. Память у системы конечная, перебирай тупо все возможные состояния и убеждайся, что в них всё хорошо %)))

sv75
()
Ответ на: комментарий от Parshina

Меганадёжных систем, к сожалению, не бывает. Везде слабое место - человек.

Однако, бывают системы, которые соответствуют заданным критериям надёжности в определённый момент времени.

Boboms
()
Ответ на: комментарий от zenith

>> Этот код невозможно исправить патчами.

Это как так? Пароль на git push забыли? :)


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

ты америку тут не открываешь, все и так знают что верификация рулит


Давай-ка я перескажу тебе историю про америку. Во входящей в состав ядра Btrfs нашли проблему с неограниченной утечкой дискового пространства, причем указали на проблему алгоритмического характера. В ответ ведущий разработчик btrfs предложил полуработающий патч (примерно как в случае socketpair), и заявил, что болт он клал на все эти алгоритмы. Что сделал Торвальдс? А _ничего_: btrfs по-прежнему в ядре. И со временем его начнут ставить в продакшен. Такой занятный подход к разработке. Там не то что верификация, там ковбои, долбанутые на всю голову.

Manhunt ☕☕
()
Ответ на: комментарий от tensai_cirno

Там тоже самое, см. выше в треде. Проблема в подходе к состоянию процесса.

sv75
()

макос наше фсе!!!!!!!!!!!!!!!11111 Не зря я плюнул в спину пингвину!!!!111 Решето!!!!!!1111

anonymous
()
Ответ на: комментарий от Manhunt

Вы, всё-таки, пытаетесь всех глобально обосрать или передать «вИдение»?

Boboms
()
Ответ на: комментарий от Boboms

> Ну так а что ВЫ В ЗАМЕН предлагаете?

А _ничего_ я взамен не предлагаю. Предлагаю хавать то говно, которое де-факто есть. Оно ведь с орехами. Enjoy.

Manhunt ☕☕
()
Ответ на: комментарий от Manhunt

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

А верификация спецификаций будет гарантировать корректный код, что ли?

sv75
()
Ответ на: комментарий от encoded_reality

> Я что-то пропустил, теорему Гёделя о неполноте формальной арифметики уже отменили?

Может быть, я что-то упустил? Теорема о неполноте как-то мешает конечному автомату, коим является компьютер со всей его оперативной и дисковой памятью?

Manhunt ☕☕
()
Ответ на: комментарий от anonymous

> макос наше фсе!!!!!!!!!!!!!!!11111 Не зря я плюнул в спину пингвину!!!!111 Решето!!!!!!1111

А ты проверь там эксплойт для начала да расскажи.

sv75
()
Ответ на: комментарий от Manhunt

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

Предлагаю изначально озаботиться выстраиванием идеального общества, а уж потом, для этого идеального общества мы построим идеальную ОС.

Boboms
()
Ответ на: комментарий от sv75

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

А верификация спецификаций будет гарантировать корректный код, что ли?


Имелась ввиду верификация кода относительно спецификаций.

Manhunt ☕☕
()
Ответ на: комментарий от flareguner

Жырный как линукс фанатик линукса в треде.

У меня еще и пропеллер есть.

Sociopsih
()
Ответ на: комментарий от samy_volosaty

> ставил знакомый семёрку, у него она через 5 минут теряла по-очереди видюху, клаву и мышь.

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

pevzi
()

Фигня всё это. У народа массовая истерия. Просто система сильно тормозит. У меня такое бывает постоянно, когда кончается оперативная память (компьютер старый, мать noname). Плохо только, что этот процесс не снимается.

З.Ы. Почитал комменты - пугаться так зачем? Что вам мешает запускать непроверенный код от другого пользователя. Или вы верите, что в системе есть уязвимости, через которые можно всё угробить. Единственная ценность данные из каталога /home/<user>.

З.Ы. Пишу сейчас c запущенным виру^Wпроцессом. Снять его не удалось. Понизил приоритет :)

anonymous
()
Ответ на: комментарий от sv75

При чем тут лента? Машина Тьюринга - это просто формализация вычислительной машины. Тьюринг доказал, что невозможно создать программу, читающую другую программу и за конечное время выясняющую, будет ли та работать без останова неограниченно долгое время или нет.

encoded_reality
()
Ответ на: комментарий от encoded_reality

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

Тогда причем тут Гедель?

Ximen
()
Ответ на: комментарий от silw

>тонны линуксоидов ринулись валить хостинги?

На грамотных хостингах процессорное время ограничено. А на ещё более грамотных - банальный запрет запускать левые команды по ssh.

anonymous
()
Ответ на: комментарий от encoded_reality

> Тьюринг доказал, что невозможно создать программу, читающую другую программу

Если на эту «другую» программу не наложено никаких огрничений.

tailgunner
()
Ответ на: комментарий от Manhunt

Ну так а смысл пускания пузырей? Есть дельные разработки? Или просто вброс из-за осеннего периода?

Boboms
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.