LINUX.ORG.RU
ФорумTalks

В какой момент право пользователя использовать свой компьютер без геморроя стало считаться уязвимостью?

 , ,


1

2

https://3dnews.ru/1017021

Неофициальное название новой уязвимости ― BootHole, а присвоенный ей официальный индекс ― CVE-2020-10713… …Слабым звеном стал один из элементов популярного загрузчика GRUB2. Это конфигурационный файл grub.cfg, который хранится в системном разделе EFI. У этого файла нет криптографической защиты. У него простой текстовый формат, содержимое которого может модифицировать любой с правами администратора.

Модифицированный злоумышленником файл через классическую уязвимость типа переполнения буфера даёт возможность управлять процессами загрузки ПК.

Новость месячной давности, речь не о ней. Смысл в том, что почему-то обычная настройка своего ПК с правами администратора (sic!) стала считаться уязвимостью, а тот факт, что в секуребут всякое говно имеет возможность себя навечно прописывать, при этом у администратора нет возможности это никак отследить или сбросить настройки на дефолтные - это считается нормой.

★★★★★

Меня на самом деле тоже это удивило. Сто лет уже как в линуксе (да и не только, на самом деле — msconfig, по-моему, делает примерно то же самое) загрузчик настраивается обычным текстовым конфигом, а уязвимостью это стало почему-то только сейчас.
Не говоря уж о том, что даже если каким-то образом (главное, как? /boot/efi — это обычный раздел в фате) залочить grub.cfg, при наличии рута никто не запрещает мне поправить /etc/default/grub и запустить в консоли update-grub.

dogbert ★★★★★
()
Последнее исправление: dogbert (всего исправлений: 1)

Почитай ещё раз, рекомендую другие источники.

fornlr ★★★★★
()

конфигурационный файл grub.cfg, который хранится в системном разделе EFI. У этого файла нет криптографической защиты.

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

И вообще - а если у меня нет efi и секурбута, то что?

upcFrost ★★★★★
()

Я считаю, что загрузка чего-то помимо Виндоуса и МаСоС уже является неустранимой уязвимостью.

BceM_IIpuBeT ★★☆☆☆
()

Смысл в том, что почему-то обычная настройка своего ПК с правами администратора (sic!) стала считаться уязвимостью, а тот факт, что в секуребут всякое говно имеет возможность себя навечно прописывать, при этом у администратора нет возможности это никак отследить или сбросить настройки на дефолтные - это считается нормой.

Если это твой ПК, то всем насрать. Но это уязвимость, если ты пытаешься настроить не свой ПК. Или кто-то другой пытается настроить твой ПК. Дальше сам думай.

hateyoufeel ★★★★★
()

всегда так было. Это же линупс и опенцорс

zgen ★★★★★
()
Ответ на: комментарий от upcFrost

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

А если это руткит пытается прописаться куда-нибудь, чтобы не сдохнуть после загрузки?

И вообще - а если у меня нет efi и секурбута, то что?

То твой комп – древнее говно мамонта.

hateyoufeel ★★★★★
()

Подобные высеры идут обычно от плохо подготовленных специалистов, то есть не специалистов вовсе. Любой, кто действительно занимался безопасностью знает, что только физические разграничения её обеспечивают. Если у кого-то из пользователей есть права админа и эти права позволяют делать что угодно, то всякие мелочи вроде grub.cfg вообще уже не в счёт. root под Linux или админ под виндой может что угодно сделать и как угодно. Можно попробовать им полностью обрезать полномочия, что и пытаются, но это будет значить, что придётся как-то по другому решать тот спектр задач, которые решают пользователи с такими полномочиями. И как следствие проблемы будут опять те же

ixrws ★★★
()

В какой момент право пользователя использовать свой автомобиль без геморроя стало считаться правонарушением?

@next_time, ты уже понял к чему я клоню? В Европе ремонтировать автомобиль самому стало нарушением закона несколько десятилетий назад.

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

Так то.

Shulman
()

А нож кухонный тоже сертифицированный специалист должен обслуживать. А то - самое популярное орудие убийства.

next_time ★★★★★
() автор топика

В Европе ремонтировать автомобиль самому стало нарушением закона несколько десятилетий назад

Шта? Стрелок, ты часом не зомбирован? По закону не имеют права запретить самому чинить своё добро, даже в Америке это признают (только трактористы сопротивляются).

Korchevatel ★★★★★
()
Ответ на: комментарий от cobold

Это же просто терминал, а вот если есть физический доступ к серверам и софту по управлению инфраструктурой, то запросто.

ixrws ★★★
()

настройка своего ПК с правами администратора (sic!)

Или настройка кем угодно твоего ПК без прав администратора.

Но это всё опять вопрос наличия физического доступа.

Впрочем, вопрос серьёзный, ведь достаточно бросить ноутбук в офисе.

WitcherGeralt ★★
()

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

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

seiken ★★★★★
()

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

