The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Уязвимость в unrar, позволяющая перезаписать файлы при распаковке архива, opennews (??), 15-Май-22, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


48. "Уязвимость в unrar, позволяющая перезаписать файлы при распа..."  +5 +/
Сообщение от Аноним (48), 15-Май-22, 15:16 
Другая классическая проблема: читаем один файл пишем в другой, но забываем проверить, а не один ли это файл. Или не забываем, проверяем, но по путям. Пути разные, а inode один, оказывается второй аргумент был симлинком. Или мы, как в сабже, забыли интерпретировать ./../~/~user.

И ещё миллион таких проблем. А как вишенка на торте - ToUToC для долгоиграющих программ. Проверили всё, всё нормально, начали работу, а файлы переместились (сторонней программой) после нашей проверки, но ещё в процессе работы программы, и приплыли.

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

Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

69. "Уязвимость в unrar, позволяющая перезаписать файлы при распа..."  +2 +/
Сообщение от Аноним (-), 15-Май-22, 19:16 
> по путям. Пути разные, а inode один, оказывается второй аргумент был
> симлинком. Или мы, как в сабже, забыли интерпретировать ./../~/~user.

В архиве это не должно требовать интерпретации: архивер должен класть в хидеры путь "как есть". Поэтому там нет ни ~ как референса на home (это сугубо фича шелла) ни ../../ т.к. это вообще не является легитимной иерархией которую можно найти в ФС и именно так записать ее содержимое в хидер.

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

Ответить | Правка | Наверх | Cообщить модератору

73. "Уязвимость в unrar, позволяющая перезаписать файлы при распа..."  +1 +/
Сообщение от Аноним (-), 15-Май-22, 19:25 
p.s. это все кстати позволяет ряд приколов уровня ФС. Файл с именем ~ ничему не противоречит, но фаны шелла будут иногда делить на ноль. Блин, в имени файла можно даже 0x0d и 0x0a использовать - и в этом месте те кто пытаются обрабатывать имена файлов как текст могут скушать еще дюжину вулнов. В именах файлов разрешено использовать все кроме NULL (0x00) и '/'. Все остальные значения являются допустимыми. Что и позволяет всякие utf8 имена например без особой переделки софта.
Ответить | Правка | Наверх | Cообщить модератору

98. "Уязвимость в unrar, позволяющая перезаписать файлы при распа..."  +/
Сообщение от PnD (??), 16-Май-22, 11:42 
Чутка добавлю. Ещё "." и ".." как имя файла вряд ли прокатит.
А так — да. Кладём в каталог файл "*" (к примеру) и ждём результат.
Ещё вариант — сконструировать имя по аналогии с "sql injection" всякими.
* Чтобы совсем уж почувствовать себя крутым кул-хацкером, можно повесить на файл весёлый атрибут.
** Но вообще-то это всё ясельный юмор уровня "ТП 1-й линии".
Ответить | Правка | Наверх | Cообщить модератору

116. "Уязвимость в unrar, позволяющая перезаписать файлы при распа..."  +/
Сообщение от Аноним (-), 16-Май-22, 22:29 
> Чутка добавлю. Ещё "." и ".." как имя файла вряд ли прокатит.

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

> А так — да. Кладём в каталог файл "*" (к примеру) и ждём результат.

Да, это тоже может доставить. Еще можно использовать ? > и | в именах. Например, "echo trololo > file" является валидным именем файла так то.

Хочется затроллить юзеров винды? "C:\windows.suxx" сойдет (это именно имя файла, без субдир). А теперь удачи в винде его такой вообще распаковать. Хотя интереснее положить в архиве что-то типа C:\con\con и тому подобные. Раньше это даже вело к весьма злым спецэффектам, вплоть до бсодов.

> * Чтобы совсем уж почувствовать себя крутым кул-хацкером, можно повесить на файл
> весёлый атрибут.

Я иногда так развлекаюсь. Проги решительно не одупляют почему файл не удается стереть и перезаписать хотя права есть, все такое.

> ** Но вообще-то это всё ясельный юмор уровня "ТП 1-й линии".

Как оказалось - даже матерый кодер иногда ухитряется откушать на этом.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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