Справочная информация:
при запуске в системе unix Tenable.io (nessus) попытается создать файл тегов в / etc / с уникальной строкой. Предположительно, чтобы он мог идентифицировать машину при изменении имени хоста или IP.
Он делает это с помощью
"sh -c \"echo 35374e09cc444b058c65267613804fa4 > /etc/tenable_tag && echo OK\""
Проблема в том, что для этого ему нужны привилегии root. Стандартный способ позволить tenable повысить привилегии - использовать sudo и добавить несколько необходимых ему команд в файл sudoer. Внесение в белый список sh эквивалентно внесению в белый список всего того, что мы бы предпочли не делать!
Итак, я пытаюсь придумать какой-нибудь простой способ выгрузки текста в файл, который не использует "встроенную" оболочку
. вся команда будет выполняться с помощью sudo, поэтому вещи, которые передают что-то в sudo, не будут работать.
в этом сообщении кто-то предложил
sudo ex +'$put =\"some string\"' -cwq foo.txt
, который работает, но добавляет пустую строку (по крайней мере, на моем ubuntu box)
sudo ex +'put =\"some string\"' -cwq foo.txt
т.е. удаление $, которое на самом деле является регулярным выражением, соответствующим концу буфера, что приводит к вставке пустой строки.