Есть две крайности, определяющие, как можно менять ПО на компьютере:

  1. разрешить кому угодно делать что угодно с машиной, если ОС решила, что так надо;

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

Подход (1) имеет очевидный недостаток — в ОС бывают ошибки.

(2), на мой взгляд, чуть лучше, но требует больших вложений от пользователя. Исторически были попытки реализовать его — отверсте write protect на дискетах, перемычка для защиты flash bios от перезаписи, опция bios для блокировки записи в бутсектор.

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

Secure Boot — это попытка найти некий компромисс между этими двумя крайностями, заменив физический доступ на доказательство владения секретным ключом (предоставление подписанных образов). Рядовому пользователю персонального компьютера, который не хочет ничего знать про ОС и обновления, удобно, потому что санкционированные обновления просто работают, а вредоносный код при установке в загрузочные области просто ломается.

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

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

Да, конечно, есть очевидные проблемы:

  1. пользователь, который ничего не хочет знать, но хочет поставить ОС, которая не подписана тем ключом, которому доверяет платформа, будет вынужден либо разобраться в secure boot и подписать всё правильно, либо выключить secure boot;

  2. если доверять тем ключам, которым доверяет платформа, то в силу транзитивности доверия придётся доверять всем программам, которые этими ключами подписаны — некоторые из содержат ошибки, и не все такие программы можно добавить в dbx на уровне платформы, потому что это сломает работу их необновленных версий; недобавление их в dbx делает защиту secure boot с дефолтными ключами довольно бесполезной.

В целом защита компьютера от его пользователя-владельца имеет смысл в трёх случаях:

  1. ошибка пользователя — поэтому в подавляющем большинстве руководств по GNU/Linux не рекомендуется работать под рутом, чтобы снизить шанс того, что неверная команда испортит систему;

  2. особый случай (1) — злоумышленник обманул пользователя и/или ОС, и исполнил вредоносную команду;

  3. DRM — производитель программы хочет быть уверенным, что она исполняется именно в том окружении, в котором он ожидает, это является его бизнес-требованием.

kmeaw ★★★
()
Ответ на: комментарий от seiken

есть всегда вариант - отключить секьюрбут

Я надеюсь, что этот вариант останется ещё надолго.

Korchevatel ★★★★★
()

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

Не считается. Спецификация требует предоставить пользователю интерфейс через firmware setup utility для отключения secure boot, сброса баз данных (db, dbx, KEK, PK) на дефолтные для текущей платформы и (опционально) для загрузки своих ключей.

Посмотреть на содержимое этих баз данных можно чтением соответствующих secure variables (в GNU/Linux это делает утилита efi-readvar из efitools).

kmeaw ★★★
()
Ответ на: комментарий от hateyoufeel

А если это руткит пытается прописаться куда-нибудь, чтобы не сдохнуть после загрузки?

Если у этого руткита уже был рут чтоб писать в этот файл - он может закрепиться в системе куда более примитивными методами

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

Если у этого руткита уже был рут чтоб писать в этот файл - он может закрепиться в системе куда более примитивными методами

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

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

То твой комп – древнее говно мамонта

Я бы попросил! core 2 duo еще достаточно бодрый процессор, на нем работать можно (офис, интернет, всякая скриптятина). Если есть хотя бы 4 гига памяти, то все нормально.

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

Ну, у меня далеко не c2d, но видимо все что старше 2018 года некрофилия с точки зрения данного регистранта

upcFrost ★★★★★
()
Ответ на: комментарий от hateyoufeel

Ага, и каждый кастомный юнит оно будет проверять, и еще все подряд файлы в /usr/bin. Ты же понимаешь что с правами рута в системе можно сделать вообще все что угодно, правда?

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

и каждый кастомный юнит оно будет проверять

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

и еще все подряд файлы в /usr/bin

Таки да, весь софт, который установлен в системе, должен быть подписан и проверен. Даже рач лялекс до этого уже дошёл: у них все пакеты подписаны и содержат чексуммы.

Ты же понимаешь что с правами рута в системе можно сделать вообще все что угодно, правда?

Ты же понимаешь, что ни одна софтина в идеале не должна работать с правами рута? Процесс должен иметь ровно столько привилегий, сколько ему требуется для работы, и ни граммом больше. Capabilities, AppArmor/SELinux, pledge()/unveil() и прочие штуки не просто так изобрели.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от anti_win

Апгрейд во имя апгрейда — ничем не лучше некрофилии.

Не знаю, я некрофилию не пробовал.

Тем более, что core 2 duo — это не некрофилия.

Конечно нет. Это просто устаревший шлак, который не стоит даже электричества, которое он потребляет.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

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

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

Но если этот компьютер уже есть в наличии, его спокойно можно использовать.

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

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Ты же понимаешь, что ни одна софтина в идеале не должна работать с правами рута?

Это же требует от разрабов некоторого крена мышления в сторону security by design. И не очень понятно, как это организовать в рамках современных распределенных команд, в которых каждая отдельная команда говнокодит, как может, наплевав на секьюрити.

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

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

