The OpenNET Project / Index page

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

Уязвимость в реализации сокетов AF_PACKET ядра Linux

04.09.2020 08:29

Спустя три года с момента волны уязвимостей (1, 2, 3, 4, 5) в подсистеме AF_PACKET ядра Linux выявлена ещё одна проблема (CVE-2020-14386), позволяющая локальному непривилегированному пользователю выполнить код с правами root или выйти из изолированных контейнеров, при наличии в них root-доступа.

Для создания сокета AF_PACKET и эксплуатации уязвимости требуется наличие полномочий CAP_NET_RAW. Тем не менее, указанное полномочие может быть получено непривилегированным пользователем в контейнерах, создаваемых в системах с включённой поддержкой пространств имён идентификаторов пользователей (user namespaces). Например, user namespaces по умолчанию включён в Ubuntu и Fedora, но не активирован в Debian и RHEL. В Android право создавать сокеты AF_PACKET имеет процесс mediaserver, через который может быть эксплуатирована уязвимость.

Уязвимость присутствует в функции tpacket_rcv и вызвана ошибкой вычисления переменной netoff. Атакующий может создать условия, при которых в переменную netoff будет записано значение меньше переменной maclen, что вызовет переполнение при вычислении "macoff = netoff - maclen" и неверной последующей установке указателя на буфер для поступающих данных. В итоге, атакующим может быть инициирована запись от 1 до 10 байт в область за границей выделенного буфера. Отмечается, что в разработке находится эксплоит, позволяющий получить root-права в системе.

