The OpenNET Project / Index page

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

Демонстрация атаки на редакторы кода, приводящей к утечке файлов при открытии исходных текстов

16.05.2021 08:03

Продемонстрирован метод атаки на редактор кода VSCode, позволяющий передать произвольные файлы в рамках прав текущего пользователя при открытии в редакторе специально оформленного исходного кода. В предложенной демонстрации при открытии кода на языке Rust, в котором используется процедурный макрос, выполняется установка соединения с хостом 127.0.0.1:8080 и отправка содержимого файла "~/.ssh/id_rsa" с SSH-ключами пользователя.

Для компрометации достаточно просто открыть файл с кодом без выполнения каких-либо других действий с проектом. Для работы примера требуется наличие в VSCode плагина rust-analyzer (обвязка над штатным компилятором rustc) и наличие в системе инструментария для работы с кодом на языке Rust. Проблема связана с раскрытием процедурных макросов во время начального анализа кода. Аналогичного эффекта также можно добиться во время компиляции с использованием команды "cargo build".

Отмечается, что проблема может затрагивать другие редакторы кода и языки программирования. VSCode и rust-analyze использованы лишь для демонстрации вектора атаки. Теоретически проблеме подвержен любой редактор кода, раскрывающий процедурные макросы, которые позволяют создавать расширения синтаксиса и выполнять код на этапе компиляции. Изначально исследователь изучал возможность совершения вредоносных действий во время компиляции кода, но обнаружил, что процедурные макросы раскрываются при обработке исходных текстов в редакторах кода. Вероятно, атака может затрагивать и другие языки программирования, например, в Java похожим образом можно манипулировать с обработкой аннотаций.



  1. Главная ссылка к новости (https://www.reddit.com/r/netse...)
  2. OpenNews: Конфликт из-за отображения шапки Санта-Клауса в открытом редакторе кода Visual Studio Code
  3. OpenNews: Уязвимость в Vim, приводящая к выполнению кода при открытии вредоносного файла
  4. OpenNews: Опасная уязвимость в реализациях LZO/LZ4, затрагивающая ядро Linux, FFmpeg, OpenVPN и другие проекты
  5. OpenNews: Уязвимость в Libreoffice и Openoffice, позволяющая выполнить код при открытии документа
  6. OpenNews: Критическая уязвимость в bash, которая может привести к удалённому запуску команд
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/55159-rust
Ключевые слова: rust, attack, code
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (251) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 08:17, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –12 +/
    Редактор от MS. Что могло пойти не так?
     
     
  • 2.3, Аноним (3), 08:18, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +30 +/
    Даже без редактора если запустить cargo build, эффект будет тот же.
     
     
  • 3.34, Аноним (34), 11:43, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Это опеннет, нут лишь бы проприетарщиков в комментах обосрать, за другим сюда не ходят.
     
     
  • 4.36, hindoohindoo (?), 12:03, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > rust

    как будто это не проприетарная поделка: намеренный оверинжиниринг и NIH в традициях гугла.

     
     
  • 5.91, Минона (ok), 15:40, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Какое отношение к раст имеет Гугл?
     
     
  • 6.122, Аноним (-), 17:24, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –4 +/
    >Какое отношение к раст имеет Гугл?

    Менеджеры Гуглятины продвигают Раст для программирования ядра Linux.

     
     
  • 7.220, hindoohindoo (?), 10:37, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    вот ещё да картина-то складывается интересная - из мозиллы выгоняют всех незав... большой текст свёрнут, показать
     
     
  • 8.275, Аноним (-), 07:40, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • –3 +/
    вот не согласен Жить нам предстоит с забаненным Twitter, Reddit, Youtube И ч... текст свёрнут, показать
     
     
  • 9.288, нах.. (?), 10:04, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    чего это вдруг Ну ненужно-вредитт может и правда зобанют Свитер с ютрупом - д... текст свёрнут, показать
     
  • 8.292, ммнюмнюмус (?), 15:52, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Может тогда linux-разрабы отстранят гугл от разработки ядра как университет Минн... текст свёрнут, показать
     
  • 6.217, hindoohindoo (?), 10:26, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    такое же как к мозилле. владеет.
     
  • 4.37, Аноним (37), 12:04, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –3 +/
    VS Code вроде как open source проект
     
     
  • 5.266, Аноним (266), 20:45, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, повторяй чаще перед сном.
     
  • 4.87, Урри (ok), 15:14, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Как будто это что-то плохое.

    А кроме того, это же весело!

     
  • 4.102, Аноним (102), 16:35, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    не отвлекайся, лижи дальше.
     
  • 2.73, Аноним (73), 14:06, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Редактор от MS. Что могло пойти не так?

    Очевидно ж, редактор от MS - это сразу с халтуркой.

     
     
  • 3.276, Аноним (-), 07:41, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    не юзай. юзай одобренный, расово-правильный JetBrains
     
  • 2.82, n00by (ok), 14:30, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > Редактор от MS. Что могло пойти не так?

    rust-analyzer это так называемый language server. Он может использоваться в любых редакторах с поддержкой Language Server Protocol. А вот LSP - это, да, детище MS.

     
  • 2.144, phpoenx (?), 19:22, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Помнится, даже в их блокноте была критическая уязвимость с выполнением кода
     
  • 2.194, Аноним (194), 00:29, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    От MS там только название. Электрон-поделка, как она есть. Надо СРОЧНО переписать на раст!
     

  • 1.2, Аноним (3), 08:17, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +16 +/
    compile-time уязвимость, такого я еще не встречал
     
     
  • 2.4, Плохой Танцор (?), 08:30, 16/05/2021 Скрыто ботом-модератором     [к модератору]
  • +63 +/
     
     
  • 3.146, phpoenx (?), 19:22, 16/05/2021 Скрыто ботом-модератором     [к модератору]
  • –4 +/
     
     
  • 4.163, Неа (?), 20:06, 16/05/2021 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 4.179, Эноним (?), 21:50, 16/05/2021 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.5, Аноним (5), 08:32, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +39 +/
    Зато без утечек памяти.

    Ваши данные утекают без ошибок. (С)

     
     
  • 3.21, Аноним (21), 09:43, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Раст не защищает от утечек памяти.
     
     
  • 4.38, hindoohindoo (?), 12:04, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +8 +/
    и приводит к утечкам данных. безопасность кого надо безопасность
     
  • 3.291, leibniz (ok), 11:17, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    ну и отлично
     
  • 2.26, виндотролль (ok), 10:34, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ты мейкфайлы тоже запускаешь без предварительной проверки того, что там выполняется?
     
     
  • 3.31, анакомус (?), 11:24, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +4 +/
    да
     
     
  • 4.196, виндотролль (ok), 05:08, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    cmake, qmake, ninja, meson, conan наконец-то можно кодить как будто это 2021 и... большой текст свёрнут, показать
     
     
     
    Часть нити удалена модератором

  • 6.208, виндотролль (ok), 08:52, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Никакие говнофайлы С++ ненужны и этим говном невозможно собрать С++.

    Да, можно собрать любой язык одним лишь компилятором/линковщиком. Да, в расте раскрытие макросов выполняется компилятором/линковщиком (rustc).

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

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

    > говно
    > школа
    > позорище
    > убожество
    > дошколят
    > бездарная
    > обгадился
    > хернёй

    твои знания и проф уровень уже все оценили, расслабься


     
     
     
    Часть нити удалена модератором

  • 8.234, виндотролль (ok), 15:29, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну что ты заладил со своим eval Выучил новое слово Во всех примерах, где мне в... большой текст свёрнут, показать
     
  • 5.277, Аноним (-), 07:44, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    просто надо юзать Maven. Все четко, централизованно, из репозитория, проверено, подписано, все чикипуки, чикибрики и чикисталин
     
  • 4.202, Аноним (202), 07:49, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Если у тебя программа из 1 файла то система сборки не нужна, можно просто запустить 1 команду компилятора и всё.
    Во всех остальных случаях десятки лет используются make, cmake или что-то подобное
     
  • 4.211, Аноньимъ (ok), 09:44, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    >Здесь проблема в самой скриптухи, которая попростуе делает eval во время компиляции/анализа кода. Такой херни даже в жаваскрипте не практикуют.

    Это ещё что, некоторые делают eval во время выполнения, вот прикол.

     
  • 4.238, Аноним_в_противогазе (?), 15:42, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Меня удивляет непробиваемое невежество тутошних экспертов. Во-первых С/С++ ненужны никакие файлы как и какие-либо системы сборки, в отличии от этой скриптухи.
    > дальнейшая порча воздуха поскипана

    А мужики-то и не знали! (с)
    https://clang.llvm.org/get_started.html
    > If you would like to check out and build Clang, the current procedure is as follows:
    > Standard build process uses CMake.

    https://gcc.gnu.org/install/prerequisites.html
    > Tools/packages necessary for modifying GCC
    > autoconf version 2.69
    > GNU m4 version 1.4.6 (or later)
    > Necessary when modifying configure.ac, aclocal.m4, etc. to regenerate configure and config.in files.
    > GNU make version 3.80 (or later)
    > You must have GNU make installed to build GCC.

     
     
     
    Часть нити удалена модератором

  • 6.242, Аноним_в_противогазе (?), 16:06, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Какая экспрессивная, но невнятная отмазка Да-да, сборка C C компилятора не им... большой текст свёрнут, показать
     
     
     
    Часть нити удалена модератором

  • 8.247, Аноним_в_противогазе (?), 16:42, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Да-да, разрабы gcc и clang - инвалиды и то ли дело великий, анонимный, непризн... большой текст свёрнут, показать
     
     
     
    Часть нити удалена модератором

  • 10.250, Аноним_в_противогазе (?), 17:28, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Кавычки - это вообще-то цитирование тебя же, ыксперд Но даже тут ты умудрился ... текст свёрнут, показать
     
  • 3.243, нах.. (?), 16:14, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А у меня нет редактора, "запускающего мэйкфайлы" при попытке их редактировать.
    Что я делаю не так?

    Ах, да, не пишу на язычках с нескучными "анализаторами".

     

     ....большая нить свёрнута, показать (21)

  • 1.6, Аноним (6), 08:33, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/
    Грабли_с_топором_.png
    Чего еще ждать от моды на лютое переусложнение
     
     
  • 2.49, Аноним (49), 12:51, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +8 +/
    > Грабли_с_топором_.png
    > Чего еще ждать от моды на лютое переусложнение

    Интересно, из вышеотписавшихся хоть кто-то хоть раз открывал тот же ./configure(.ac) или "толстый" (сгенерированный CMake) Makefile.
    Или как обычно в новости с упоминанием "rust" - длиннючая перепись опеннетного ламерья?


     
     
  • 3.75, Аноним (73), 14:09, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Не ламерьё, а недалёкие, ограниченные. :)

    ./configure никогда никто не проверял.

    Но это вектор-то такой... Это можно вставить вообще в чём угодно.

     
     
  • 4.80, Аноним (-), 14:20, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Не ламерьё, а недалёкие, ограниченные. :)

    Так это и есть сленговое названия таких вот, "рассуждающих с умным видом".


     
  • 3.76, Michael Shigorin (ok), 14:10, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Ну я открывал.  И что характерно -- никуда никто при этом не ломится, потому как выполнения кода не положено.

    Разумеется, не в vscode.

     
     
  • 4.79, Аноним (-), 14:18, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Ну я открывал.  И что характерно -- никуда никто при этом
    > не ломится, потому как выполнения кода не положено.
    > Разумеется, не в vscode.
    >>  Для работы примера требуется наличие в VSCode плагина rust-analyzer
    >> Аналогичного эффекта также можно добиться во время компиляции с использованием команды "cargo build".

    /0

     
  • 3.95, Dzen Python (ok), 15:58, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Открывал.
    И более того - правил.
    И даже - не свались со стула - чистил вилкой за смейком.
    И писал с нуля.

    > Или как обычно в новости с упоминанием "rust" - длиннючая перепись опеннетного ламерья?

    Гы

     
     
  • 4.110, Аноним (-), 16:47, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Открывал.
    > И более того - правил.
    > И даже - не свались со стула - чистил вилкой за смейком.

    Но никаких выводов о том, что там и "черта лысого" спрятать можно - не сделал ...
    > Гы

    Во-во.

    >> УДАЛЕНО.WARNBOT, Санкционировано: gvy

    норм, че.

     
     
  • 5.116, Аноним (37), 17:02, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да он там максимум опции компилятора поправил, потому что через automake, configure не смог
     
  • 5.157, Dzen Python (ok), 19:36, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    При желании, да.
    Но в принципе, это атака на невнимательность и на использование генерированных портянок - makefile можно раскурить, это тебе не минимизированный js, запутанный перл или спецом обфусцированный С.

    В итоге все сводится опять к выполнению неизвестного юзеру скрипта, только не в sh-нике, а в метаконфигурации проекта и макросах. Всего делов. Скука!

     
     
  • 6.170, Likern (?), 21:04, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Раскурить можно всё. Пару часов всего-то потратить. Но после пятого такого раскуренного Makefile-a с криками "На...пошёл со своей безопасностью!" ты полетишь как фанера над Парижем с работы.

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

     
     
  • 7.173, Аноним (-), 21:24, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    mount_namespaces(7)
     
  • 7.184, Dzen Python (ok), 22:17, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    В шарагах на три студента, манагера-истеричку и мамкиного капиталиста - владетеля пяти древних машин и полудохлого сервера - возможно. Но такие и должны страдать.
    В нормальных компаниях есть такое понятие как аудит входящего кода, включающая в себя, но не ограничивающаяся раскуриванием скриптов и конфигов из внешних источников.
     
     
  • 8.186, Likern (?), 22:26, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    У меня друг работал в Касперыче и Мэйле и вроде в Яндексе Спрошу у него про ... текст свёрнут, показать
     
  • 4.167, Аноним (-), 20:43, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Интересно, из вышеотписавшихся хоть кто-то хоть раз открывал тот же ./configure(.ac) или "толстый" (сгенерированный CMake) Makefile.
    > Ламерье, какое отношение .ac и прочая херня имеет к С/С++? Особенно к
    > С++. С++ ненуждает в системах сборки - это раз.

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

     
     
     
    Часть нити удалена модератором

  • 6.175, Аноним (-), 21:39, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > А вот и домохозяйки подъекхали. Для чего ты лезешь куда-то, чтобы в
    > конечном итоге опозоирться?

    ...
    > Только вот
    > С++ не поддерживает раздельную сборку и собрать раздельно С++ невозможно. Поэтому
    > никакой make/cmake и прочее гоняке не собирают С++ и не могут
    > собрать.

    Давай я задам вопрос прямо - дорогой ты наш читатель жопой, где в "Интересно, из вышеотписавшихся хоть кто-то хоть раз открывал тот же ./configure(.ac) или "толстый" (сгенерированный CMake) Makefile. " ты увидел упоминание 'С/С++' и "Особенно к С++."?
    К чему ты еще что-то сам придумал о "ненужности систем сборки" и сам же оспорил, так уж и быть, справшивать не буду.

     
  • 6.177, Likern (?), 21:47, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Мда...ну что тут сказать...цитаты великих, не иначе. Можно каждое предложение разбирать на цитаты.

    CMake не могут собрать С++...
    Собрать С++ раздельно невозможно...

    Именно сейчас я буду собирать С++ раздельно с помощью Cmake, а потом отдельно собранные объектные файлы отдельно слинкую.

     
     
     
    Часть нити удалена модератором

  • 8.182, Likern (?), 22:11, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Братишка, я тебе покушать принёс Надеюсь ты подлечишься, подучишь что такое С ... текст свёрнут, показать
     
  • 3.210, Аноньимъ (ok), 09:37, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так это и есть мода на переусложнение. Как собственно и кресты.

    И сишка туда-же.
    Можно конечно сказать что она проста, как и ассемблер, чисто синтаксически, но использовать этот ужас очень и очень сложно.

    Раз уж о том речь, раст этот отход от тенденции переусложнения и попытка переосмыслить сишку.

     
     
  • 4.273, Аноним (37), 00:49, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Zig - это попытка уйти от переусложнения. Язык учится за пару дней
     
  • 4.294, Anon Nona (?), 19:27, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >Так это и есть мода на переусложнение. Как собственно и кресты.
    >И сишка туда-же.

    Ты предлагаешь использовать бейсик?

     
     
  • 5.295, Аноньимъ (ok), 20:03, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    >>Так это и есть мода на переусложнение. Как собственно и кресты.
    >>И сишка туда-же.
    > Ты предлагаешь использовать бейсик?

    Лисп машины были неплохие, как и многие объектные процессоры.

    Аду например, модулу, современный объектный иаскаль то же неплох.

     

  • 1.7, Аноним (5), 08:33, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Интересно, какой придурок додумался встраивать пакетный менеджер в ЯП? Он вообще ничем не думал?
     
     
  • 2.12, боня (?), 08:56, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Непосредственно в ЯП ничего не встроено, если хотите - используйте rustc вручную или запихайте его в любую другую сборочную систему.

    эффект будет тот же

     
  • 2.13, Аноним (13), 08:58, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    динозавр, ты ничего не понимаешь в современном программировании. привык к своим архаичным практикам из 70х, это не актуально. не модно, не стильно, в конце концов.
     
     
  • 3.30, Аноним (30), 11:04, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Согласен, перфокарты же не утекают!
     
  • 3.41, hindoohindoo (?), 12:11, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    точно в век инклюзивности и открытости ни у кого не должно быть секретиков от общества. вот кукуруку правильный язык - никаких секретов, всё в общий котёл! даёшь!
     
  • 2.20, inferrna (ok), 09:34, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Если бы код, делающий то же самое, встроили не в макрос, а в тело функции - сильно бы полегчало?
     
     
  • 3.67, Рмшъ (?), 13:25, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Её можно было бы увидеть в редакторе перед запуском
     
     
  • 4.212, Аноньимъ (ok), 09:48, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А сишкины макросы языковым сервером не раскрываются?
     
     
  • 5.214, n00by (ok), 10:10, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тут надо понимать, что такое фазы трансляции. "Сишкины макросы" могут не более, чем преобразовать подаваемый на вход компилятора исходный текст.
     
  • 2.39, hindoohindoo (?), 12:05, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    зато не дырявая сишка. бебебе
     
     
  • 3.100, Аноним (100), 16:22, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    скрипты сборки сишки не менее дырявые)
     
     
  • 4.204, Совершенно другой аноним (?), 08:35, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А при чём тут скрипты сборки? Вы только скачали из какого-нибудь github исходник на rust, и только открыли его в своём любимом редакторе (собирать его даже и не думали, так, посмотреть, что там и как), и вот, Вы уже pwned (c).
     
     
  • 5.213, Аноньимъ (ok), 09:50, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А сишкины макросы языковым сервером не раскрываются?
     
     
  • 6.223, Совершенно другой аноним (?), 11:13, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Где? У меня - нет, не раскрываются. И в C, насколько я понимаю, никаких процедурных макросов нет, и никто их не выполняет в процессе компиляции, т.к. сам компилятор C про них совсем ничего не знает, а знает препроцессор CPP, который как-бы не знает C.
     
     
  • 7.232, Аноньимъ (ok), 15:19, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Где? У меня - нет, не раскрываются. И в C, насколько я
    > понимаю, никаких процедурных макросов нет, и никто их не выполняет в
    > процессе компиляции

    Чтобы произвести компиляцию нужно развернуть макросы.

    Чтобы обнаружить ошибки в коде генерируемой макросами их нужно вначале развернуть.

    Или для Си таких тулзов вообще нет? Наверняка есть.

     
     
  • 8.249, Совершенно другой аноним (?), 17:26, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Макросы для C не разворачиваются компилятором C, соответственно не могут быть вы... большой текст свёрнут, показать
     
     
  • 9.261, Прорыв_запарты_фелиал (ok), 19:42, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Молодец, ты, наверное, единственный на этой помойке кто действительно решил в чё... текст свёрнут, показать
     
  • 9.267, Аноньимъ (ok), 21:41, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, и этот код получается никак не ограничен в доступе к внешним ресурсам Фс и... текст свёрнут, показать
     
     
  • 10.286, Совершенно другой аноним (?), 08:19, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Тут я Вам сказать ничего не могу, но судя по новости, которую мы с Вами обсуждае... текст свёрнут, показать
     

  • 1.9, Константавр (ok), 08:43, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +18 +/
    Ладно, когда исходный код используется злонамерено, но написаные на современных языках проекты не принадлежат автору, потому что за каждым "модулем" лезут в интернет. Этот Ящик Пандоры кто-нибудь будет закрывать?
     
     
  • 2.97, Аноним (100), 16:09, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Типа все либы на C ты писал вручную и не брал из интересных? Изучал каждую функцию и скрипт сборки?
     
     
  • 3.142, Crazy Alex (ok), 19:07, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Руками брал, и устанавливал на свою систему. Автоматом ничего ниоткуда не тянется, а не "у нас там подломали сервер поэтому вам прилетела либа с трояном когда вы рутинно запустили билд".

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

     
     
  • 4.230, Аноним (230), 13:33, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Типа все либы на C ты писал вручную и не брал из интересных? Изучал каждую функцию и скрипт сборки?
    >> Руками брал, и устанавливал на свою систему. Автоматом ничего ниоткуда не тянется...

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

     

  • 1.11, Аноним (-), 08:56, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Дырявый, но очень безопасный. Может исследователи не увидели unsafe рядом с макросом, это же должно было спасти от дыр.
     
  • 1.14, Аноним_t (?), 08:59, 16/05/2021 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –5 +/
     

     ....ответы скрыты (3)

  • 1.17, Нанобот (ok), 09:18, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Америку открыли. Помнится, при открытии проектов с гитхаба визуалстудия выдаёт предупреждение, что это может быть небезопасно. Вероятно это давно известная "фича"
     
     
  • 2.257, нах.. (?), 19:22, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Чорд, правда ведь, выдает. А не могли бы они быть это... more specific и уточнить, что именно открывать проект может быть небезопасТно, а не только пытаться его запустить (про скомпилировать уже ладно, расслабимся - я может и не собирался даже) ?

    > Вероятно это давно известная "фича"

    может, она кому и известная, но чтойта ТАКИХ деталей пока не сообщалось.

    Понимаешь, в чем дело - для того чтобы просто ОТКРЫТЬ хрустокод - вовсе необязательно быть хрусторазработчиком, которые может и в курсе приколов своего нескучного язычка и его "language-server", можно просто пытаться посмотреть, а что там, собственно, понагуанокожено, и иметь под рукой именно vscode, просто потому что уже запущен.

     

  • 1.18, Аноним (18), 09:22, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +19 +/
    Опеннетчики не смогли осилить умом, что атака возможна на любой язык и редактор, их интеллекта хватило только на построение взаимосвязи: уязвимость=майкрософт=раст, что для них является джекпотом их бинарного мышления.
     
     
  • 2.28, Fractal cucumber (ok), 10:53, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +8 +/
    "любой редактор кода, раскрывающий процедурные макросы" != "любой"
     
     
  • 3.46, Аноним (37), 12:29, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Дело не в процедурных макросах. Любой код, который запускает редактор из проекта для своих фич - линтера, подсветки синтаксиса, форматирования и ещё хрен знает чего.

    И сейчас у каждого проекта это настроено в самом проекте. Что и подхватывает VS Code.

    Вот это "подхватывает" - и есть дыра.

     
     
  • 4.51, Онаним (?), 12:53, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    И много редакторов, запускающих код из проекта, вы знаете?
    Даже VSCode скорее всего делает это только для хруста и каких-нибудь двух-трёх прочих извращений.
     
     
  • 5.138, Аноним (138), 18:23, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Чего, забыли как nodejs выполняет код при установке зависимостей? То рекламу в консоли покажет, то исследователю безопасности данные твоего компа по сети скинут. Был даже зловредный NPM пакет, который крал криптокошельки.
     
     
  • 6.141, Аноним (37), 18:40, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Но это ни чем принципиально не отличается от установки православных deb / rpm пакетов.

    Только они выполняют произвольные bash скрипты от root.

    Вся безопасность Linux построена на "доверии".

    И если раньше для 10-30 утилит это было Ок. То сейчас в дистрибутиве столько всего установлено с кучей зависимостей...

     
     
  • 7.166, Онаним (?), 20:32, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    В случае deb/rpm мейнтейнеры вполне известны.
    А вот в случае проектиков, собранных из говнорепозитариев типа npm (и что там у хруста), где отирается каждый второй васян, возомнивший себя погромистом...
     
     
  • 8.255, нах.. (?), 18:42, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    а толку-то Как будто у тех 48 часов в сутках, знание всех ведомых и неведомых я... текст свёрнут, показать
     
     
  • 9.263, Онаним (?), 20:17, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    И всё равно надёжнее сиволапого васяна просто по определению Ну и я подозреваю ... текст свёрнут, показать
     
     
  • 10.264, Онаним (?), 20:18, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    почему надёжнее - потому что да, у него завтра ещё овердохера пакетов, и рука у... текст свёрнут, показать
     
     
  • 11.271, Аноним (37), 00:36, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Смешно это читать Учитывая что мейнтейнер пакетов - это во-первых, низкоквалифи... текст свёрнут, показать
     
     
  • 12.289, нах.. (?), 10:18, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Matthias Gerstner of SUSE s security team передает гуанокодерам на хрусте привет... большой текст свёрнут, показать
     
  • 10.272, Аноним (37), 00:39, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Васян сделает лучше потому что ему один раз надо это сделать качественно И он и... текст свёрнут, показать
     
  • 6.165, Онаним (?), 20:30, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    nodejs - таки не редактор, но да, это вторая фееричная оверхайпленная хипстерская кaкашка.
     
  • 5.201, Аноним (202), 07:39, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Idea при каждой сборке проекта на java выполняет код процессоров аннотации и
    сборочных плагинов.

     
  • 4.58, Аноним (58), 12:59, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > подсветки синтаксиса, форматирования и ещё хрен знает чего

    Месье, вы с утра упоролись грибами что ли? Как при подсветки синтаксиса можно передать код на исполнение? Макрос вообще не должен преобразовываться в исполняемый код.

    P.S. Дело о том, что конкретно дырявые редакторы, с реализацией конкретно дырявых фич, конкретно дырявого языка уже задолбали и просятся на закопку.

     
     
  • 5.62, Аноним (37), 13:08, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Легко. Также как и для линтинга передают eslint.js.

    То что конкретно для этой фичи редактора так не делают ничего не меняет.

     
     
  • 6.74, Аноним (58), 14:06, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Вы понимаете, что интепретация кода и его имплементация это разные понятия?
    Чтобы подсветить или отформатировать код, его не надо исполнять - его достаточно прочесть и разобрать.
     
     
  • 7.83, Аноним (37), 14:35, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Что? Вы о чём?

    Я вам привёл неполный список фич редактора, где это может всплыть.

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

    И этот файл будет именно исполняться обычным JS движком.

    Чтобы он "интерпретировался" вам придётся написать свой парсер и интерпретатор "безопасного" безопасного подмножества JavaScript. Естественно так никто не делает.

    JS файлы как конфиги можно поставлять для eslint, prettier, и ещё кучу всего.

    Просто отдельно кастомная подсветка синтаксиса для каждого проекта никому не нужна.

    Вроде очевидные вещи рассказываю

     
  • 7.85, Аноним (37), 14:44, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Исполняется естественно не сам файл (любой в проекте), который открывается. А отдельный конфигурационный файл в проекте.

    Который VS Code подхватывает и исполняет если он в формате JavaScript.

    Это делается при открытии проекта в VS Code, когда он настраивает всё под конкретно этот проект.

     
  • 5.86, n00by (ok), 14:45, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    >> подсветки синтаксиса, форматирования и ещё хрен знает чего
    > Месье, вы с утра упоролись грибами что ли? Как при подсветки синтаксиса
    > можно передать код на исполнение?

    Вы будете смеяться, VSCode для этого использует JSON-RPC. https://microsoft.github.io/language-server-protocol/specifications/specificat

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

    А это делает не редактор, а дополнение rust-analyzer.

     
     
  • 6.90, Аноним (37), 15:34, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Приятно поговорить с умным человеком.
     
  • 3.279, Аноним (-), 08:02, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    я тебе открою секрет - редактор VSCode вообще ни-при-чем. В VSCode-е за все отвечают плугины. И VSCode не способен даже подсветить код Rust-а, даже идентацию сделать - это делает плугин. Какой ты сам инсталишь на свой страх и риск
     
     
  • 4.290, Fractal cucumber (ok), 10:23, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Тем более!


     
  • 2.103, Michael Shigorin (ok), 16:35, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    vi, make.  Ваш ход, болтун.
     
     
  • 3.117, Аноним (37), 17:04, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну как, сделай мне в vi вывод файлов где используется какая-то функция или класс из C++, болтун?
     
     
  • 4.130, Аноним (130), 17:53, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    grep жеж
     
     
  • 5.199, n00by (ok), 07:26, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > grep жеж

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

     
  • 4.280, Аноним (-), 08:04, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    С Шигориным бесполезно общаться - он пока еще не дорос до того уровня, чтоб вести беседы, не оскорбляя людей словами типа вонючих тряпок и прочее.
     
  • 3.216, n00by (ok), 10:16, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > vi, make.

    Просто надо перейти на модно-молодёжные vim8 and neovim, для которого аж 6 реализаций LSP. https://microsoft.github.io/language-server-protocol/implementors/tools/

    ну и конечно смотреть сорцы написанные на прогрессивном и безопасном Rust, а не морально устаревшие Makefile.

     
  • 3.218, n00by (ok), 10:28, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Просто надо почитать вот это https://microsoft.github.io/language-server-protocol/specifications/specificat
    до полного просветления.
    Редактор тупо команды отдаёт серверу (в данном случае rust-analyzer-у).
    А сервер он на то и сервер, что потенциально может исполняться вообще на другой машине. =)

    И не в каждом сервере вот так:

            if (!root_dir.is_native ()) {
                showMessage (client, "Non-native files not supported", MessageType.Error);
                error ("Non-native files not supported");
            }

     
  • 2.293, Аноним (293), 19:04, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Сухун?
     

     ....большая нить свёрнута, показать (31)

  • 1.22, x3who (?), 09:50, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    дополню анонима выше - текст новости тоже отдаёт желтизной. "~/.ssh/id_rsa" - это не "произвольные системные файлы", а файл юзера к которому естественно может получить доступ любой скрипт, запускаемый юзером.
     
     
  • 2.24, Аноним (24), 10:28, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Всего-то!
    Фигня какая. Уася может запустить у тебя на тачке скрипт от имени тебя. Разве ж это дыра?!
    Осталось разобраться с чего вдруг этот "любой скрипт" вдруг стал запустаться без участия юзера какими-то внешними юзерами.
    Может, пора уже перестать из интернета всякое тащить и от майкрософта что-то запускать?
     
     
  • 3.77, Аноним (73), 14:11, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Сложный вопрос... С одной стороны свобода творчества, с другой стороны не хотят учить после школы, а в школе - другие проблемы.

    Вот и подмена инженера уже рабочает абы на чём.

     
  • 3.281, Аноним (-), 08:07, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    а ты новость читал? А то похоже ты ее не понял.
     
  • 2.225, Аноним (225), 12:44, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, конкретно такие файлы имеют права вроде rw-------, и если рассчитывать на такую весьма простую и понятную модель, то как вариант можно крафтить отдельных временных юзеров для этих целей, чем например уже давно занимаются всякого рода серверные приложения (nginx, да даже deluge из под безправного юзера работает). Другой вариант: усложнять систему контроля прав (подключать SELinux, например)
     

  • 1.23, Ordu (ok), 10:23, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Аналогичного эффекта также можно добиться во время компиляции с использованием команды "cargo build".

    Кошмар какой! А ещё cargo build может использовать build-скрипты, которые суть исполнение произвольного кода.

     
     
  • 2.25, Аноним (24), 10:33, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Сказано же "Раст безопасен!".
    Наверное дело в MSCode. Надо его на расте переписать и всё починится.
     
     
  • 3.29, Ordu (ok), 10:57, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Сказано же "Раст безопасен!".
    > Наверное дело в MSCode. Надо его на расте переписать и всё починится.

    Да, и autotools тоже, вместе с make, meson, и прочими, чтобы избавить их от возможности запускать произвольный код.

     
     
  • 4.42, Аноним (42), 12:19, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    С этими достаточно просмотреть мейкфайл, чтобы убедиться в безопасности сборки.
     
     
  • 5.56, Аноним (49), 12:57, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > С этими достаточно просмотреть мейкфайл, чтобы убедиться в безопасности сборки.

    Хоть раз смотрел? (риторический вопрос)
    >> autotools
    > просмотреть мейкфайл

    *Теоретики-впопеннета-рука-лицо.жпг*
    там лютая куча скриптов, которые генерят этот самый мейкфайл. Который сам по себе тоже совсем не маленький ...


     
     
  • 6.63, Аноним (37), 13:12, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Сюда уже захожу в комментарии чисто поржать. Эксперты оппеннета поражают своей компетентностью.

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

    Любой make, cmake, autotools и т.п.
    Здесь проблема просто вышла на другой уровень.

    Не просто собирать, но даже открыть файлы проекта.

     
     
  • 7.69, Sw00p aka Jerom (?), 13:45, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >Фактически проблема в сборке любого проекта, где запускается произвольный код с правами пользователя.

    скачиваем курлом скрипт инсталлятора и перенаправляем сразу в шелл, а вы тут про систему сборки говорите :)

     
     
  • 8.81, Аноним (37), 14:21, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Так я и говорю - проблема не в скриптах Проблема в Linux, в её древней модели б... текст свёрнут, показать
     
     
  • 9.98, Аноним (42), 16:09, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Не надо, там через жопу Особенно в 11 ... текст свёрнут, показать
     
  • 9.106, Michael Shigorin (ok), 16:40, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ох, каждый первый дурак должен вылезти всех учить, потому как не в курсе о синдр... текст свёрнут, показать
     
     
  • 10.120, Аноним (37), 17:18, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Батенька, да вы идиот однако И подтверждение это - от вас никакой конкретики, т... большой текст свёрнут, показать
     
     
  • 11.126, Аноним (42), 17:39, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Прикинь, андроид тупо создаёт классического юниксового юзера под каждую аппку А... текст свёрнут, показать
     
     
  • 12.129, Аноним (37), 17:49, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Серьезно Если это так - это ужас на крыльях ночи Костыльное говнецо Но я скор... текст свёрнут, показать
     
  • 9.193, Sw00p aka Jerom (?), 00:10, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    дыркер все исправит песочница для системы сборки ... текст свёрнут, показать
     
  • 9.227, Аноним (-), 12:54, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я там что-то ни одной хорошей идеи не видел, учитывая то, что второй раст от гуг... текст свёрнут, показать
     
  • 6.96, Аноним (42), 16:07, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да, смотрю, а что? В мелких проектах нет никакой кучи, а большие уже опакечены в моём дистре. У меня же не каргой это всё автоматически качается и запускается, не так уж и часто надо смотреть.
     
     
  • 7.109, Аноним (-), 16:44, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Да, смотрю, а что? В мелких проектах нет никакой кучи,

    Мелкие - это калькуляторы? Потому что даже в i3 configure - под 12 тыщ, а сгенерированном Makefile - под 4 тыщи строк.

    > а большие уже опакечены в моём дистре.

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

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

     
     
  • 8.118, Аноним (42), 17:07, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А в мейкфайле ядра линукс 2K строк, и шо Сравнимо с размером срачика под этой... текст свёрнут, показать
     
     
  • 9.131, Ordu (ok), 18:02, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    шо find usr src linux -name Makefile 124 xargs wc -l 37 usr sr... текст свёрнут, показать
     
  • 9.132, Аноним (-), 18:17, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    code find linux-5 12 4 -name Makefile 124 wc -l 2607 fin... большой текст свёрнут, показать
     

     ....большая нить свёрнута, показать (19)

  • 1.27, Сергей (??), 10:50, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Проблема  и маленькая и большая одновременно и касается она ЛЮБОЙ прграммы, в которой юзаются плагины, редактор текста, кода, файловый менеджер...
     
     
  • 2.61, Аноним (61), 13:07, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Попробуй воспроизвести ее в vifm.
     
     
  • 3.282, Аноним (-), 08:09, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    я легко воспроизвожу это в vim - делаю шоткаты запускающие внешние exe-ники. В Емаксе вообще дочерта чего запускается.
     

  • 1.32, Msk2 (?), 11:30, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Не корректно сказато что это дыра в редакторе. Корректно сказать что это дыра в аддоне для VScode который допускает утечки файлов и запускает не бог весть что при открытии файлов. Потому что ту же дыру можно сделать в другом редакоре через аддоны.
     
     
  • 2.200, Sw00p aka Jerom (?), 07:35, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    >Не корректно сказато что это дыра в редакторе

    notepad.exe в свое время запускал calc.exe :)

     

  • 1.40, Аноним (-), 12:06, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Вы, может быть, подумали, что это какое-то Undefined Behavior? Ничего подобного, Rust не допускает Undefined Behavior - всё так и задумано.
     
  • 1.43, Аноним (37), 12:20, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Это не новость, в JS при открытии проекта автоматически подхватывается файл линтера eslint. А это обычный JavaScript файл. Те фактически выполняется сторонний JS код.

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

    Поле для атаки огромное. И её никак не решить. Проблема не в редакторе.

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

    А там будет доступ и к GitHub, и к AWS Cloud и считай доступ ко всей инфраструктуре компании.

     
     
  • 2.44, Аноним (37), 12:23, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Естественно эта атака делается на любой редактор. Включая vim.
     
  • 2.45, Аноним (42), 12:27, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну так запрети через SELinux сеому говнолинтеру шариться по системе, делов-то.
     
     
  • 3.47, Аноним (37), 12:38, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Показывает ущербность Линукса и подхода. Огромная дыра в безопасности много лет - "Запрети... через SELinux".

    Ты сам-то пробовал с ним работать? Я то пробовал. Это не инструмент для обычного пользователя, а для суровых админов, безопасников для серверных систем.

    И насколько я помню там очень сложно написать правила и их надо писать под каждую программу?

    И когда он только появился чтобы добавить правила для Firefox потребовалось НЕСКОЛЬКО ЛЕТ.

    "Просто настрой SELinux" ахахаха
    Сразу чувствуется opennet эксперт

     
     
  • 4.48, Аноним (42), 12:41, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну да, в других-то ОС такого конечно же нет, чтобы программы имели доступ к файлам пользователей?
     
     
  • 5.54, Онаним (?), 12:55, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Нет конечно.
    В его любимой десяточке все программы плиточкой на экране выложены, никаких файлов там нет, что такое файлы?
     
     
  • 6.284, Аноним (-), 08:13, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    id_rsa.priv? В десяточке? Окстись. 21 век, какой id_rsa.priv :)
     
  • 5.57, Аноним (37), 12:58, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Мне не интересно что в других системах. Мне интересно в Linux.

    А то что где-то также через ж сделано... аргумент из разряда "у соседа тоже насрано". Мне от этого ни легче, ни лучше. Утекают то мои ключики, а не соседские.

     
     
  • 6.64, Аноним (42), 13:19, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Не сами по себе утекают, а юзер запускает помойный софт, суёт в него помойные файлы и потом удивляется, что вышло не очень. При этом сделать нормально лень, на опеннетике же поныть куда проще?
     
     
  • 7.66, Аноним (37), 13:24, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Как ты определяешь "помойный" от "непомойного" ДО запуска приложения?))) Поделись секретным кунг-фу, пожалуйста.

    Ведь если запустить "помойный" софт хотя бы один раз... будет уже слишком поздно и ключики утекут.

     
     
  • 8.70, Аноним (42), 13:46, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    По репутации Когда речь идёт об npm, rust и связанных инструментах, очевидно чт... текст свёрнут, показать
     
     
  • 9.72, Аноним (37), 14:06, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    При чём тут Rust и npm Это для разработчиков А глубже копнуть Пользователь за... текст свёрнут, показать
     
     
  • 10.92, Аноним (42), 15:46, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    В прошлом веке ещё в линукс были ограничения прав различных пользователей и возм... текст свёрнут, показать
     
     
  • 11.112, Аноним (37), 16:50, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Какие пользователи Пользователь всего один И у него много приложений, с разным... текст свёрнут, показать
     
     
  • 12.114, Аноним (37), 16:57, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Приложению по просмотру фоточек и их каталогированию я хочу дать доступ к папке ... текст свёрнут, показать
     
     
  • 13.119, Аноним (42), 17:11, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Apparmor selinux flatpack ... текст свёрнут, показать
     
     
  • 14.123, Аноним (37), 17:24, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Что ты мне названиями тыкаешь Ты покажи как это легко Конкретно, на примере F... текст свёрнут, показать
     
     
  • 15.125, Аноним (42), 17:32, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А мне оно не надо, я ж не параноик Шлакпак чужд идеологически, apparmor не нуже... текст свёрнут, показать
     
  • 13.270, нах.. (?), 00:34, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    и когда понадобится выложить фотографию в веб или отправить почтой другому васян... большой текст свёрнут, показать
     
  • 12.224, СеменСеменыч777 (?), 12:43, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    0 слово приложение предлагаю резко забыть есть процессы, у процессов есть UI... текст свёрнут, показать
     
  • 11.178, Аноним (178), 21:49, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это не так просто, потому что нужно проследить чтобы у ресурсов защищаемых пол... текст свёрнут, показать
     
  • 9.84, Аноним (18), 14:40, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Яндекс не помойка получается ... текст свёрнут, показать
     
  • 2.50, Dzen Python (ok), 12:51, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Не то, что в богоспасаемой виндавс. Тот не только в профиль пускает, но и дает напихать полные Program Data и %windir% удаленных троянов и петь
     
     
  • 3.59, Аноним (37), 13:02, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Мне как-то глубоко наплевать что тамв Windows. Я сижу под Linux.

    И их проблемы мне не очень интересны.

     
     
  • 4.65, Dzen Python (ok), 13:24, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Настолько глубоко, что даже линукс толком не знаешь?
    Девляпс, не ты ли это?
     
     
  • 5.78, Аноним (37), 14:12, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это мне рассказывают "эксперты", которую знают что-то про плиточку и %windata% в Windows?

    Ламерье, вы бы хотя бы так сильно не палились тут. Подрываете почётное звание "эксперт с opennet".

     
     
  • 6.94, Dzen Python (ok), 15:53, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Девляпс, ну залогинься уже
     
     
  • 7.124, Аноним (37), 17:27, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не заслужил ещё
     
  • 2.283, Аноним (-), 08:10, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    правильнее сказать проблемы вообще нет. Но 99% коментирующих этого не поняли.
     

     ....большая нить свёрнута, показать (28)

  • 1.52, Онаним (?), 12:54, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хруст перенёс на этапы компиляции не только проверку на возможные уязвимости, но и сами уязвимости :D
     
     
  • 2.245, нах.. (?), 16:21, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    _редактирования_. Этап компиляции - это каменный век какой-то!

    Зачем ждать компиляции, когда "умный" редактор кода может дать тебе клавиатурой по лапам прямо в процессе его набора!

    Ну, или, вот... просто выполнить код неведомого васяна. А чотакова? Затобезопастно!

     
     
  • 3.265, Онаним (?), 20:19, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Истинно такЪ
     

  • 1.53, Псевдоним (??), 12:54, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Rust, vscode, безусловно запускающиеся макросы, фанатом которых является разработчик раста и продвигающий их как несомненное преимущество раста, в редакторе написанным на электроне от корпорации мелкомягких продвигающих раст и заодно внедряющих телеметрию во все дыре. В этой новости прекрасно все. Никогда ещё (часть) ит сферы настолько не деградировало.
     
     
  • 2.55, Онаним (?), 12:55, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    На самом деле часть IT-сферы всегда деградировало, просто не всегда вокруг этой части удавалось создать такой хайп.
     

  • 1.60, Аноним (61), 13:06, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Проблема в Rust, а пишется что могут быть проблемы и в других местах. Это двойные стандарты! Надо прямо писать что нашли дыру в Rust!
     
     
  • 2.108, Аноним (102), 16:44, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    согласен. #rustexploitmatter
     
  • 2.254, нах.. (?), 18:35, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Проблема в Rust, а пишется что могут быть проблемы и в других местах. Это двойные стандарты!

    Да, надо писать что в других местах - ЕСТЬ проблемы! (Они же ж точно где-то есть, если даже скучный устаревший редактор не запускает никакой код при попытке посмотреть на исходник.)

     

  • 1.68, ржачников_накрыло (?), 13:26, 16/05/2021 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     

  • 1.71, mos87 (ok), 13:49, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    глобально и надёжно
     
  • 1.88, Аноним (-), 15:22, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Ну що, сынку? Помог табе твой раст?
     
  • 1.89, Тарас Б. (?), 15:22, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Ну що, сынку? Помог табе твой раст?
     
  • 1.93, Dzen Python (ok), 15:52, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А вообще да, вся новость сводится к стандартному:
    "Если пользователь запустит на выполнение сторонний скрипт/плагин/бинарник, то тот может украсть/зашифровать/удалить файлы из его хомяка, ууууу! Теперь - банановый! Скрипт не в ФС, скрипт в макросе для исходников! УУУУ! Все в контейнеры и флатпаки!"
     
  • 1.99, Аноним (100), 16:22, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Дикие полотна configure.sh тоже работают до непосредственно сборки и прямо из консоли, но дурачки с опеннета будут заявлять что-то о расте :)
    Эта "уязвимость" работает при вызове скрипта пакетного менеджера системы, компиляции произвольной либы на C || C++ || Rust || свой вариант или при запуске вообще _любого_ софта.
    А тут просто ещё один интересный способ, что вызывает разве что лулзы, поскольку никакой безопасности и так нет даже на линуксах.
     
     
  • 2.113, Аноним (42), 16:54, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    К тебе на улице могут подойти, набить морду и отобрать кредитку. Ты же не дурачок, должен понимать, что твоя безопасность и безопасность твоих данных и денег = 0, так что выложи тут номер карты, срок действия и CVV - хуже уже не будет. Это ведь всего лишь
    > ещё один интересный способ, что вызывает разве что лулзы, поскольку никакой безопасности и так нет
     
     
  • 3.133, Аноним (100), 18:17, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Неудачный пример.
    Подойти на улице можно приравнять к получить локальный доступ к устройству, где как бы уже ничего не поможет. В лучшем случае злоумышленник может удалить все твои данные, если не сумеет расшифровать.
     
     
  • 4.258, нах.. (?), 19:29, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вот получил я локальный доступ к твоему телу, а у тебя нет кредиток, ка-зззел, за все как лох платишь кэшем , и кэша того кот накакал, мне даже на пивас не хватит, и мабила кнопочная, без банкклиента. В лучшем случае могу дать тебе в грызло лишний раз, похищения людей это другой бизнес, без меня, там совсем другие ставки.

     

  • 1.101, Аноним (100), 16:26, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Жесть, сейчас проверил, вскод даже в снап-версии ставится в классическом режиме
     
     
  • 2.105, Аноним (102), 16:38, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    ты не поверишь, но это непопулярно https://github.com/microsoft/vscode/issues/75669

    только ручные профили для apparmor, только хардкор.

     
     
  • 3.134, Аноним (100), 18:19, 16/05/2021 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 4.259, афинянин (?), 19:35, 17/05/2021 Скрыто ботом-модератором     [к модератору]
  • +/
     

     ....ответы скрыты (3)

  • 1.111, Аноним (102), 16:48, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    А говорили rust надежный язык. Код еще не даже не скомпилировался, а уязвимости уже вылазят. Браво! Браво!!!
     
     
  • 2.135, Аноним (100), 18:20, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Раст и надёжный язык, что изменилось?
     

  • 1.115, Аноним (115), 17:01, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    зря микрософт на гитхабе запрещает использование паролей, принудительно навязывая только ключи
     
     
  • 2.127, Аноним (-), 17:47, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ничего не мешает запаролить ключи.
     
     
  • 3.140, Аноним (-), 18:30, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    ничего не мешает оставить оба варианта, как было до покупки микрософтом
     
     
  • 4.209, Аноним (209), 08:52, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это корпы и им неважно как тебе удобно. Им важно как они решили
     
  • 2.151, Аноним (151), 19:27, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Лол они это специально сделали. Просто майки пытаются делать хорошую мину при плохой игре против опенсорса.
     

  • 1.121, Аноним (-), 17:19, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Фрактал, ау! Ты где?!
     
  • 1.128, Аноним (128), 17:48, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Rustовая дырень
     
     
  • 2.136, Аноним (100), 18:21, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Всё еще в разы лучше типичной си дырени в рантайме
     
     
  • 3.149, Аноним (151), 19:25, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Раст ничем не лучше и не безопаснее других языков.
     
     
  • 4.191, Аноним (100), 00:05, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Смотря с чем сравнивать
    Если с C/C++, то и лучше, и удобнее, и на голову безопаснее
    А ты продолжай себе внушать :)
     
     
  • 5.205, Аноним (209), 08:47, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Раст хуже, неудобнее, менее безопасен чего стоят только его дыры в vscode, утечка памяти в фаерфоксе, утечки в редоксе, да везде на нем умудрились написать утечки, а система пакетов еще дырявее чем в npm.
    А ты продолжай себе внушать :)
     

  • 1.137, Аноним (137), 18:22, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вот зачем на этом ресурсе пропагандировать подобное? Теперь малодалекие будут цитировать эту статью
     
     
  • 2.139, Аноним (100), 18:26, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    да какая разница, мелкие проблемы, которые скоро пофиксят, не мешают расту продолжать быть одним из лучших языков
     
     
  • 3.153, Аноним (42), 19:29, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > да какая разница, проблемы, которые лежат в основе всего в расте, которые поэтому никогда не пофиксят, не мешают расту продолжать быть одним из лучших языков по версии растоманов

    пофиксил, не благодари

     
     
  • 4.160, Аноним (100), 19:39, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    По версии любого, кто хоть немного в него вник, а не строчит на форуме всякий мусор.
     
  • 2.150, Аноним (151), 19:26, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Раст пора законодательно запретить. Чтобы малодалекие не писали ерунда про какую-то магическую безопасность, которая сама спускается на всех кто прикоснется к расту.
     
     
  • 3.159, Аноним (100), 19:38, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Не бывает ничего безопасного, но на фоне C/C++ это СУПЕР безопасный язык.
     
     
  • 4.161, Ааа (?), 19:42, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    +
    все познается в сравнении
     
  • 4.174, Аноним (174), 21:35, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > на фоне C/C++

    Надеюсь, раст его заменит.

     
     
  • 5.192, Аноним (37), 00:06, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В ближайшие 20 лет врядли. C++ только усиливает позиции.

    Node.js на C++ написан. Расширения нативные обычно тоже. Chrome и движок V8 тоже на C++ написан.

    Новый JavaScript движок для React Native тоже на C++.

    Те весь нижний слой JavaScript (самого популярного языка в мире) на C++.

    Он никуда не денется. Новые базы данных тоже на C++. RocksDB, YugaByte, ...

    Про игры вообще молчу.

     
  • 4.285, Аноним (-), 08:17, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    нет такого языка C/C++. Или Си или Си++. Одно из двух
     

  • 1.147, Аноним (151), 19:24, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В расте дырень? Вот это да он же безопасный язык, как так-то а?
     
     
  • 2.298, Аноним (298), 20:48, 26/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Где дырень? Он просто сделал процедурный макрос предусматривающий пользовательский код, туда можно запихнуть что угодно, бо это просто раст код.

    Это просто надуманная проблема, не более.

     

  • 1.162, Аноним (42), 19:52, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Скоро во всех растоманских IDE:
    "Открытие этого rs файла может привести к краже злобными растоманами всех ваших ключей доступа, банковских карт и анальному рабству. Преварительно посмотреть файл нельзя, потому что это небезопасно. Вы действительно готовы к этому? [да] [нет]"
     
     
  • 2.183, Likern (?), 22:14, 16/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Для JavaScript проектов уже так (спрашивает про выполнение настроек линтера в проекте)
     
  • 2.260, Современные разработчики (?), 19:40, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Скоро во всех растоманских IDE:

    не умеешь ты писать ide, как мы поглядим... ну кто ж так делает-то? Работать как?
    Пол-часа читать описание а потом еще мышью промазать и потерять пол-часа работы?!

    > "Открытие этого rs файла может привести к краже злобными растоманами всех ваших
    > ключей доступа, банковских карт и анальному рабству. Преварительно посмотреть файл нельзя,
    > потому что это небезопасно. Вы действительно готовы к этому? [да] [ok] [confirm] [always] [newer ask again]"

    И главное - при закрытии диалога крестиком или escape - тоже 'ok'!

    (вдруг пользователь случайно не туда ткнул!)

     
  • 2.269, Аноним (202), 23:05, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    В java проектах уже сейчас так. Idea спрашивает открыть его в безопастном режиме или в человеческом. А ведь java это не какие-то смузи хлебный rust, а энтерпрайз и банки.
     

  • 1.176, Аноним (176), 21:42, 16/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    >Проблема связана с раскрытием процедурных макросов во время начального анализа кода. Аналогичного эффекта также можно добиться во время компиляции с использованием команды "cargo build".

    Спасибо, Кэп. Все и так знали, что растоманы - смузихлёбы, и что их пакетный менеджер - говно.

    Впрочем питонячий не лучше, но те хотя-бы работают над этим, уже стандартизирован полностью декларативный формат метаданных в pyproject.toml (а в форме setup.cfg он уже с конца 2016 есть), когда-нибудь setup.py можно будет просто запретить.

     

  • 1.203, Аноним (203), 08:12, 17/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    "Демонстрация атаки на редакторы кода".. я слеп или в статье ничего кроме VScode не указано?
     
     
  • 2.215, n00by (ok), 10:11, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Список редакторов здесь https://microsoft.github.io/language-server-protocol/implementors/tools/

    GNU Emacs
    vim8 and neovim

    но требуется rust-analyzer

     

  • 1.222, n00by (ok), 11:09, 17/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Если говорить об эпичности новости, вопрос в том, насколько полно языковой сервер для Rust реализует спецификацию LSP.

    TextDocumentItem

    An item to transfer a text document from the client to the server.

    interface TextDocumentItem {
    /**
    * The text document's URI.
    */
    uri: DocumentUri;
    ...
    }

    Я правильно понимаю, что следующий фрагмент не пропустит некоторые URI scheme + authority:



        let config = {
            let root_path = match initialize_params
                .root_uri
                .and_then(|it| it.to_file_path().ok())
                .and_then(|it| AbsPathBuf::try_from(it).ok())
            {
                Some(it) => it,
                None => {
                    let cwd = env::current_dir()?;
                    AbsPathBuf::assert(cwd)
                }
            };




    или не правильно? =)

     
     
  • 2.268, Ordu (ok), 22:00, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Не, не правильно initialize_params -- это явно инстанс какого-то типа, не описа... большой текст свёрнут, показать
     
     
  • 3.287, n00by (ok), 08:46, 18/05/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Вот-вот Он описан в спецификации LSP Это параметры инициализации сервера, кото... большой текст свёрнут, показать
     

  • 1.226, Аноним12345 (?), 12:54, 17/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Растоманство !
     
  • 1.228, Аноним (-), 13:00, 17/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Предлагаю уже царю запилить свой язычок и пиарить, главное, надо нанять BLM для раскрутки.

    А пока не нанял, можно и Vala пиарить, такой же убийца сишарпа, как и раст, ток попроще.

     
  • 1.229, Аноним (225), 13:01, 17/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Это скорее не новость, а забавное замечание того, что можно делать с "просто редактором", исполняющем сторонний код. В манжаре например конфигурационный файлик i3, лежащий в конфигах юзера (не etc), имеет права на чтение и запись юзером. Только внутри файла есть возможность добавлять шелловские команды на исполнение при запуске или бинды, которые в итоге исполняются от root. Имхо, такое можно почти в каждом приложении найти
     
     
  • 2.262, нах.. (?), 19:44, 17/05/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > root. Имхо, такое можно почти в каждом приложении найти

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

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

     

  • 1.274, нах.. (?), 03:02, 18/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    тут, кстати, нового прекрасного привалило:
    https://ubuntu.com/security/notices/USN-4955-1

    https://bugs.launchpad.net/ubuntu/+source/rust-pleaser/+bug/1928381

    безопастность хрустеров. Не знаю, осилит ли опеннет отдельную новость.

     
  • 1.296, Gogi (??), 22:14, 18/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Юзеры г0вноподелия "VSCode" должны страдать. Скажем дружное "нахрен!" любым Жабоскриптным уродцам.
     
  • 1.297, Аноним (298), 20:47, 26/05/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Всмысле демонстрация атаки?:))

    Я посмотрел код, он же просто сделал вызов нужного кода в процедурных макросах (макросах где сплошной раст код, ТУПО ЛЮБОЙ КОД)...

    не, ребят) это надуманная атака..

     

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



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

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