The OpenNET Project / Index page

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

Уязвимость в ftpd из FreeBSD, позволявшая получить root-доступ при использовании ftpchroot

16.09.2020 09:00

В поставляемом в составе FreeBSD сервере ftpd выявлена критическая уязвимость (CVE-2020-7468), дающая возможность пользователям, ограниченным своим домашним каталогом при помощи опции ftpchroot, получить полный root-доступ к системе.

Проблема вызвана сочетанием ошибки в реализации механизма изоляции пользователя при помощи вызова chroot (при сбоях в процессе смены uid или выполнения chroot и chdir выдавалась нефатальная ошибка, не обрывающая сеанс) и предоставлением аутентифицированному пользователю FTP прав, достаточных для обхода ограничения корневого пути в файловой системе. Уязвимость не проявляется при доступе к FTP-серверу в анонимном режиме или при полноценном входе пользователя без ftpchroot. Проблема устранена в обновлениях 12.1-RELEASE-p10, 11.4-RELEASE-p4 и 11.3-RELEASE-p14.

Дополнительно можно отметить устранение в 12.1-RELEASE-p10, 11.4-RELEASE-p4 и 11.3-RELEASE-p14 ещё трёх уязвимостей:

  • CVE-2020-7467 - уязвимость в гипервизоре Bhyve, позволяющая из гостевого окружения записать информацию в области памяти хост-окружения и получить полный доступ к хост-системе. Проблема вызвана отсутствием ограничения доступа к процессорным инструкциям, работающим с физическими адресами хоста, и проявляется только на системах с CPU AMD.
  • CVE-2020-24718 - уязвимость в гипервизоре Bhyve, позволяющая атакующему с правами root внутри изолированных при помощи Bhyve окружений выполнить код на уровне ядра. Проблема вызвана отсутствием должного ограничения доступа к структурам VMCS (Virtual Machine Control Structure) на системах с CPU Intel и VMCB (Virtual Machine Control Block) на системах с CPU AMD.
  • CVE-2020-7464 - уязвимость в драйвере ure (USB Ethernet Realtek RTL8152 и RTL8153), позволяющая через отправку больших кадров (больше 2048) выполнить спуфинг пакетов с других хостов или осуществить подстановку пакетов в другие VLAN.


  1. Главная ссылка к новости (https://www.mail-archive.com/f...)
  2. OpenNews: Критическая уязвимость в ProFTPd
  3. OpenNews: Опасная уязвимость в ProFTPD, проявляющаяся без аутентификации
  4. OpenNews: Удалённо эксплуатируемые уязвимости во FreeBSD
  5. OpenNews: Уязвимости во FreeBSD - повышение привилегий через манипуляции с вызовом sendmsg
  6. OpenNews: Во FreeBSD устранены удалённо эксплуатируемые уязвимости в ipfw
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53720-ftpd
Ключевые слова: ftpd, freebsd, bhyve
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (56) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Кредит (?), 09:31, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Мощно. Но лучше поздно, чем никогда.

    Вместо ftpd на всех бывших и единственном оставшемся FTP-сервере всегда крутились vsftpd.

    А вот bhyve надо будет обновить. Там сказано что с root'ом в госте надо, но если гость - W2012, то там это аналогично админу?

     
     
  • 2.24, пох. (?), 12:35, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • –7 +/
    > Вместо ftpd на всех бывших и единственном оставшемся FTP-сервере всегда крутились vsftpd.

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

    Белки истерички любят сами себе вырывать ямки.

    P.S. отдельно рекомендую подумать, кому вообще еще есть чем, с хрена ли в принципе может НЕ выполниться команда seteuid или chdir в нормально настроенной системе, и каковы лично ваши шансы на это.

     
     
  • 3.32, Michael Shigorin (ok), 15:11, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Насколько понимаю, минимум два (если не все три) моих знакомых разработчика owl посмотрели vsftpd и остались довольны.  Так что можете не истерить. :)
     
     
  • 4.50, Михаил Петрович (?), 00:47, 17/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >owl

    овервотч лигу разрабатывают?

     
     
  • 5.58, Enox (?), 19:47, 17/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, это в Сколково разрабатывают))
     
  • 2.29, псевдонимус (?), 13:18, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Бихайву  похоже уделяют недостаточно внимания, а жаль. Ошибки не сказать чтоб нетривиальные. Столько лет, а гипервизор сырой.
     
     
  • 3.37, пох. (?), 17:33, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Бихайву  похоже уделяют недостаточно внимания, а жаль.

    ну а кому он нужен вообще, и сколько из них не только имеют время и вдохновение, но еще и умеют кодить?

    К сожалению, сейчас увидеть фрю в виртуалке можно примерно раз в сто чаще чем виртуалку во фре. И та будет vbox, потому что установлена пять лет назад.

    Я вообще не понимаю, зачем проект без ресурсов и денег тратил на это время, когда можно и _уже_было_ сделать нормальный порт xen dom0 - его два раза поднимали, и оба раза он ломался из-за обычного "stable api nonsense", потому что некому было поддерживать.

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

    А так - в маргинальной ос, используемой полутора васянами, нашли проблему в маргинальной виртуализации, используемой нулем васянов. Ну и похрен.

     
     
  • 4.45, псевдонимус (?), 20:10, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Потому что налимонивали на лицензию. Ксен ведь под жпл. Очевидно, что поборникам лицензионной чистоты он не интересен, как и квм, который, если мне не изменяет память, был в виде ядерного модуля.
     
     
  • 5.47, пох. (?), 21:52, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Потому что налимонивали на лицензию.

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

    Он, собственно, лежал себе в портах, как и масса другого gpl-софта, никому не мешая. kvm был полуработающий proof-of-concept, и там не только лицензия, но и крысятник тот самый, stable api nonsense, плюс сам по себе kvm абсолютно бесполезная неудобная хрень, а тащить еще и gpl-обертки принадлежащие опять же соседним крысятникам смысла было ноль.

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

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

     
  • 2.51, Михаил Петрович (?), 00:49, 17/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >2k2д
    >ftp

    Вместо rsync over ssh или rsyncssl? Сурьезна?

     

  • 1.4, Аноним (4), 09:35, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Безопасность BSD снова под угрозой!
     
     
  • 2.5, A.Stahl (ok), 09:50, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Перефразируя старый анекдот:

    -- Безопасная БСД.
    -- Безопасная что?

     

  • 1.6, онанимуз (?), 09:51, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    а вот если бы ftpd был написан на Rust...

    капча 37337 кагбэ намекает

     
     
  • 2.17, Аноним (17), 10:55, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    КГБ намекает.

    // b.

     
  • 2.19, Аноним (19), 11:20, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Это слишком сложно для раста.
     
  • 2.21, Аноним (21), 11:44, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Раст сам за программиста решает, какие ошибки системных вызовов считать фатальными, а какие — нет?
     
  • 2.34, white master (?), 16:16, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если бы был написан на раст то он бы просто не работал от слова совсем. Но зато да, безопасно.
     

  • 1.7, Аноним (7), 09:55, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Ван не нравится что уязвимость выявили или о том что о ней рассказали?
    Мне вот видно, что за этот год активно выявление и решение уязвимостей в БСД.
     
     
  • 2.12, Аноним (12), 10:30, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Будь это докер, уже бурлило бы в комментах. Местная публика такая, не мешки ворочает.
     
     
  • 3.15, A.Stahl (ok), 10:46, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Может беда не в мешках, а в том, что докер в дохрена раз более востребован? Потому и бурлений больше.
     
     
  • 4.35, white master (?), 16:17, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Продолжай верить в востребованность докера. Вера никогда не имела ничего общего с реальностью.
     
     
  • 5.38, пох. (?), 17:36, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    У него просто опечатка в слове "хайпован".

    Практически ВСЕ виденные мной использования голого доскера (и изрядная часть - доскера в обертках) не имели ни малейшего смысла - все то же самое с примерно теми же трудозатратами могло быть оформлено нормальными пакетами для нормальной системы (хоть bsd)

    При этом оно бы меньше жрало и меньше бы тормозило, а так же жрало бы меньше времени и ресурсов для сборки.

    Но дЭффективным менеджерам нравится, а эта ваша бе-ес-де - нимодна и устарело.

     

  • 1.9, Аноним (9), 10:04, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > Проблема вызвана сочетанием ошибки в реализации механизма изоляции пользователя при помощи вызова chroot

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

     
     
  • 2.23, анонн (ok), 12:07, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> Проблема вызвана сочетанием ошибки в реализации механизма изоляции пользователя при помощи вызова chroot
    > И ни слова про докер... А, его же тут нет, вспомнил.

    Причем тут ваш дыркер? И с каких пор оно стало "механизмом изоляции"?

     

  • 1.10, notcurver (?), 10:13, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    И стоило из за такое ерунды новость писать? Будто фтп ещё активно используется. Но да будет срач на радость публике.
     
     
  • 2.14, Аноним (12), 10:41, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > И стоило из за такое ерунды новость писать?

    Так и запишем, BSD - ерунда.

     
     
  • 3.36, white master (?), 16:18, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не получиться. Врятли даже писать умеешь.
     
     
  • 4.52, Аноним (52), 10:40, 17/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чья бы мычала :)
     
  • 2.22, Аноним (21), 11:46, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну как же — ерунда? Написать такой код для изоляции, который не только не изолирует, но ещё и рута позволяет получить, — это уметь надо!
     
  • 2.28, Аноним (28), 13:02, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Кто активно пользуется тот пассивно обновляется.
     

  • 1.13, Аноним (13), 10:36, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Насколько я помню фряху, там был какой то левый ftpd который даже демоном работать не мог и работал только через xinetd :(
     
     
  • 2.16, Аноним (16), 10:50, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Так в том и соль, если конечно я правильно понял.
     
  • 2.18, _ (??), 11:04, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Маны не читай, комменты пиши... ключ -D
     
  • 2.25, пох. (?), 12:37, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    "левой" функциональностью в _нормальной_ юникс-среде является именно умение работать ненужно-демоном (с кучей прекрасных возможностей запутаться в собственных шнурках), когда для этой цели уже существует общесистемный механизм.

     
  • 2.30, псевдонимус (?), 13:21, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это фича, а не баг.
     

  • 1.26, rvs2016 (ok), 12:49, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Так вместо ftpd мы же давно используем proftpd.
     
     
  • 2.33, Michael Shigorin (ok), 15:13, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот у него как раз баланс фич к дыркам исторически перекошен в другую сторону...
     
     
  • 3.39, пох. (?), 17:38, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    у него вообще дыра на дыре дырой погоняет - но зато "pro", пипл любит все "pro".

     
     
  • 4.41, Онаним (?), 18:30, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну да, proftpd то ещё решeто в бытности.
    Но зато на нём можно творить то, что на всяких прочих без костылей не сделаешь никода.
    Шаред хостинг кластерный например разрулить для клиентов единой точкой входа.
    И SFTP/SCP ещё к этому сверху навесить, не давая доступа к системному sshd.
    Авторизацию из базы данных.
    И т.п.
     

  • 1.31, Аноним (31), 14:15, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    freebsd-update fetch install Looking up update FreeBSD org mirrors 3 mirrors ... большой текст свёрнут, показать
     
  • 1.42, Аноним (42), 18:55, 16/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Хорошо что FTP умер и нигде не используется :))
     
     
  • 2.43, Онаним (?), 19:46, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Хрен там, а не умер.
    На шаред хостингах сплошь и рядом.
    В разновидностях типа FTPS в т.ч., которые ещё большая беда через файрволы, чем сам FTP.
     
     
  • 3.48, пох. (?), 22:00, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > В разновидностях типа FTPS в т.ч., которые ещё большая беда через файрволы, чем сам FTP.

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

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

    Едиственный же клиент - lftp. Ну это во-первых "русские делали", во-вторых универсальный комбайн, который просто не может работать хорошо (в том числе и потому что подменяет прямую реализацию собственным альтернативным умствованием), да еще и с настройками через анус.

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

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

     
     
  • 4.49, Онаним (?), 23:43, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не, ну гражданам файлзиллы хватит. Под любую платформу.
    А вот для системных применений я можно сказать даже и не искал... проще сразу SFTP или SCP.
     
     
  • 5.54, пох. (?), 12:57, 17/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Не, ну гражданам файлзиллы хватит.

    у граждан с файлзилой по определению nat. А CCC она не умеет, к моему изумлению.

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

    для системных применений я скорее обойдусь без шифрования вообще - незасветку пароля обеспечит s/key с вполне достаточной надежностью.

    > проще сразу SFTP или SCP.

    я не готов предоставить всем желающим (системам) shell equivalent на том хосте.
    И гоняться с подпорочками и замазочкой, пытаясь предотвратить получение в ста возможных местах непредусмотренных дырок - не собираюсь тоже.

    Тем более неинтересно мне сотни гигабайт качать без sendfile и с нагрузкой на процессор.

     
     
  • 6.61, Онаним (?), 12:08, 20/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > я не готов предоставить всем желающим (системам) shell equivalent на том хосте.

    Ну, в ProFTPd никакого shell equivalent нет, всё эмулируется.

    > Тем более неинтересно мне сотни гигабайт качать без sendfile и с нагрузкой на процессор.

    А вот это да, увы. Любое шифрование сразу отметает шуструю передачу. В пределах изолированной сети конечно лучше FTP в этом плане сложно чего-то подсказать. Разве что HTTP GET/PUT.

     
     
  • 7.62, пох. (?), 17:40, 20/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Ну, в ProFTPd никакого shell equivalent нет, всё эмулируется.

    ну вот тем и ценен ftp  - что это протокол доступа к файлам (больше чем просто "скачать один").

    > А вот это да, увы. Любое шифрование сразу отметает шуструю передачу.

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

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

    > В пределах изолированной сети конечно лучше FTP в этом плане сложно чего-то подсказать.

    я вот слил сейчас (оказавшееся у меня поврежденным при переездах) полное зеркало opensuse 11.4 и 12.1 - что-то около 200G, через ужасный неизолированный интернет. И решительно не боюсь страшных и ужасных васянов, подбросивших мне неправильные байты. Во-первых, в крайнем случае я могу перепроверить gpg ключи, во-вторых - у васяна жопа лопнет, пытаясь вмешаться в этот поток и прицельно там что-то поменять, так чтоб не обрыв соединения вызвать, а что-то более интересное.

    А АНБ, ЦРУ, Моссад и ФСБ разом конечно могли бы такое провернуть, но во-первых, они за мной в данную минуту не охотятся, у них выходной - велено трубить в шофар, жрать яблоки и каяться, солнце еще не село.
    Во вторых им проще и быстрее попатчить прямо на сервере, и уже будет неважно, каким протоколом я качаю.

     
     
  • 8.65, Онаним (?), 09:11, 22/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это да Но я имел в виду SFTP SCP модуль в ProFTPd ... текст свёрнут, показать
     
  • 3.55, Аноним (21), 15:20, 17/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Хрен там, а не умер.
    > На шаред хостингах сплошь и рядом.

    Ну так всё правильно: шаред-хостинги тоже давно померли.

     
     
  • 4.59, Онаним (?), 08:44, 18/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это, мягко говоря, заблуждение
     
     
  • 5.63, пох. (?), 17:46, 20/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Это, мягко говоря, заблуждение

    Ну, скажем так - сильно болеют и дышат на ладан.

    Потому что в эпоху гуглоинтернета принято платить не за хостинг, а за сервис целиком. Соответственно, остались только сайты мелких лавок, у которых сервис не интернетный (причем попробуй вот угадай что сегодня неинтернетное - как насчет выгула собак?) или дядин (то есть нет своего "приложения", есть приложение-в-контакте), а сайт приличие обязывает иметь.
    Обычно там только телефон и позвоните-нам. Соответственно, и продавцы услуги тоже почти все сдохли.

    В целом и это уже можно перевыложить в какой-нибудь as-a-service, но обычно дороже, если прикованный вебдевелопер и так есть.

     
     
  • 6.64, Онаним (?), 09:09, 22/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    У нас полно интернет-магазинов хостится. В т.ч. производители, а не перепродавцы.
    Но то Европа, там сфера услуг не мертва, и материальное производство не госконтрактное, и не помирает :)

    Хотя пара сайтов госконтрактников тоже имеется.

     
  • 2.46, Онаним (?), 20:12, 16/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Думаешь как так получается?

    - [Я/софт/мой вёбмастер/мой кот] по-другому не умеет.
    - [Мне/моему вёбмастеру/моему коту] так проще.
    - [Я/мой вёбмастер/мой кот] так привык.
    - ХАЧУFTP!!!111

     
  • 2.56, б.б. (?), 16:00, 17/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    нормально ftp живёт и везде используется

    сверить два репозитория в двух панелях mc, поубирать всё ненужное и скопировать - альтернатив этому просто нет

     
     
  • 3.60, Онаним (?), 12:06, 20/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В mc вполне себе есть поддержка SFTP / shell.
     

  • 1.57, Аноним (57), 19:17, 17/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А во FreeBSD и в OpenBSD один и тот же ftpd или разные? OpenBSD ftpd, помнится, хвалили как очень безопасный, как и всё в OpenBSD.
     

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



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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