Ошибка вычисления присутствует в ядре с июля 2008 года, т.е. во всех актуальных ядрах, однако известная сейчас возможность применить ее для записи в область за границей выделенного буфера (уязвимость) предположительно была привнесена в феврале 2016 (ядра 4.6-rc1 и новее), с развитием поддержки virtio_net. Исправление пока доступно в виде патча. Отследить появление обновлений пакетов в дистрибутивах можно на следующих страницах: Ubuntu, Fedora, SUSE, Debian, RHEL, Arch.

  1. Главная ссылка к новости (https://www.openwall.com/lists...)
  2. OpenNews: Пятая уязвимость в реализации сокетов AF_PACKET ядра Linux
  3. OpenNews: Четвёртая уязвимость в реализации сокетов AF_PACKET ядра Linux
  4. OpenNews: Уязвимости в реализации сокетов AF_PACKET и UDP-стеке ядра Linux
  5. OpenNews: Локальная root-уязвимость в реализации сокетов AF_PACKET в ядре Linux
  6. OpenNews: Локальная root-уязвимость в ядре Linux
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53656-kernel
Ключевые слова: kernel, linux
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (112) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 08:45, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    Значит может появиться рут патчинг для андроид?
     
     
  • 2.21, n80 (?), 10:42, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Хорошо бы, но вряд ли: сначала нужно найти, например, ранее неизвестную дыру в mediaserver, позволяющую выполнять произвольный код (такое бывало конечно, но известные-то уже давно закрыты), а потом ещё запастись большим везением.
     
     
  • 3.96, Атон (?), 16:55, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Но например, ты можешь написать свой собственный mediaserver!
     
     
  • 4.100, Odalist (?), 17:43, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Как раз пишу на хаскеле для тайлинга такое.
     

  • 1.2, Lex (??), 08:56, 04/09/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –7 +/
     

  • 1.4, Аноним (4), 09:14, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Хорошо хоть не удаленная уязвимость. Было бы весело. Да и локально это далеко не каждому грозит, как я понял.
     
     
  • 2.7, Онаним (?), 09:43, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    В основном опять любители доскеров пострадают.
     
     
  • 3.14, пох. (?), 10:02, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Там s stands for "security", так что только самые глупые.

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

     
     
  • 4.31, Аноним (31), 11:58, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да я бы не сказал, что контейнеры проще настраивать, чем виртуалки.
     
     
  • 5.128, And (??), 10:40, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    У контейнеров назначение другое.
    Настроить браузер в контейнере - да, не сразу.
     
  • 3.27, Аноним (27), 11:42, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > любители доскеров пострадают

    Ну да. Профессионалы-то умеют запускать в нём процессы не от рута.

     

  • 1.5, Fracta1L (ok), 09:27, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –12 +/
    > вызовет переполнение
    > неверной последующей установке указателя на буфер

    Ахахахахаха

     
     
  • 2.26, Аноним (26), 11:12, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Ну то есть даже если разработчик знает о том, в каком месте постоянно возникают такие ошибки он не в состоянии безопасно работать с указателями. Это говорит многое о языке.
     
     
  • 3.108, Аноним (108), 20:09, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Если бы Rust был так прост и удобен, то все уже давно бы переехало на него,
    а так как там наплодили всякого хакерства, то ждем улучшенный вариант Rust.
     
  • 3.114, draw1 (?), 03:05, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если разработчик знает о том, в каком месте постоянно возникают такие ошибки и при этом он не в состоянии безопасно работать с указателями, то это в первую очередь говорит многое о разработчике.
    Кривые руки никакой язык не исправит (дыры вполне себе неплохо получаются и без всяких указателей).
     
  • 2.32, Аноним (31), 12:02, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Для особо одарённых - уязвимость вызвана ошибкой вычисления переменной netoff, т.е. это алгоритмическая ошибка. Твой, пииии, Rust не способен угадывать правильность алгоритма.
     
     
  • 3.35, Аноним (26), 12:07, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Да, от ошибки в вычислении раст не спасёт. Но будет ли происходить запись в память за пределами выделенного буфера?
     
     
  • 4.37, Аноним (31), 12:50, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это код ядра, в этом месте потребовалось бы unsafe.
     
     
  • 5.47, Аноним (47), 13:25, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Это код ядра, в этом месте потребовалось бы unsafe.

    Анонимный эксперд намба ван.

     
     
  • 6.72, Аноним (31), 16:13, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Свидетель Раста животворящего.
     
     
  • 7.102, Аноним (102), 18:00, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Свидетель минимального знания обсужддаемого предмета.




    Dereference a raw pointer
    Call an unsafe function or method
    Access or modify a mutable static variable
    Implement an unsafe trait
    Access fields of unions

    It’s important to understand that unsafe doesn’t turn off the borrow checker or disable any other of Rust’s safety checks



    поправил. Не благодари, Эксперд.

     
  • 5.69, ананимас (?), 16:04, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В ядре все фиксированно и очень мало, особенно стек. Там подсказки раста - как сказать макаке, что валуны есть нельзя.
     
  • 4.40, Аноним (40), 13:03, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Предлагаешь разрешить выполняться сборщику мусора на OSI 2 lvl?
     
     
  • 5.48, Аноним (47), 13:25, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Предлагаешь разрешить выполняться сборщику мусора на OSI 2 lvl?

    Анонимный эксперд намба ту.

     
     
  • 6.58, Аноним (58), 15:27, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Анонимный растоперейсатель намба трипицотчетыре
     
     
  • 7.103, Аноним (102), 18:01, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Анонимный растоперейсатель намба трипицотчетыре

    Наверное, все же лучше быть "растоперейсателем", чем очередным анонимым Экспердом, пишущим чушь.


     
  • 5.107, Аноним (107), 19:59, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    в расте нет GC
    вы наверное с Go перепутали
     
     
  • 6.122, Аноним (122), 21:18, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А как раст проверяет границы буфера? При каждой записи дополнительные проверки делает?
     
  • 3.63, Webmonkey (?), 15:43, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    У любителей сижки все ошибки алгоритмические, особенно записи за пределы буфера.
    smugface.jpg
     
     
  • 4.105, Аноним (105), 18:42, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну ведь так и есть. Чтобы не допускать buffer overflow, нужно добавить проверки.
     
     
  • 5.115, draw1 (?), 03:12, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ни в одном стандарте (языка, кодирования, проектирования и т. п.) не видел фразы "реализовывать проверки строго запрещается".
     
     
  • 6.129, And (??), 10:43, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Всегда в коллективе есть хоть один, не делающий проверок и искреннее обиженный, когда заставляют.
     
  • 2.99, Odalist (?), 17:41, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Ахахахахаха

    Что тебя так развесилило?

     

  • 1.6, mickvav (?), 09:30, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    > Для создания сокета AF_PACKET и эксплуатации уязвимости требуется наличие полномочий CAP_NET_RAW.

    Ну то есть "почти рут" - процесс, которому разрешили делать все что угодно с сетью, может стать "совсем рутом" - процессом, могущим творить что угодно с машиной.

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

     
     
  • 2.8, Lex (??), 09:46, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >> Для создания сокета AF_PACKET и эксплуатации уязвимости требуется наличие полномочий CAP_NET_RAW.
    > Ну то есть "почти рут" - процесс, которому разрешили делать все что
    > угодно с сетью, может стать "совсем рутом" - процессом, могущим творить
    > что угодно с машиной.
    > С одной стороны - не сильно страшно - таких процессов с гулькин
    > нос и атакующему еще их нужно начать контролировать, с другой -
    > хорошо, что нашли. С третьей - интересно будет посмотреть сколько времени
    > уйдет у производителей всяческих сетевых железок на то, чтобы это подтянуть.

    .. с четвертой - 12 лет "искали"

     
     
  • 3.25, mickvav (?), 11:04, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > .. с четвертой - 12 лет "искали"

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

     
     
  • 4.41, Аноним (40), 13:06, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А разве нету какой-то системы "доверия" коду, типо пометки "прочитали -цать раз, всё перепроверили, этот код ошибок не содержит"?
     
     
  • 5.52, пох. (?), 13:59, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    stable api nonsense же ж.
    Сегодня прочитали, завтра бросились переделывать. Послезавтра еще раз.

    Я вот попробовал применить этот патч к любимому 3.0  - как и следовало ожидать, код вообще ни разу не похож. Проверки, тем не менее, нет.

    Патч добавляет АЖ ТРИ СТРОКИ. Одна из них не то что не работает в 3.0, а даже непонятно, чем заменять - управляющие структуры ядра совершенно не те.

    Ну ладно, подождем - авось редхат починит в 6.

     
     
  • 6.60, Webmonkey (?), 15:36, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не поменялось там нихрена, единственное tp_drops в stats лежит:

    https://elixir.bootlin.com/linux/v3.0.101/source/net/packet/af_packet.c#L730

     
     
  • 7.68, пох. (?), 16:02, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Не поменялось там нихрена, единственное tp_drops в stats лежит:

    и он не atomic_t

    А теперь вот и скажи - его можно просто ++, или нужно оборачивать в spin-lock?
    (подозреваю, впрочем, что и то, и другое для тебя китайская грамота)

     
     
  • 8.82, Webmonkey (?), 16:29, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это статистика, она особо ни на что не повлияет Правильно будет инкрементить ... текст свёрнут, показать
     
     
  • 9.89, пох. (?), 16:39, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    там кое-где в других местах по похожей статистике if ы случаютцо - вот и я так... текст свёрнут, показать
     
  • 2.9, Аноним (9), 09:48, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Капы как раз нужны, чтобы не было возможности делать что угодно.
     
     
  • 3.135, mickvav (?), 01:53, 07/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это правда. Но стоит последить за связанными с capabilities уязвимостями, как становится понятно - когда ядро начиналось, этого не было. И в голове у многих разработчиков застряла эта идея - рут-не-рут, третьего не дано. В итоге ошибки дизайна вылезают как уязвимости вида "почти рут может стать рутом".
     
  • 2.10, пох. (?), 09:49, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –7 +/
    проблема, что у вас последние годы стало очень много этих почти рутов , причем ... большой текст свёрнут, показать
     
     
  • 3.42, Аноним (40), 13:12, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вы уж определитесь, кто у вас дурак — производители сетевых железок, пользующиеся «устаревшим юниксом» и чётко понимающие, что рут - это рут, и к нему доступ без вмешательства человека с консолью заварен найух, или любители дерьмонасов, которые даже не пытались вникнуть в то, почему существует так много разных "пользователей" и групп почти под каждую задачу.
     
     
  • 4.53, пох. (?), 14:06, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    причем бы тут - сонсоль Достаточно найти уязвимость даже в безопасной неруто... большой текст свёрнут, показать
     
  • 2.34, НяшМяш (ok), 12:06, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я бы больше боялся за миллионы Android устройств без поддержки, потому что

    > В Android право создавать сокеты AF_PACKET имеет процесс mediaserver, через который может быть эксплуатирована уязвимость.

    Mediaserver довольно известное сито само по себе, а теперь ему ещё и универсальный эксплойт подвезли.

     
     
  • 3.54, пох. (?), 14:18, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Я бы больше боялся за миллионы Android устройств без поддержки

    чего их бояться, им все равно ничего не светит - хоть свинцовой фольгой оберни, хоть еще и в презерватив засунь - все равно поимеют.

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

     
     
  • 4.56, Аноним (-), 14:55, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    без пакетной передачи (и в режиме ожидания с 0-м балансом) совсем разгульным банкет не будет
     

  • 1.18, Michael Shigorin (ok), 10:20, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    Ну вот, вчера как раз за USER_NS говорили (и почему отключаю в "своих" ядрах)...

    PS: только оно с подчёркиванием, ага.
    PPS для альтернативно одарённых(tm): нет, это не серебряная пуля.

     
     
  • 2.22, Аноним (22), 10:45, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Боюсь, Михаил, вы тоже ничего не поняли, как и ваш протеже.
    Для выдающихся умов повторяю: в докере user namespaces по умолчанию отключены, и 95% пользователей докера вообще не знают, что это такое и как их включить.
     
     
  • 3.23, Аноним (22), 10:57, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Именно поэтому основной вектор атаки - эксплуатация уязвимостей в программах, которым выдана привилегия cap_net_raw. И отключения в ядре USER_NS никак от этого не поможет.
     
  • 3.24, Xasd6 (?), 11:02, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > в докере user namespaces по умолчанию отключены

    а в web-браузерах?

     
  • 3.28, Michael Shigorin (ok), 11:46, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Для выдающихся умов повторяю: в докере

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

     
  • 3.46, timur.davletshin (ok), 13:23, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://docs.docker.com/engine/security/rootless/ - перепроверь официальное руководство.

    По статистике Mozilla USER_NS включен у 85% пользователей.

     
  • 3.55, пох. (?), 14:28, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Для выдающихся умов повторяю: в докере user namespaces по умолчанию отключены

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

    > 95% пользователей докера вообще не знают, что это такое и как их включить.

    95% пользователей докера просто копируют из кем-то наспех написанной инструкции - "этой нужной и полезной хрени нужен параметр --cap-add=SYS_ВАЩЕВСЕ " Я тоже так делаю - раз написано, значит, все равно без него не работает.

    За остальных, продвинутых, 5% это сделал готовый конфижек для composer. Они его даже не открывали.

     
     
  • 4.112, timur.davletshin (ok), 21:12, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это проблема вообще многих советов онлайн. Часто советуют вполне себе опасные вещи (или полную чепуху) с лицом, полным уверенности.
     
     
  • 5.113, онанимуз (?), 23:32, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    я давеча наблюдал на одном форуме, как люди, называющие себя системными администраторами, на серьёзных щщах обсуждают полнодисковое шифрование LUKS на виртуальных машинах.
    - мне хсотер выдал VNC доступ к виртуалке, через который я установил ось с нуля и зашифровал диск, теперь мои данные safe?
    - да, теперь твои данные safe, ведь никто не сможет расшифровать диск без твоей passphrase.
     
     
  • 6.130, Легивон (?), 13:19, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну на 95% случаев тупого изъятия сервера товарищем майором это сгодится.
    Ставим ssh сервер в initramfs, настраиваем протокол Diffie–Hellman'а для ssh handshake, при перезагрузке сервера коннектимся по ssh и вводим пароль (автоматизированно конечно, мы ведь любим devops, да?). Товарищи майоры если они даже пишут весь трафик, ничего не могут поделать, потому что надо было изначально ломать трафик активным человеком посередине. Ну и тут надо сваливать с хостинга сразу как тов. майоры первый раз остановили сервер.
     
     
  • 7.134, онанимуз (?), 21:24, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    если у товарища майора айсикью чуть выше, чем у хлебушка, то он попросит хсотера сделать дамп оперативной памяти этой виртуалки, прежде чем изымать сервер целиком.
    но, к счастью, в 95% случаев это будет именно тупое изъятие.
     
  • 2.97, Аноним (97), 17:01, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Отключение неймспейсов очень ограничивает применимость и защищённость такого ядра и программ под его управлением. В том числе браузеров, суидная песочница не многим лучше. Не обязательно же от рута сидеть в нём. Ещё бы можно было менять пользователя в неймспейсе (т.е. выполнил настройку от рута и сбросил привилегии, после чего уже запретил изменение), но так к сожалению нельзя, во всяком случае у меня не получилось.
     
     
  • 3.111, Аноним (97), 21:00, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/


    getcap -r /bin /sbin /lib* /usr
    /bin/arping cap_net_raw=ep
    /bin/ping cap_net_raw=ep
    /sbin/unix_chkpwd cap_dac_override=ep
    /usr/sbin/mtr-packet cap_net_raw=ep
    /usr/sbin/criu =
    /usr/bin/dumpcap cap_dac_read_search,cap_net_admin,cap_net_raw=ep
    /usr/libexec/qemu-bridge-helper cap_net_admin=ep
    /usr/lib64/libexec/kf5/start_kdeinit cap_sys_resource=ep

    Вот кстати да, что это за странные права у criu? Там вроде CAP_CHECKPOINT_RESTORE должно стоять. Кеды меня нервируют, суидный бинарник хотя бы можно удалить?



    find / -mount -perm -4000 | grep kf5
    /usr/lib64/libexec/kf5/fileshareset


     
     
  • 4.127, onanim (?), 09:55, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    sh-4.4# getcap -v /usr/lib64/libexec/kf5/start_kdeinit
    /usr/lib64/libexec/kf5/start_kdeinit
    sh-4.4# ls -lh /usr/lib64/libexec/kf5/fileshareset
    -rwxr-xr-x 1 root root 11K Feb  3  2019 /usr/lib64/libexec/kf5/fileshareset

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

     
     
  • 5.132, Аноним (97), 19:35, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вообще, именно это конфигурируется, а по последниму у тебя версия двухлетней давности и с тех времён изменений очень много было.




    * Searching for USE flag caps ...
    [IP-] [  ] app-crypt/pinentry-1.1.0-r3:0
    [IP-] [  ] app-emulation/qemu-5.1.0:0
    [IP-] [  ] app-misc/pax-utils-1.2.6:0
    [IP-] [  ] app-shells/zsh-5.8:0
    [IP-] [  ] kde-frameworks/kinit-5.73.0:5/5.73
    [IP-] [  ] kde-plasma/kwin-5.19.5:5
    [IP-] [  ] media-libs/gstreamer-1.16.2:1.0
    [IP-] [  ] net-misc/chrony-4.0_pre3:0
    [IP-] [  ] net-misc/iputils-20200821:0
    [IP-] [  ] sys-apps/coreutils-8.32-r1:0
    [IP-] [  ] sys-apps/iproute2-5.8.0:0
    [IP-] [  ] sys-apps/smartmontools-7.1:0
    [IP-] [  ] sys-apps/util-linux-2.36:0
    [IP-] [  ] sys-auth/pambase-20200817:0
    [IP-] [  ] sys-libs/glibc-2.32-r1:2.2



     
     
  • 6.133, Аноним (97), 19:50, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    //последнему*

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




    * Searching for USE flag filecaps ...
    [IP-] [  ] app-emulation/qemu-5.1.0:0
    [IP-] [  ] net-analyzer/mtr-0.93-r1:0
    [IP-] [  ] net-analyzer/wireshark-3.2.6:0/3.2.6
    [IP-] [  ] net-misc/iputils-20200821:0
    [IP-] [  ] sys-libs/pam-1.4.0_p20200829:0



     

  • 1.20, solardiz (ok), 10:42, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/
    > Проблема присутствует в ядре с июля 2008 года, т.е. проявляется во всех актуальных ядрах.

    Отправил модераторам исправление на вот такое:

    Ошибка вычисления (баг) присутствует в ядре с июля 2008 года, т.е. во всех актуальных ядрах, однако известная сейчас возможность применить ее для записи в область за границей выделенного буфера (уязвимость) предположительно была привнесена в феврале 2016 (ядра 4.6-rc1 и новее), с развитием поддержки virtio_net.

    Чуть подробнее об этом написал в oss-security.

     
  • 1.33, Аноним (31), 12:04, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Вот накуя андрюшиному медиасерверу доступ к RAW-сокетам?
     
     
  • 2.43, Аноним (40), 13:14, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Дудосить пацанской музыкой наушники в метро?
     
     
  • 3.64, Аноним (31), 15:57, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Так для RTP нужен UDP.
     
     
  • 4.123, Аноним (122), 21:26, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А зачем для udp raw сокеты?
     
  • 2.44, гугель (?), 13:15, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Что это за медиасервер, который использует немодные и устаревшие протоколы, может еще скажете - tcp?

    Современный медиасервер ОБЯЗАН изобрести ни с чем несовместимый собственный tcp, желательно уязвимый к relay-attacks, а в идеале еще к точечным dos.

    Разумеется, при его реализации без raw sockets никак не обойтись!

     
  • 2.49, n80 (?), 13:30, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Забавно: попытался я найти ответ на этот вопрос, а вместо этого нашлись новости за 2016 и 2017 г. почти слово-в-слово совпадающие с этой.

    Вообще, похоже что для всякого изврата типа AVTP.

     
  • 2.62, Аноним (62), 15:43, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Протоколы в локальной сети для обмена аудио
     
     
  • 3.86, Аноним (31), 16:33, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Для этого UDP достаточно. Ну может UDPLite, тоже отдельный тип сокета, доступный всем пользователям.
     
     
  • 4.106, Аноним (106), 19:18, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Для проприетарных протоколов андроида?
     

  • 1.57, Hellscream (?), 15:08, 04/09/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     

  • 1.59, Аноним (58), 15:30, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Что делают все эти свидетели раста в топиках про сишный, богомерзкий линукс ?
     
     
  • 2.61, Hellscream (?), 15:38, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Хотят предложить спасение.
     
     
  • 3.67, Аноним (31), 16:01, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Они уже своего Пророка выбрали?
     
     
  • 4.79, Hellscream (?), 16:29, 04/09/2020 Скрыто ботом-модератором     [к модератору]
  • –3 +/
     
     
  • 5.83, Аноним (31), 16:31, 04/09/2020 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 3.78, Аноним (78), 16:27, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И это все вместо того чтобы хотяб 1 драйвер на расте написать?
     

  • 1.65, Аноним (97), 15:59, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    С одной стороны "опять"?, А с другой, с CAP_NET_RAW ты уже рут или лицо исполняющее его обязанности, что вы так прицепились к этим неймспейсам (без которых всё равно жизни нет).

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

     
  • 1.66, oni66678910111213 (?), 15:59, 04/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >переполнение
    >неверной последующей установке указателя на буфер

    нет-нет! не надо переписывать на rust/Go/D! всё и так прекрасно!

     
     
  • 2.70, Аноним (31), 16:06, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Есть такое чуйство, что на чём бы не переписали, а в этом месте понадобится @unsafe.
     
     
  • 3.76, oni66678910111213 (?), 16:25, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    в любой программе, надобность в unsafe можно свести к минимуму: к нескольким функциям, которые можно пометить "для особого ревью всей командой".. - значительно безопаснее, чем всё писать на опасном языке.
     
     
  • 4.116, draw1 (?), 03:32, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    этот "минимум" может оказаться весьма обширен.
    функции, хоть обсмотрись всей командой, работают не в чистом поле сами по себе - один фиг надо смотреть и всё вокруг и не менее пристально (что слегка портит радужную картину "посмотреть в одном месте, а остальное за нас язык сделает").
    Если команда из таких людей, которым нельзя доверить "опасный" язык, то они точно в состоянии справиться с ревью?
     
  • 2.74, Аноним (97), 16:22, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Писать ядро на языке с принудительным гц отличная идея, далеко пойдёшь.
     
     
  • 3.77, oni66678910111213 (?), 16:26, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    во всех перечисленных языках гц можно отключать или (в Go) выбирать стратегию разработки, которая не требует гц. - да, сложнее,.. но возможно.
     
     
  • 4.88, Аноним (97), 16:34, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Очень теоретически (в д, поскольку библиотека на него завязана емнип), или через содомию, которая всё равно неэффективна (го). На го уже написали "ядро" таким образом. Теоретическая возможность не гарантирует практической применимости.
     
     
  • 5.95, Аноним (31), 16:54, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Справедливости ради, в D использовать libgphobоs не обязательно. Только тогда придётся все необходимые функции самому. Но это и соотвествует ситуации писания ядер. Там, ведь, не используют стандартные библиотеки функций.
     
     
  • 6.98, Аноним (97), 17:11, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А что там останется от ди без библиотеки? Заново его изобретать только уже со своим нескучным рантаймом?
     
     
  • 7.119, Аноним (119), 13:20, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Очевидно компилятор.
     
     
  • 8.125, Аноним (97), 22:03, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Разве это не в старом д компилятор В новом -- рантайм ... текст свёрнут, показать
     
  • 7.124, Аноним (97), 22:02, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Разве это не в старом д компилятор? В новом -- рантайм.
     
  • 2.81, Аноним (78), 16:29, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    где писатели драйверов на расте? кто железом будет рулить?
    собака лает, а караван идёт.
     
     
  • 3.84, oni66678910111213 (?), 16:31, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    та идёт-идёт! Ритчи, в своё время, осознал ошибку и пошёл Limbo пилить с Plan9..
     
     
  • 4.85, Аноним (78), 16:33, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Y FreeBSD тоже шло, а что в итоге?
    В итоге осталься только linux : https://www.top500.org/
     
     
  • 5.87, oni66678910111213 (?), 16:34, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    миллионы не ошибаются - ога
     
  • 5.117, Hellscream (?), 11:14, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    FreeBSD так-то является самой популярной в мире игровой платформой, правда в обёртке от Sony и Nintendo. Но тут и линуксу похвастать нечем, ведь для обычного человека он пригоден к использованию только в виде Android.

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

     
  • 4.91, Аноним (31), 16:43, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Смотрим исходники Plan 9 http://9p.io/sources/plan9/sys/src/ и... О ужас, да они же на богомерзком C!
     
  • 4.92, пох. (?), 16:45, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > та идёт-идёт! Ритчи, в своё время, осознал ошибку и пошёл Limbo пилить
    > с Plan9..

    И результат?

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

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

     
  • 3.120, Webmonkey (?), 14:36, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >где писатели драйверов на расте?

    Тут: https://www.redox-os.org/

     

  • 1.126, Аноним (126), 03:59, 06/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Мне один сисадмин-икзперт рассказывал на собеседовании, что контейнеры/виртуализация самая защищенная вещь и что не надо в случае обнаружении вирусни на сервере с хостингом переустанавливать ОС. Ну, что чудило, понял в чем ты ошибался или до сих пор строишь из себя икзперта по ИБ?
     
     
  • 2.131, Легивон (?), 13:26, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А разве это не близко к истине?
    Использование контейнеров вкупе с остальным стеком DevOps радикально ускоряющим релиз и развертывание, позволит выкатить исправление в течении минимального времени и позволит не сломать им прод (что как правило гораздо хуже гипотетических уязвимостей)
     
     
  • 3.136, Аноним (136), 14:44, 07/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    devops pipeline это отличный организационный объект, которому требуется системная защита, виртуализация это только у Rутковской и фриков про безопасность, а у системщиков свои принципы (минимум кодовой базы и т.д.). возможно пост выше про это.
     
  • 3.137, Аноним (137), 07:50, 08/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >А разве это не близко к истине?

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

    >DevOps

    Читать нужно внимательней. Написал же, что сервер для хостинга. Публичного хостинга. И если кто-то извне с рутом в domU использует уязвимость в сабже, получает контроль на dom0, то см. выше что будет.

    Мне просто интересно как этот чудень оправдывался бы перед директором со словами "ну, я думал, что это нецеленаправленная атака", поэтому в domU я систему "почистил", ну а в dom0 все вроде нормально (угу, логи-хуеги все как надо почистили и естественно ничего не обнаружил).

     
  • 2.138, Аноним (138), 20:48, 08/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В случае, если вирусня не вылезла в dom0, действительно не надо. Но у такого эксперта вряд ли хватит квалификации понять, вылезла ли.
     
     
  • 3.139, Аноним (137), 04:05, 09/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Давай порядок действий как опеределить влезли в dom0 или нет. Просто опиши шаги, которые нужно выполнить как минимум.
     

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



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

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