1.2, pauc (?), 22:27, 27/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +11 +/– |
Необходимо срочно включить tar в systemd! GNU не справляется.
| |
|
2.12, user (??), 00:29, 28/10/2016 [^] [^^] [^^^] [ответить]
| +3 +/– |
Сначала emacs и qt, фреймворки должны быть интегрированы.
| |
|
3.39, Andrey Mitrofanov (?), 10:09, 28/10/2016 [^] [^^] [^^^] [ответить]
| +5 +/– |
> Сначала emacs и qt, фреймворки должны быть интегрированы.
LibreOffice в качестве pid(1) должен быть хорош!!
| |
|
4.56, Аноним (-), 22:32, 30/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
> LibreOffice в качестве pid(1) должен быть хорош!!
Ты там потише, а то нокия уже доперла однажды до прелоада браузера сразу после старта системы. Здорово же если браузер вываливается на экран сразу как ты клацнул ярлык. А то что он трскал цать мегов даже если ты им не пользовался... ннннну... красота^W п0нт^W UX требует жертв, да?
| |
|
|
|
1.4, rm_ (ok), 22:42, 27/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +8 +/– |
> информация о проблеме была отправлена сопровождающему GNU tar ещё в марте, но он не посчитал указанную проблему уязвимостью, поэтому проблема на момент публикации эксплоита остаётся неисправленной.
Этому весьма уважаемому и несомненно высоко компетентному человеку запретить кодить пожизненно.
| |
|
2.6, Аноним (-), 23:17, 27/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
> Этому весьма уважаемому и несомненно высоко компетентному человеку запретить кодить пожизненно.
Может не помочь. Проекту с числом авторов больше одного мэйнтейнеру совершенно не обязательно писать код для внесения багов.
| |
2.40, Andrey Mitrofanov (?), 10:11, 28/10/2016 [^] [^^] [^^^] [ответить]
| +2 +/– |
>> информация о проблеме была отправлена сопровождающему GNU tar ещё в марте, но он не посчитал указанную проблему уязвимостью, поэтому проблема на момент публикации эксплоита остаётся неисправленной.
> Этому весьма уважаемому и несомненно высоко компетентному человеку запретить кодить пожизненно.
Решение есть! Возьми его на работу -- и сразу начинай говорить, чего да как делать.
| |
|
1.8, Аноним (-), 23:23, 27/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +14 +/– |
> позволяющая при раскрытии архива осуществить запись за пределы целевого каталога, заданного в командной строке
Эта "уязвимость" НЕ ПОЗВОЛЯЕТ осуществить запись за пределы целевого каталога. Она позволяет при частичной распаковке архива извлечь файлы, не указанные в командной строке. Например, если вы извлекаете каталог "foo" из архива в /home, то может быть перезаписан не только /home/foo, но и /home/bar, хотя пользователь этого не заказывал. Но за пределы /home (например, в /etc) ничего записать не получится.
Если это и можно считать уязвимостью, то лишь минорной.
| |
|
|
3.26, angra (ok), 04:43, 28/10/2016 [^] [^^] [^^^] [ответить]
| +3 +/– |
Открытого вранья нет, так как под "целевого каталога, заданного в командной строке" в команде "tar -C / -xvf archive.tar etc/motd" можно понимать как "/" так и "etc". Так что скорее небольшая манипуляция с целью сделать из представителя семейства Muscidae представителя семейства Elephantidae.
| |
|
2.38, Аноним (-), 09:58, 28/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
Условный пример:
Вы открываете архив и смотрите до второго уровня что в нём только файлы конкретных настроек:
superService/conf/....
superService/startup/....
superService/startup/....
естественно вы по все каталоги "до конца дерева" не просматриваете.
А при распаковке в /etc там оказывается
superService/conf/default/../../../systemservice.conf
как то так :)
| |
|
1.9, fi (ok), 23:29, 27/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
что-то подсказывает, что автор прав - смотреть надо что делаешь.
| |
|
|
3.14, burik666 (ok), 00:57, 28/10/2016 [^] [^^] [^^^] [ответить]
| –3 +/– |
достали уже... rm -rf / не работает, т.к. по дефолту "--preserve-root do not remove '/' (default)"
| |
|
|
5.27, interuser (ok), 05:25, 28/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
Что работает? Ты удали все, а потом посмотри что осталось. Я могу даже дать тебе доступ, чтобы ты потренировался ядро у FreeBSD снести. При определенной настройке попытки твои не увенчаются успехом.
| |
|
|
|
2.45, анонимус (??), 12:29, 28/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
>что-то подсказывает, что автор прав - смотреть надо что делаешь.
Прав или не прав, а судя по их "This type of scenario has been successfully exploited in the real world to gain a remote code execution as root in different environments" скрипты с такими вот командами действительно имеют место быть.
И вообще авторы tar поступили странно… Почему именно весь кусок перед '..'? Почему не после? Или просто выкидывать один '..' или заменять на какой-нибудь '$$'…
| |
|
1.13, angra (ok), 00:41, 28/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +6 +/– |
Я нашел куда более страшную "уязвимость" в tar. Если сказать ему просто распаковать специально подготовленный архив целиком, что делается в подавляющем большинстве случаев, то он это сделает! В результате атакующий может добиться записи файлов в сторонние каталоги при распаковке, например, подменить ключ входа по SSH или сценарии автозапуска bash. В случае если архив распаковывается пользователем root возможно организовать перезапись системных файлов и получить полномочия суперпользователя (например, переписав crontab). В общем всё то же самое, повлияет на тех же самых балбесов, что распаковывают чужие tar архивы от рута в корень или от пользователя напрямую в хомяк, только с операцией на порядки более частой.
| |
|
2.21, cmp (ok), 02:06, 28/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
> (например, переписав crontab). В общем всё то же самое, повлияет на
> тех же самых балбесов, что распаковывают чужие tar архивы от рута
> в корень или от пользователя напрямую в хомяк, только с операцией
> на порядки более частой.
А зачем это делать? в корень-то
| |
|
3.25, angra (ok), 04:29, 28/10/2016 [^] [^^] [^^^] [ответить]
| +3 +/– |
Как зачем? Чтобы "уязвимость" заработала. Ты бы еще спросил зачем это делать с чужими архивами.
"Здравствуйте, я молдавский вирус. По причине ужасной бедности моего создателя и низкого уровня развития технологий в нашей стране я не способен причинить какой-либо вред Вашему компьютеру. Поэтому очень прошу Вас, пожалуйста, сами сотрите какой-нибудь важный для Вас файл, а потом разошлите меня по почте другим адресатам. Заранее благодарю за понимание и сотрудничество."
| |
|
2.29, Аноним (-), 05:50, 28/10/2016 [^] [^^] [^^^] [ответить]
| –2 +/– |
Что несешь? Ты каждый раз, скачивая CMS (вордпрес, джумла) ты отрываешь архив, и изучаешь, нет ли там ".."?
| |
|
3.42, cmp (ok), 11:25, 28/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
> вордпрес и джумла
ахаха, ну да, каждый раз, а потом извлекаю по 1 элементу из корня архива в корень системы, а потом по-одному переношу куда надо, или даже нет, прям корень шарю по хттп, мне ведь нравится тупить отделяя системные файлы от прочено говна, иногда прям /usr/lib распаковываю, ведь это так весело.
| |
|
|
1.15, Аноним (-), 01:21, 28/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
> Например, подготовив архив с файлом "etc/motd/../etc/shadow", атакующий может переписать /etc/shadow
Может переписать etc/shadow
но никак не /etc/shadow
| |
|
2.16, angra (ok), 01:29, 28/10/2016 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вот именно. Если пройти по ссылке, то в этом примере для срабатывания "уязвимости" используется следующая команда:
# tar -C / -xvf archive.tar etc/motd
| |
|
3.33, Аноним (-), 08:01, 28/10/2016 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Вот именно. Если пройти по ссылке, то в этом примере для срабатывания
> "уязвимости" используется следующая команда:
> # tar -C / -xvf archive.tar etc/motd
Т.е. по вашему нормально, что вы запускайте "cat tar-poc.tar | tar xv etc/motd" чтобы переписать один файл etc/motd, а он вместо этого переписывает вам совсем другой файл etc/shadow?
| |
|
2.30, Аноним (-), 05:53, 28/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
Без проблем, просто нужно скомбинировать
etc/motd/../etc/shadow
etc/motd/../../etc/shadow
etc/motd/../../../etc/shadow
etc/motd/../../../../etc/shadow
и т.д.
Вот мы и переписали /etc/shadow
| |
|
3.36, Нанобот (ok), 09:42, 28/10/2016 [^] [^^] [^^^] [ответить]
| +2 +/– |
оно так не работает
>просто нужно скомбинировать
великий комбинатор обосрался
| |
|
2.32, Аноним (-), 07:57, 28/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
> Может переписать etc/shadow
Относительно /. В том то и уязвимость, что при указании tar раскрывать в /etc он раскроет не в /etc/etc/shadow, а в /etc/shadow.
| |
|
3.52, Аноним (-), 20:34, 28/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
> что при указании tar раскрывать в /etc
Это 3.14здец!
Как гвоздик в розетку сувать - если в ноль (или тапки сухие) то и не 2.71бнет.
| |
|
|
1.34, Ващенаглухо (ok), 08:09, 28/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Как уже говорили смотреть надо, что распаковываешь.
И еще зря / убрается из путей при созданеии архива :)
| |
1.44, Меломан1 (?), 12:01, 28/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
Хрень какая-то. Кто из под рута распаковывает архивы? Фото на доску почета.
С остальным справится SELinux и abrt.
| |
|
2.50, angra (ok), 17:23, 28/10/2016 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вообще-то распаковка из под рута это норма. А ты бекап распаковываешь от пользователя, а потом для каждого файла рутом правишь владельца? А для распаковки архивов с содержимым для самого рута создаешь отдельного пользователя, распаковываешь под ним, а потом переносишь в /root?
Проблема не в том, из под какого пользователя, а в том, куда именно распаковывать.
| |
|
3.58, Аноним (-), 14:05, 31/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
Проблема не "куда именно распаковывать", а "что именно распаковывать".
| |
|
|
1.54, Аноним (-), 00:50, 30/10/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
А какое может быть решение проблемы "в имени файла есть /../"?
например
etc/motd/../etc/shadow
etc/motd/../vmlinuz
Куда такие файлы должны быть распакованы?
В файл указанный в маске для распаковки?
Что делать с масками --wildcards "m*"
?
Считать имя повреждённым и вообще не распаковывать такие файлы?
| |
|
2.55, curious (?), 16:40, 30/10/2016 [^] [^^] [^^^] [ответить]
| +/– |
Воу, воу, осади мысли-скакуны.
Тот кто распаковывает указывает что он хочет распаковать в маске для распаковки.
То что программа делает с именами файлов _перед_ распаковкой это распаковывающему совсем неинтересно.
Если короче - маска применяется _после_ всех манипуляций с именем файла.
| |
|
|