Ну блин, на мобилках же как-то реализовали? Подписью пакетов, манифестами с правами доступа, проверкой их на уровне доступа к API и т.д. Да, не идеально, местами кривовато, и даже это не с первой попытки получилось. Но сама идея весьма годная, и этот подход надо внедрять повсюду.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

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

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

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

vaddd ★☆
()
Ответ на: комментарий от vaddd

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

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

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

Конечно не решается. Но дыра в загрузчике ставит всю безопасность раком.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

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

А на самом деле, довольно дохрена

Дохрена - это примерно какой процент?

Представь, завтра твою контору поразит очередной шифровальщик, и вся работа напрочь встанет.

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

Конечно не решается. Но дыра в загрузчике ставит всю безопасность раком

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

vaddd ★☆
()
Ответ на: комментарий от hateyoufeel

Я считал тебя умнее. А вот оно как…

И ещё в железе ноль. Поддержу писавших выше: частота проца точно влияет на безопасность! Честно!

Vault_Boy
()
Ответ на: комментарий от kmeaw
  1. это не такой уж особый случай, если вспомнить недавний взлом твиттера
cobold ★★★★★
()
Ответ на: комментарий от vaddd

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

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

Дык чо и файрвол тогда не нужен?

Каким образом вам подобная мысль пришла в голову?

Ну ежели следовать той логике, то безопасность основанная лишь на файрволе не безопасность

Таки да, безопасность реальной компании, основанная лишь на файрволе - не безопасность.

то на кой чорт он нужон, отключай его и денег предприятию сэкономишь

Каким образом вам подобная мысль пришла в голову?

vaddd ★☆
()
Ответ на: комментарий от vaddd

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

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

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

Вы не согласны с тем, что если от дыры в загрузчике вся безопасность становится раком - то это хреновая безопасность? А как вы решили что при этом надо отказываться от всей безопасности? Это что-то эмоционально-нервенное, типа «я потеряла ключи от квартиры, значит открою все двери и окна настежь и пропади все пропадом»?

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

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

vaddd ★☆
()
Ответ на: комментарий от kmeaw

перемычка для защиты flash bios от перезаписи

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

Что это значит?
А вот что, неперезаписываемое ПЗУ на диодной матрице(PROM) от компьютера ZX Spectrum 128 в 1986 году имело объём в 32 КБ, то есть современный минимальный БИОС образца ~2017 года помещается в 2 или 3 таких микросхемы образца 1986 года.

При этом в компьютерах i486/i586 в PROM влезал графический интерфейс настроек.

Какой из этого можно сделать вывод?
Ради чего поменяли PROM на перезаписываемый Flash, если до сих пор нет необходимости в ППЗУ объёмом более 200КБ, которые вполне можно сделать?

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

Вывод, PROM на Flash поменяли не ради повышения безопасности ПК, а ради чего другого.

Ради чего и почему можно прочитать в удалённых постах этой темы.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 2)
Ответ на: комментарий от vaddd

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

Какая пропускная система в забытом/потерянном/украденном рабочем ноутбуке сотрудника? Или может охранник там сидит? Чем все эти полезные в какие-то других случаях мероприятия помогут?

cobold ★★★★★
()
Ответ на: комментарий от vaddd

Дохрена - это примерно какой процент?

Дохрена – это дохрена.

Персонал обучен не открывать все подряд

А… ну раз персонал обучен, то, конечно же, никаких проблем нет.

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

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

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

Подобную – это какую именно? В которой используется, среди прочих мер, верифицированная загрузка?

hateyoufeel ★★★★★
()
Ответ на: комментарий от Vault_Boy

Я считал тебя умнее. А вот оно как…

Я тоже считал себя умнее! А нет, вот сижу, на ЛОРе с какими-то клоунами дискутирую. Хорошо, что моя мама не знает, чем я тут занимаюсь, а то наверняка разочаруется.

И ещё в железе ноль. Поддержу писавших выше: частота проца точно влияет на безопасность! Честно!

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

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от cobold

Так это вы решили отказаться от одного из компонентов безопасности,

Я заинтригован. От какого именно?

а я лишь продолжил эту логику на примере файрвола.

и предложили отказаться от безопасности вообще?

Какая пропускная система в забытом/потерянном/украденном рабочем ноутбуке сотрудника?

Откуда в таскаемом туда-сюда нубуке сотрудника информация, которая может навредить фирме на «мегабаксы»? Он работает в распiздяйской фирме? Тогда их и не жалко. А вот как ни охраняй загрузчик в нубуке, если в помещение в обеденный перерыв беспрепятственно зайдет первый же жулик и унесет весь нубук - это лучше? Виртуальные мальчики такие виртуальные.

vaddd ★☆
()
Ответ на: комментарий от hateyoufeel

Но дыра в загрузчике ставит всю безопасность раком.

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

И да, самое надёжное средство борьбы с руткитами - микросхему PROM у тебя отняли, кажись при переходе от i486/i586 к Pentium I.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.