Воскресенье, 19.05.2024, 00:28
Приветствую Вас, Гость | RSS
Меню сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » 2014 » Июнь » 29 » Атака через подстановку аргументов при использовании масок в командной строке
03:00
Атака через подстановку аргументов при использовании масок в командной строке
Специализирующаяся на компьютерной безопасности компания DefenseСode обратила внимание на реальность эксплуатации особенностей обработки масок при выполнении утилит в командной строке. Суть проблемы в том, что при указании масок, таких как "*", осуществляется простая замена списка в командной строке, при которой имена файлов начинающиеся с символа "-" интерпретируются не как файлы, а как переданные утилите опции. Данное поведение до сих пор рассматривалось не как уязвимость, а как известная особенность командных интерпретаторов. Например, если запустить "rm *" и в текущей директории окажется файл с именем "-rf", то будет применена опция "rm -rf", что приведёт к удалению не только файлов, но и директорий. Другим примером может послужить создание файла с именем "--reference=.file.php", что при выполнении команды "chown nobody:nobody *.php" (или "chmod 000 *") приведёт к смене владельца не на пользователя nobody, а на владельца файла ".file.php" (или к смене прав на права файла ".file.php", которые могут быть -rwxrwxrwx). Если этот файл является символической ссылкой на /etc/shadow и команда выполнена под пользователем root, то смена владельца/прав будет произведена и для /etc/shadow. Исследователи из DefenseСode считают, что такое поведение следует рассматривать как уязвимость, в доказательство чего опубликовали технику атаки, которая может привести к выполнению кода при использовании утилиты tar. Если атакующий создаст файлы "--checkpoint=1" и "--checkpoint-action=exec=sh shell.sh", а администратор выполнит для архивирования типичную команду "tar cvvf archive.tar *", то после добавления одного файла в архив будет запущен скрипт shell.sh. Аналогичного эффекта можно добиться при использовании утилиты rsync: создание файла "-e sh shell.c" и запуск "rsync -t *.c foo:src/" приведёт к выполнению скрипта "shell.c". Метод работает и для утилиты scp: создание файла "-o ProxyCommand shell.sh %h %p" и выполнение "scp * user@example.org:/var/www/" приведёт к запуску скрипта shell.sh и передаче ему в качестве аргументов имени хоста и номера порта. В качестве средства для защиты от подобных атак рекомендуется использовать "--" или "./" перед маской, например, "rm -- *" или "rm ./*".
Просмотров: 225 | Добавил: muge | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Поиск
Календарь
«  Июнь 2014  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
30