Во FreeBSD выявлена уязвимость (CVE-2022-23093) в утилите ping, входящей в базовую поставку. Проблема потенциально может привести к удалённому выполнению кода с правами root при проверке при помощи ping внешнего хоста, подконтрольного злоумышленнику. Исправление предложено в обновлениях FreeBSD 13.1-RELEASE-p5, 12.4-RC2-p2 и 12.3-RELEASE-p10. Подвержены ли другие BSD-системы выявленной уязвимости пока не ясно (отчётов об уязвимости в NetBSD, DragonFlyBSD и OpenBSD пока не появилось).

Уязвимость вызвана переполнением буфера в коде разбора ICMP-сообщений, приходящих в ответ на проверочный запрос. Код отправки и приёма ICMP-сообщений в ping использует raw-сокеты и выполняется с повышеннымми привилегиями (утилита поставляется с флагом setuid root). Обработка ответа производится на стороне ping через реконструкцию IP- и ICMP-заголовков пакетов, получаемых из raw-сокета. Выделенные IP- и ICMP-заголовки копируются функцией pr_pack() в буферы, не принимая во внимание то, что в пакете после заголовка IP могут присутствовать дополнительные расширенные заголовки.

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

<<<

  • Minona
    link
    fedilink
    arrow-up
    0
    ·
    4 years ago

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

    Ты про journald.conf ? Ну там же написано:

    # Entries in this file show the compile time defaults.
    # See journald.conf(5) for details.
    
    • crypt
      link
      fedilink
      arrow-up
      0
      ·
      4 years ago

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

      • Minona
        link
        fedilink
        arrow-up
        0
        ·
        4 years ago

        Судя по ману, конфиги journald могут находиться:

        SYNOPSIS
               /etc/systemd/journald.conf
        
               /etc/systemd/journald.conf.d/*.conf
        
               /run/systemd/journald.conf.d/*.conf
        
               /usr/lib/systemd/journald.conf.d/*.conf
        
               /etc/systemd/[email protected]
        

        Моя не уверен, но вполне возможно, что команда systemd-analyze cat-config systemd/journald.conf должна выводить сводный список параметров из всех этих мест.

        • crypt
          link
          fedilink
          arrow-up
          0
          ·
          4 years ago
          localhost ~ # mkdir -p /run/systemd/journald.conf.d/
          localhost ~ # echo 'foo=bar' > /run/systemd/journald.conf.d/bla.conf
          localhost ~ # systemd-analyze cat-config systemd/journald.conf |grep bla
          # /run/systemd/journald.conf.d/bla.conf
          localhost ~ # systemd-analyze cat-config systemd/journald.conf |grep bar
          foo=bar
          

          ну да… сначала 4 диры для конфигов, а потом эти проблемы решаем…

          • Minona
            link
            fedilink
            arrow-up
            0
            ·
            4 years ago

            Ну так… у каждой диры своё назначение - юниксвей йопт. =) Самое печальное что в Фряхе это перенимать начали… куда катится мир… эх.

            • crypt
              link
              fedilink
              arrow-up
              0
              ·
              4 years ago

              да нету такого в unix way. там одна дира для конфигов. ну во фряхе две, ок, есть /usr/local/etc.

              а вот, когда начинают делать windows-комбайны “все включено”, то начинается вот такое усложнение.

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