The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Утечка пароля от шифрованных разделов в логе инсталлятора Ubuntu Server

18.05.2020 21:47

Компания Canonical опубликовала корректирующий выпуск инсталлятора Subiquity 20.05.2, который применяется по умолчанию для установки Ubuntu Server, начиная с выпуска 18.04 при установке в Live-режиме. В новом выпуске устранена проблема с безопасностью (CVE-2020-11932), вызванная сохранением в логе пароля, заданного пользователем для доступа к созданному при установке шифрованному разделу LUKS. Обновления iso-образов с устранением уязвимости пока не опубликованы, но новая версия Subiquity с исправлением размещена в каталоге Snap Store, из которого инсталлятор может быть обновлён при загрузке в Live-режиме, на этапе до начала установки системы.

Пароль от шифрованного раздела сохраняется в открытом виде в файлах autoinstall-user-data, curtin-install-cfg.yaml, curtin-install.log, installer-journal.txt и subiquity-curtin-install.conf, сохраняемых после установки в каталоге /var/log/installer. В конфигурациях, на которых не зашифрован раздел /var, в случае попадания системы не в те руки, пароль от зашифрованных разделов может быть извлечён из данных файлов, что сводит на нет применение шифрования.

  1. Главная ссылка к новости (https://github.com/CanonicalLt...)
  2. OpenNews: Релиз дистрибутива Ubuntu 20.04 LTS
  3. OpenNews: В Cryptkeeper всплыла проблема, приводящая к заданию фиксированного пароля "p"
  4. OpenNews: 19.4% из 1000 самых популярных контейнеров Docker содержат пустой пароль root
  5. OpenNews: Уязвимость в GRUB2, позволяющая обойти блокировку загрузки паролем
  6. OpenNews: Представлен новый инсталлятор для серверной редакции Ubuntu
Лицензия: CC-BY
Тип: Проблемы безопасности
Короткая ссылка: https://opennet.ru/52981-subiquity
Ключевые слова: subiquity, ubuntu, install
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (57) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 21:53, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +17 +/
    Я даже не знаю как это назвать
     
     
  • 2.6, бубунточка (?), 22:06, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +8 +/
    Назовите элементарно: "не прокатило!"
     
  • 2.22, Аноним (22), 23:01, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Зовите это "нескучные обои".
     
  • 2.23, Dzen Python (ok), 23:39, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем называть? Это уже названо за нас - УБУНТУ aka ЧЕЛОВЕЧНОСТЬ.
    А что? Хакер тоже не человек? Даёшь всем равные возможности по доступу на шифрованный раздел!
     
  • 2.26, псевдонимус (?), 05:15, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Позорище, вот как это назвать! Дыра на уровне инсталлирования, :-(
     
  • 2.36, ryoken (ok), 08:12, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Там же написано - УБУНТУ.
     
  • 2.58, Аноним (58), 13:08, 23/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    кому баг, кому фича
     

  • 1.2, Аноним (2), 21:54, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Сначала вышел blackbox 7 , а потом утечка, совпадение ?
     
  • 1.3, Фамилия Имя Отчество (?), 21:59, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я сегодня удивился, когда инсталяк попросил обновиться. А тут вот оно чё
     
     
  • 2.9, An (??), 22:12, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А ещё говорят, что удивительных вещей не бывает.
     
     
  • 3.27, псевдонимус (?), 05:19, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ещё как бывает! Полон лулзами линукс-мирок(винда, макакось и бсд(кроме трушных нетки и стрекозы) стараются не отстать)!
     

  • 1.4, Alen (??), 21:59, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +12 +/
    ключ под ковриком :)
     
     
  • 2.37, ryoken (ok), 08:12, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не - над косяком.
     
     
  • 3.41, Аноним (41), 09:00, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это не ключ над косяком,
    это разработчики под косяком.
     
     
  • 4.45, ryoken (ok), 11:54, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > это разработчики под косяком.

    Одно другому не мешает. А может у них чего и потяжелее.

     

  • 1.5, Аноним (5), 22:00, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Мне интересно как программист допустил такую ошибку?

    Это было что-то вроде "Хей, поле ввода пароля, почему бы не добавить его данные к строке 'Введен пароль для Luks'"?

     
     
  • 2.7, бубунточка (?), 22:08, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это не ошибка, а системная функция.

    К счастью, пока еще никому не пришло в голову проверять, сколько наших поделок с интересными названиями вида "friendly-recovery-чегототам" отсылало эти логи нам.

    А к завтрему мы все следы уже потрём.

     
     
  • 3.12, Аноним (12), 22:26, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, а потом ответ типа мы не виноваты вы сами нам свои пароли прислали.
     
  • 3.28, qetuo (?), 06:06, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Зачем им нужны твои пароли, можешь поделиться?
     
     
  • 4.30, Адмирал Майкл Роджерс (?), 06:16, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Его пароли нужны не им, а нам.
     
  • 2.15, Аноним (15), 22:36, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Это говорит о том, что вместо типизированных данных везде фигачат одни и те же строки. Мне нравится подход, когда для секретов нужно особенное обращение, исключающее работу с ними, как со строками, т.е. интерфейс (допустим, на условной недоджаве) следующий:

    class SecretString {
      private String secretValue;
      String toString() {return "фиг тебе а не пароль"}

      String getSecretForReal() { return this.secretValue }
    }

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

    И есть только две причины не использовать такой подход при работе с чувствительными данными: идиотизм и саботаж.

     
     
  • 3.17, FixingGunsInAir (?), 22:49, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    В C# для этого есть System.Security.SecureString.

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

     
     
  • 4.29, Аноним (29), 06:16, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    ой, проблема.

    class SecretString:

        def __init__(self, secret):
            self.__secret = secret

        def getSecret(self):
            return self.__secret

        def __str__(self):
            return '***'

        def __unicode__(self):
            return u'***'

        def __repr__(self):
            return '***'

    (на питоне почти не пишу, может, что еще надо, пусть питонисты поправят)

     
  • 4.34, Аноним (34), 08:04, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > В C# для этого есть System.Security.SecureString.
    > В любом нормальном языке есть аналог. Но ведь инсталлятор написан на пистоне...

    Заменили вменяемо написанный инсталятор на пестоновый, этопять!


     
     
  • 5.57, FixingGunsInAir (ok), 18:57, 20/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >  Заменили вменяемо написанный инсталятор на пестоновый, этопять!

    Да пусть хоть на Go, если имеются необходимые модули. Инсталлятор по сути - набор скрептов для быстрого развёртывания с параметризацией. Т.к. это Open Source - скрывать нечего. Какая-то аццкая производительность в 300кк мфлопс в сек не нужна. Всё равно будет висеть на I/O большую часть времени. Главное, чтобы было всё грамотно написано и программист умел в async, хоть какой-то. Язык позволяет сделать всё быстро и без заморочек.

    Ну или писать набор скрептов на С++ джва года, только ради C++. И сидеть наяривать ЧСВ с неповоротливым детищем.

     
  • 2.33, Аноним (34), 08:01, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Мне интересно как программист допустил такую ошибку?
    > Это было что-то вроде "Хей, поле ввода пароля, почему бы не добавить
    > его данные к строке 'Введен пароль для Luks'"?

    А мне интересно другое - на кой было менять вменяемый дебиановский инсталятор, который всю дорогу был сперва во всех убунтах, а потом только в серверных версиях?
    Ведь он работал отлично и выполнял все требования к инсталятору - надёжный, логичный, простой и не жручий ресурсы.
    Но нет, мы собрались выкинуть проверенный и рабочий инструмент, потому что NIH-синдром? Недостаточно хипстотный? или где?


     
     
  • 3.40, iPony129412 (?), 08:46, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > вменяемый дебиановский инсталятор

    очень спорно...

     
     
  • 4.42, Аноним (42), 09:21, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> вменяемый дебиановский инсталятор
    > очень спорно...

    Всё познаётся в сравнении, ожидаем ваши пункты по каким дебианский инсталятор не считаете вменяемым, и образец вменяемого инсталятора по вашей версии!

     
     
  • 5.43, iPony129412 (?), 09:47, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Очень наркоманский мастер.

    Особенно с тайм зонами. Для многих геомест это надо голову почесать что выбирать.

    Таже куча лишних вопросов. Зеркала для апдейтов и прочее. Да чего они сдались... Дайте поставлю, а потом подумаю над тюнингом.

    Любой инсталятор вменяемее. В той же Ubuntu.


     
     
  • 6.49, пох. (?), 19:34, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Любой инсталятор вменяемее. В той же Ubuntu.

    угу, вменяемее - "а давайте необходимые для установки модули покачаем из интернетов! - То есть как это изолированная сеть?! Не, ну я так не играю! - Ну ладно, теперь давай за обновлениями сходим - из expert text only install mode, не задавая никаких вопросов - ну а чо, мы так видим себе "экспертов" по убунте, незачем их лишний раз беспокоить! - Как так, https через дешифрующий прокси?! Нее, братело, в таких невозможных условиях мы работать не можем."


     
  • 6.53, Аноним (53), 22:34, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну т е это чистая вкусовщина, я, например, считая наоборот Вы предпочитаете п... большой текст свёрнут, показать
     
     
  • 7.55, iPony129412 (?), 04:49, 20/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Про нелогичность выкинул что?

    Если человек живёт в Владивостоке, то он часовый пояс выбирает как Европа -> Россия -> Владивосток

    Где тут проявление ума?

     
  • 7.56, iPony129412 (?), 06:49, 20/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > вы просто привыкли тыкать в картинки

    Про сервер речь шла, там нет картинок.
    Опять мимо.

     
  • 3.47, пох. (?), 19:20, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, если не бояться теории заговоров - то все ложится 1:1

    Вы эти "серверные версии" начиная с 18, для которой просто уже не было не-live установщика, ставить в закрытой от внешнего мира сети пробовали?

    Вот и не пытайтесь - не выйдет ровным счетом ничего. (и не спрашивайте что при этом понапихали на образ для установки что он на dvd-то уже не лезет)

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

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

    P.S. да, да, Хэнлон, все дела. Я помню.

     
  • 2.54, vantoo (ok), 00:32, 20/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Мне интересно как программист допустил такую ошибку?

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

     

  • 1.8, Аноним (8), 22:08, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    и вовсе это не утечка, а восточная мудрость :D
     
  • 1.10, Аноним (10), 22:20, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    А я то думаю, чего оно без сети не дает установить. А вот и ответ.
     
  • 1.11, Аноним (12), 22:25, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Совпадение? Не думаю.
     
  • 1.13, Аноним (13), 22:27, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –6 +/
    "Ubuntu" и "Server" - какая связь?
     
     
  • 2.14, Аноним (14), 22:30, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Да, оксюморон
     
  • 2.18, заминированный тапок (ok), 22:53, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    такая же, как и между "Ubuntu" и "Linux"

    хотя до сих пор существуют секты, у которых одна из главных заповедей "Ubuntu - не Линукс"

    (но лично я в некоторой степени и с этим тезисом согласен. ну потому что Линукс - это ядро, а не ОС)

     

  • 1.16, Аноним не забывает (?), 22:40, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Шо, опять?

    https://slashdot.org/story/06/03/13/0525254/root-password-readable-in-clear-te

     
  • 1.19, Аноним (19), 22:54, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Давече напарник консультировался про специальный модуль для Ансибл, специально сертификаты и ключи копировать. Всю дорогу обходились без таких изысков и тут - вот. Насторожился.

    Ну, codereview делаю. Смотрю стоит флаг запрета логов. Зачем? А т.к. этот модуль в логи пишет тело приватного ключа, копируемого средствами модуля.

    Оглушительный успех, овации.

     
     
  • 2.21, Онаним (?), 23:00, 18/05/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    При всём уважении, ансибл широченная дыра сам по себе, даже без логгирования ключей :)
    Нет, его можно правильно приготовить, но у 99% просто штатных сотрудников на это не хватит.
     
     
  • 3.31, Аноним (29), 06:23, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ансибл - это инструмент, и неплохой, если применять по назначению.

    Ножом тоже можно себе ногу отрезать, это не проблема ножей.

     
     
  • 4.38, Онаним (?), 08:35, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Ансибл - это инструмент, и неплохой, если применять по назначению.
    > Ножом тоже можно себе ногу отрезать, это не проблема ножей.

    В данном случае вместо ножа - ёж-лезвие без ручки, острое со всех сторон

     
  • 4.39, Онаним (?), 08:36, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Начнём с простого: у вас ансибл как на конфигурируемые узлы ходит? :)
    Про возможность компрометации самого сервера ансибла думали?
     
     
  • 5.48, пох. (?), 19:25, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    При его э... дизайне (извините, но альтернативные слова только матерные) - уже все равно будет, как он ходит.

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

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

     
     
  • 6.50, Онаним (?), 20:15, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Поскольку даже если не "все ключи от всего" лежат прямо на анси6лявом
    > сервере - ничего не может помешать, взломав его или сп-в легальный
    > доступ, добавить еще один плейбучек

    Вот!

     
  • 6.51, Онаним (?), 20:19, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Удобный "просто инструмент", и квесты, гляди-ка, интересные.

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

     
     
  • 7.52, Онаним (?), 20:20, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    По последнему пункту - просто потому, что у большинства девляпсов компрометация ансибл-сервера автоматически компрометирует все хосты под его управлением.
     

  • 1.20, Онаним (?), 22:59, 18/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Совершенно нечаянно...
     
  • 1.25, Аноним (25), 02:48, 19/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Пишет сразу в 5 файлов, видимо что бы наверняка.
     
     
  • 2.44, Ag (ok), 11:22, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Это защита о случайной потери пароля пользователем. А то наклеют стикер с паролем на монитор, он отвалится, упадет, его выметут с мусором.. и все, хана. А тут опс - еще 5 резервных копий. Забота!
     

  • 1.32, Аноним (29), 06:25, 19/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Всегда серверные дебианопроизводные debootstrap-ом ставил. Все эти инсталлеры - днище.
     
     
  • 2.35, Аноним (35), 08:09, 19/05/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Всегда серверные дебианопроизводные debootstrap-ом ставил. Все эти инсталлеры - днище.

    debian netinstall тоже нормальный, вот только бубунта решила не использовать его больше а заменить в пользу смузихлёбного нового стильно-модно-молодёжного!

     

  • 1.46, InuYasha (?), 12:27, 19/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Нахрена логировать пароли!??!
    Хотя, представляю себе что-нибудь типа:
    for all window.inputforms
    form.save
    log(form.name, form.data)
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру